Прямое последовательное подключение к маршрутизатору с помощью команды «экран»

авк -ишлы:

cd directory-with-files
awk '{system("echo mv " $3 " " $2)}' < /path/to/info.txt

баш -эдлы:

cd directory-with-files
while read -r junk new old
do
  echo mv "$old" "$new"
done < /path/to/info.txt

Удалите эхо, когда оно выглядит хорошо.

Это не приводит к ошибкам -при проверке наличия пробелов в именах файлов или меток -в кавычках в именах файлов.

1
16.08.2019, 23:06
1 ответ

Краткий ответ:

Форма команды screen, которую я использовал, была:

sudo screen /dev/(serialDevice) (baudRate) (TransmissionRate) (flowControl)

В случае моего маршрутизатора MikroTik RB4011 моя успешная команда screenвыглядела следующим образом:

sudo screen /dev/ttyUSB0 115200 cs8 ixoff

Где cs8— скорость передачи данных маршрутизатора, а ixoff— для « Без управления потоком ». Сведения о последовательном соединении -, включая скорость 115200 бод -для маршрутизатора, взяты из руководства пользователя производителя в формате PDF.

Имя устройства для последовательного кабеля в Linux было получено из вывода udevadm monitor, когда я подключил кабель к хосту Linux.

Длинный ответ:

Хотя в этом примере используется маршрутизатор MikroTik, его можно адаптировать к другим сетевым устройствам, предлагающим доступ через последовательный порт с небольшими изменениями.

Кабель последовательной консоли, использованный в примере, можно найти ЗДЕСЬ на Amazon, и доказано, что он работает как с Linux, так и с MikroTik без каких-либо специальных драйверов.

Шаг 1 :Получите серийные параметры устройства.

Простого подключения последовательного кабеля между вашим ноутбуком и маршрутизатором недостаточно :ваш ноутбук должен обмениваться данными с маршрутизатором, используя те же настройки, что и он.

В руководстве пользователя, которое поставляется с последовательным устройством, производитель публикует параметры последовательного соединения.MikroTik говорит мне, что для RB4011 в этом примере:

"Консольный порт RJ45 для доступа к последовательной консоли, по умолчанию установлено значение115200 бит/с, 8 битов данных, 1 стоповый бит, без контроля четности"

Эта информация будет предоставлена ​​команде screenв шаге 3 .

Шаг 2 :Найдите логический конец последовательного кабеля в Linux

После установления ФИЗИЧЕСКОГО соединения между вашим маршрутизатором и ноутбуком с помощью последовательного кабеля мы должны найти ЛОГИЧЕСКИЙ конец кабеля, поскольку Linux видит его для подачи команды screenкак цель.

Выполните приведенную ниже команду ПЕРЕД подключением последовательного кабеля к USB-порту вашего хоста Linux:

udevadm monitor

Реальная -обратная связь по времени (обрезана ниже для удобства чтения )будет прокручиваться на экране:

KERNEL[19223.032240] add      /devices/(SNIP)/1-1.3 (usb)
KERNEL[19223.037774] add      /devices/(SNIP)/1-1.3:1.0 (usb)
KERNEL[19223.037937] add      /devices/(SNIP)1-1.3:1.0/ttyUSB0 (usb-serial)
KERNEL[19223.041748] add      /devices/(SNIP)/1-1.3:1.0/ttyUSB0/tty/ttyUSB0 (tty)
UDEV  [19223.063696] add      /devices/(SNIP)/1-1.3 (usb)
UDEV  [19223.072384] add      /devices/(SNIP)/1-1.3:1.0 (usb)
UDEV  [19223.078189] add      /devices/(SNIP)/1-1.3:1.0/ttyUSB0 (usb-serial)
UDEV  [19223.101385] add      /devices/(SNIP/1-1.3:1.0/ttyUSB0/tty/ttyUSB0 (tty)

Выйдите из команды с помощьюctrl c

Linux видит наш последовательный кабель как :" ttyUSB0". Мы предоставляем это как цель screenв шаге 3 .

Шаг 3 :Выполнить screenКоманда

Теперь, когда мы определили параметры подключения нашего последовательного устройства в шаге 1 и определили логическое устройство последовательного кабеля в шаге 2 , у нас есть все ключи сведения, необходимые для формирования и выполнения команды screenдля (, наконец, )подключения к маршрутизатору.

Форма команды будет:

sudo screen /dev/(имя устройства из udevadm)(baudRate)(TransmissionRate)(flowControl)

Используя настройки производителя для последовательного соединения, мы укажем «8 бит» как cs8, а поскольку MikroTik НЕ использует управление потоком, мы установим это как ixoff. Наша команда теперь будет выглядеть следующим образом:

sudo screen /dev/ttyUSB0 115200 cs8 ixoff

Обратите внимание, что приведенная выше команда работает с MikroTik RB4011,но вам может потребоваться настроить его для вашего конкретного устройства. man screenдля просмотра альтернативных настроек для моего примера.

Вместо использования screenвы могли бы использовать minicom -s, но я считаю, что screenболее прямолинеен, так как вы можете просто добавить параметры подключения, а не использовать отдельное меню настройки.

1
27.01.2020, 23:41

Теги

Похожие вопросы