Заметки · 28.02.2025

Ути PuTTY: мы в Linux

С PuTTY я сталкиваюсь крайне редко и только если приходится общаться с железяками через COM-порт. Вот именно про железяку сегодня и пойдёт речь. По традиции пятничного вечера, интересная история.

В очередной раз попал мне в руки старенький, но вполне рабочий коммутатор, который после сброса настроек не имеет собственного IP-адреса и общаться с ним нужно только через кабель RS-232 (в частности, который мама-мама).

Из лута на руках у меня был только старенький тонкий клиент с COM-портом (просто повезло) и Linux Lubuntu в качестве основной ОС.

Для начала устанавливаю столь близкую сердцу PuTTY:

sudo apt install putty -y

Установка успешно завершена. Запускаю. Выбираю Serial. Выставляю скорость 115200. Подключения нет. В строке порта какая-то дичь.

Загвоздка — где в Linux искать последовательный порт и как он, собственно, обзывается. В поисках железа отправимся в папку dev:

ls /dev

В списке мне попадается знатный перечень ttyS*. Попался, — думаю. Снова отправляюсь в PuTTY. Выбираю Serial. Выставляю скорость 115200. Прописываю самый первый /dev/ttyS0. Нет соединения.

Ну, ничего, бывает. Заменяю числовой идентификатор железки на 1. Глухо. Решил посмотреть — кто вообще владеет этими папками и какие нужны права, так как обычного sudo здесь явно мало.

За пример взял самую первую директорию:

ls -al /dev/ttyS0

Вывод такой:

crw-rw---- 1 root dialout 4, 64 июл  3 09:35 /dev/ttyS0

Уже что-то. Группа dialout. Добавлю своего пользователя ngdream туда. Надеюсь, мне будут рады.

sudo adduser ngdream dialout

После добавления в группу инициирую выход пользователя:

sudo pkill -u ngdream

Логинюсь заново и запускаю PuTTY для прослушки устройства ttyS1:

sudo putty /dev/ttyS1 -serial -sercfg 115200,8,n,1,N

Открылась консоль PuTTY и понеслись долгожданные строчки загрузки прошивки коммутатора.

К сожалению, к моменту подготовки поста были утрачены скриншоты всего этого приключения, поэтому придётся верить мне на слово.

Вместо послесловия

Обращаться к магии PuTTY можно только при наличии окружения рабочего стола, а иначе программа ругнётся, что не нашла монитор. Полностью терминальный режим работы с последовательным портом предоставляют утилиты microcom и screen. С первой программой я так и не смог разобраться. Слишком уж мудрёное там управление. Причём настолько, что из программы даже невозможно выйти. Кто разобрался сам тому бесконечный респект. А до screen у меня пока что не дошли руки…