Как использовать терминал Minitel в качестве «тупого» терминала Linux

Вопрос или проблема

Недавно я купил терминал Alcatel Minitel в версии для США. Думаю, это версия 1B. Вот его фотографии:

http://www.catpa.ws/pics/minitel2.jpg

http://www.catpa.ws/pics/minitel3.jpg

Я попытался подключить нулевой модем к 25-пиновому порту на задней стороне и подключить его к linux-компьютеру, работающему под управлением agetty, но не смог получить никаких признаков подключения. Я использовал Google Translate, чтобы перевести этот документ на английский: http://mirabellug.org/wikini/upload/Documentations_minitel.pdf

Насколько я могу судить, чтобы выйти из режима видеотекста, нужно ввести Fcnt-T A, затем отключить локальное эхо с помощью Fcnt-T E, а затем установить скорость 4800 бод с помощью Fcnt-P 4. Предполагаю, что Fcnt относится к клавише “CTRL” на моем терминале. Но, похоже, я делаю что-то не так, потому что, похоже, он не распознает нажатия клавиш, потому что “Fcnt-T A” просто выводит букву A на экран, что не то, на что ожидалось от комбинации функциональных клавиш.

Кто-нибудь использовал эти терминалы minitel как терминал для linux, и если да, то можете ли вы поделиться, как настроить minitel для работы в качестве терминала? Правильный ли это порт для использования 25-пиновый разъем? Я читал что-то в интернете, что указывает на то, что вместо этого нужно использовать 5-пиновый DIN разъем, это так? Если да, то для чего предназначен 25-пиновый разъем? Если мне нужно использовать DIN разъем, кто-нибудь знает распиновку, чтобы я мог сделать кабель?

Недавно я наткнулся на Minitel 1B, сделанный для американского рынка, и запустил его. Есть несколько отличий от французской версии: он работает от 120VAC, у него 6-контактный DIN-разъем вместо 5-контактного, и он использует уровни RS232 вместо 5V TTL. Распиновка ниже; расположение контактов предполагает, что вы находитесь за устройством, смотря на разъем.

  • контакт 1 (верхний правый) – RX
  • контакт 3 (нижний) – земля
  • контакт 5 (верхний левый) – TX

Как и описанное выше устройство, он по умолчанию работает на 1200 7E1. Кажется, он также использует немного другие команды “Fnct”, чем французская модель; вот что я выяснил на данный момент:

  • Fnct-B 1 : установить скорость передачи 1200.
  • Fnct-B 4 : установить скорость передачи 4800.
  • Fnct-M E : переключить эхо.
  • Fnct-M A : режим 80-колонок ANSI. Текст будет заметно тусклее в этом режиме (хотя вы можете установить жирный текст с помощью ESC [ 1 m, что будет ближе к яркости, которую вы видите при загрузке).
  • Fnct-M V : режим видеотекста 40 колонок.

Я общаюсь с ним с помощью кабеля FTDI, проходящего через max232. Это веселые маленькие терминалы!

Правильный разъем для использования – 5-контактный DIN, называемый “Peri-informatique”.

Полезные контакты: (нумерация контактов DIN может быть найдена на Wikipedia):

  1. RX вход
  2. 0V земля
  3. TX выход

Электрические уровни – 5V TTL. Протокол по умолчанию – 1200 бод, один бит четности, четная четность.

Вот несколько ресурсов, к сожалению, на французском:

Нет, нужно использовать кнопку FCTN, а не CTRL. Проверено на Phillips minitel2. нажмите вместе FTCN и T, затем отпустите. Затем нажмите A. Сделайте то же самое для FCTN+T, E, FCTN+p, 4

Предполагаю, что вы настроили свой последовательный порт в этом ключе: http://www.vanemery.net/Linux/Serial/serial-console.html

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


Архивная статья:


Введение
Когда-либо нужно было подключить тупой терминал (например, Wyse 50) к хосту Linux? Необходимо войти в систему Linux сервера с ноутбука для выполнения административных функций, потому что к серверу не подключен монитор или клавиатура? Если вы привыкли администрировать маршрутизаторы, коммутаторы или межсетевые экраны таким образом, возможно, вам будет интересно сделать то же самое с некоторыми из ваших хостов GNU/Linux. Этот HOWTO объяснит, шаг за шагом, как настроить последовательную консоль для Red Hat 9, хотя большая часть из этого должна применяться и к другим дистрибутивам.

Почему я написал этот документ? Хотя в Интернете есть много документов, касающихся последовательных портов Linux, большинство из них, казалось, были устаревшими или сосредоточенными на модемах. Я хотел, чтобы документация была краткой, о том, как настроить простой доступ к терминалу через последовательные порты RS-232-C для Red Hat 9.

Допущения/Настройка
Я использовал Red Hat 9 для этого теста. Моя тестовая машина состояла из:

Материнская плата: материнская плата Gigabyte Technology GA-7VA (Rev. 2.0)
Чипсет: VIA KT400A
ЦП: AMD-K7 (Duron 1400)
ОЗУ: 256MB DDR333
Последовательные порты: 2 встроенных порта с 16550A UART, DB-9 male
Ядро Linux: 2.4.20-24.9
Шаг 1: Проверьте поддержку последовательного порта вашей системы
Сначала давайте убедимся, что ваша операционная система распознает последовательные порты на вашем оборудовании. Вам следует провести визуальную проверку и убедиться, что у вас есть один или несколько последовательных портов на вашей материнской плате или дополнительно установленной PCI-карте. Большинство материнских плат имеют два встроенных порта, которые называются COM1: и COM2: в мире DOS/Windows. Возможно, вам потребуется включить их в BIOS перед тем, как ОС сможет их распознать. После загрузки системы вы можете проверить наличие последовательных портов следующими командами:

[root@oscar root]# dmesg | grep tty
ttyS0 at 0x03f8 (irq = 4) is a 16550A
ttyS1 at 0x02f8 (irq = 3) is a 16550A

[root@oscar root]# setserial -g /dev/ttyS[01]
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x02f8, IRQ: 3
Как видите, два встроенных последовательных порта это /dev/ttyS0 и /dev/ttyS1.

Шаг 2: Настройте ваш inittab для поддержки входа в систему через последовательную консоль
Файл /etc/inittab должен быть повторно настроен, чтобы разрешить вход в систему через последовательную консоль. Вы заметите, что демон mingetty используется для прослушивания виртуальных консолей (например, 6, которые работают по умолчанию с вашей клавиатурой и монитором). Вам нужно будет настроить agetty или mgetty для прослушивания на последовательных портах, так как они могут реагировать на ввод на физических последовательных портах. В прошлом я использовал оба полнофункциональных getty. В этом документе я буду обсуждать только agetty, так как он уже включен в стандартную установку Red Hat 9. Он обрабатывает подключения консоли/тупого терминала и подключения модема.

Что такое getty?

Getty – это программа, которая открывает tty порт, запрашивает имя пользователя и выполняет команду /bin/login. Она обычно вызывается init.

Перед редактированием /etc/inittab, что является очень важным конфигурационным файлом, вам следует сделать резервную копию:

[root@oscar etc]# cp /etc/inittab /etc/inittab.org
Требуемые дополнения в /etc/inittab выделены красным:

id:3:initdefault:

# Инициализация системы.
si::sysinit:/etc/rc.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6

# Поймать CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now

pf::powerfail:/sbin/shutdown -f -h +2 "Проблема с питанием; система выключается"

# Если питание было восстановлено до того, как отключение началось, отмените это.
pr:12345:powerokwait:/sbin/shutdown -c "Питание восстановлено; отключение отменено"

# Запустите getty в стандартных уровнях выполнения
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

# Запустите agetty на COM1/ttyS0 и COM2/ttyS1
s0:2345:respawn:/sbin/agetty -L -f /etc/issueserial 9600 ttyS0 vt100
s1:2345:respawn:/sbin/agetty -L -f /etc/issueserial 38400 ttyS1 vt100
#s1:2345:respawn:/sbin/agetty -L -i 38400 ttyS1 vt100


# Запустите xdm в уровне выполнения 5
x:5:respawn:/etc/X11/prefdm -nodaemon

Опции agetty объяснены:

-L заставить линию быть локальной без необходимости в обнаружении канала (когда у вас нет модема).
-f альтернативный файл /etc/issue. Это то, что пользователь видит на запросе входа.
-i не отображать никаких сообщений на запросе входа.
9600 скорость последовательной линии в битах в секунду. Установите это значение в соответствии с вашим тупым терминалом или эмулятором терминала.
ttyS0 это идентификатор последовательного порта.
vt100 это эмуляция терминала. Вы можете использовать другие, но VT100 является самым распространенным или “стандартным”. Еще один широко используемый тип терминала – VT102.
Возможные скорости последовательной линии (иногда называемые скоростью передачи) для 16550A UART:

110 бод
300 бод
1200 бод
2400 бод
4800 бод
9600 бод
19 200 бод
38 400 бод
57 600 бод
115 200 бод

Я попробовал все эти скорости передачи. 9600 бод обычно нормально и является очень распространенной настройкой для сетевого оборудования. 38 400 бод – это скорость стандартной консоли Linux, поэтому это мой второй выбор. Если ваш тупой терминал или эмулятор терминала не справляется с 38 400 бод, тогда попробуйте 19 200 бод: это довольно быстро, и вам не будет неприятно.

Вот мой пользовательский файл issue, /etc/issueserial. Он использует управляющие последовательности, определенные в мануале agetty, чтобы добавить некоторую полезную информацию, такую как номер последовательного порта, скорость линии и количество пользователей, которые в данный момент вошли в систему:

Оскар
Подключен на \l при \b бод
\U

Теперь вы должны активировать изменения, которые вы внесли в /etc/inittab. Это делается с помощью следующей команды, которая заставляет процесс init перепроверить конфигурационный файл:

[root@oscar root]# init q
Теперь давайте убедимся, что процесс agetty прослушивает последовательные порты:

[root@oscar root]$ ps -ef | grep agetty
root       958     1  0 Dec13 ttyS0    00:00:00 /sbin/agetty -L -f /etc/issueserial 9600 ttyS0 vt100
root      1427     1  0 Dec13 ttyS1    00:00:00 /sbin/agetty -L -f /etc/issueserial 38400 ttyS1 vt100

Шаг 3: Тестирование входа через последовательный порт с внешним тупым терминалом или эмулятором терминала

Wyse 50b

Я протестировал эту настройку с тупым терминалом WYSE, ноутбуком с Linux, работающим под Minicom, и ноутбуками Windows 2000/XP, работающими под HyperTerminal. Все они работали прекрасно.

Настройки терминала: должны быть 9600, N, 8, 1. Эмуляция терминала должна быть установлена на VT100 или VT102. Отключите управление потоком. Если вы хотите использовать последовательный порт 38 400 бод на ttyS1, тогда ваши настройки должны быть изменены на 38400, N, 8, 1.

Кабель: Чтобы подключить ноутбук к последовательному порту на хосте Linux, вам нужно использовать кабель нулевого модема. Целью нулевого модема является разрешение двум устройствам DTE с RS-232 общаться друг с другом без модемов между ними. Хотя вы можете сделать это самостоятельно, хороший, прочный изготовленный кабель нулевого модема недорог и прослужит дольше.

Если вы настаиваете на том, чтобы сделать кабель самостоятельно, тогда посмотрите на Nullmodem.Com для схемы и схемы распиновки.

Разъемы: последовательные порты материнской платы обычно имеют разъемы DB-9 male, но некоторые последовательные порты используют разъемы DB-25. Вам могут понадобиться некоторые преобразователи DB-9 в DB-25 или сменные разъемы, чтобы подключиться к вашему терминалу. Для типичного соединения между ноутбуком и сервером достаточно кабеля нулевого модема DB-9.

Вот что вы должны увидеть на тупом терминале или эмуляторе терминала:

Оскар
Подключен на ttyS1 при 38400 бод
3 пользователя

oscar.vanemery.com login:
Примечание: Если вы хотите иметь возможность войти через последовательную консоль как пользователь root, вам нужно будет отредактировать файл конфигурации /etc/securetty. Входы, которые нужно добавить, выделены красным:

консоль
ttyS0
ttyS1
vc/1
vc/2
vc/3
vc/4
vc/5
vc/6
vc/7
vc/8
vc/9
vc/10
vc/11
tty1
tty2
tty3
tty4
tty5
tty6
tty7
tty8
tty9
tty10
tty11

Шаг 4: Изменение настроек agetty
Если вы хотите изменить скорость передачи или другую настройку agetty, вам нужно выполнить эти 3 шага:

Измените файл конфигурации /etc/inittab
Активируйте изменение конфигурации, заставив init перепроверить файл конфигурации
Перезапустите демоны agetty
Вот пример шагов 2 и 3:

[root@oscar root]# init q
[root@oscar root]# pkill agetty

Опционально: Настройка последовательного порта как системной консоли
Вы можете использовать параметры в /etc/grub.conf, чтобы перенаправить вывод консоли на один из ваших последовательных портов. Это может быть полезно, если у вас нет клавиатуры или монитора для рассматриваемого хоста Linux. Вы также можете видеть все сообщения загрузки и завершения работы с вашего терминала. В этом примере мы сделаем порт /dev/ttyS1 консолью. Текст, который нужно добавить в файл конфигурации, выделен красным:

# grub.conf сгенерирован anaconda
#boot=/dev/hda
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
title Red Hat Linux (2.4.20-24.9)
        root (hd0,0)
        kernel /vmlinuz-2.4.20-24.9 ro root=LABEL=/ console=ttyS1,38400
        initrd /initrd-2.4.20-24.9.img

Теперь, если вы переведете вашу систему в режим одного пользователя с помощью команды “init 1”, вы все равно сможете управлять системой из вашего терминала, подключенного по последовательному порту. Монитор или клавиатура не требуются!

Предупреждение!: Программа обнаружения оборудования kudzu может “заблокироваться” при загрузке, когда последовательный порт становится консолью, вместо видеокарты. Чтобы исправить эту ситуацию, вам следует отключить kudzu (при условии, что ваше оборудование настроено правильно и не будет меняться). Вот как это сделать:

[root@oscar root]# chkconfig kudzu off
[root@oscar root]# chkconfig --list kudzu
kudzu           0:off   1:off   2:off   3:off   4:off   5:off   6:off

Вам также следует знать, как войти в загрузчик Grub во время загрузки системы и отредактировать строку ядра. Удалив аргумент консоли из строки ядра, вы можете загрузить систему со стандартной консолью, которая использует видеокарту и подключенную клавиатуру. Вы были предупреждены!

Заключение
Теперь вы должны иметь возможность войти в систему через последовательные порты на вашем хосте GNU/Linux. Это может быть полезно для обслуживания или для обслуживания целой комнаты тупых терминалов. В будущем я исследую PCI-карту с несколькими последовательными портами для этой роли.

Желаю удачи!

Ответ или решение

Для использования терминала Minitel как "глупого" терминала для Linux, вам необходимо пройти несколько этапов настройки и подключения. Убедитесь, что у вас есть правильное оборудование и понимание нужных настроек. В данной инструкции мы подробно рассмотрим все необходимые шаги.

Шаг 1: Понимание подключения

У вашей версии терминала Minitel (самая вероятная модель 1B) имеется 6-контактный разъем DIN, который нужно использовать для подключения к Linux. Убедитесь, что вы правильно понимаете конфигурацию разъема:

  • Пин 1 (верхний правый) – RX (прием)
  • Пин 3 (нижний) – Земля (GND)
  • Пин 5 (верхний левый) – TX (передача)

Обратите внимание: этот терминал использует уровни RS232, а не 5В TTL, что может требовать дополнительных преобразователей сигналов, таких как MAX232, если вы используете USB-адаптеры, например FTDI.

Шаг 2: Настройка Minitel

Чтобы настроить Minitel, используйте команды функции, называемые FCTN (не путать с CTRL). Пример правильной последовательности:

  1. FCTN + T затем отпустите и нажмите A, чтобы выйти из видеотекста.
  2. FCTN + T затем E, чтобы отключить локальную эхо-функцию.
  3. FCTN + P затем 4, чтобы установить скорость передачи на 4800 бод.

Попробуйте использовать именно эти комбинации, так как использование клавиши Ctrl приведет к неправильному поведению (например, к просто отображению символа «A» на экране).

Шаг 3: Подключение к Linux

После того как вы настроили терминал, следующим шагом будет настройка вашей системы Linux для работы с сериалом.

  1. Проверьте наличие доступных последовательных портов с помощью команды:

    dmesg | grep tty

    Это позволит вам убедиться, что операционная система распознает порты.

  2. Настройка файла /etc/inittab для запуска agetty на выбранном последовательном порту (например, /dev/ttyS0 для COM1):

    ttyS0:2345:respawn:/sbin/agetty -L -f /etc/issue.serial 4800 ttyS0 vt100
  3. Перезапустите init, чтобы изменения вступили в силу:

    init q

Шаг 4: Проверка подключения

Наконец, проверьте, работает ли подключение:

  1. Подключите Minitel к последовательному порту вашего Linux.
  2. На Minitel должен подниматься экран логина.

Шаг 5: Дополнительные настройки

Если вы хотите, чтобы ваше устройство стало основной консолью системы, добавьте соответствующие параметры в конфигурацию загрузчика GRUB. Это может быть полезно, если вы планируете работать с сервером без монитора:

console=ttyS0,4800

Заключение

Теперь вы можете использовать свой терминал Minitel как терминал для Linux. Если вы правильно выполните все шаги, используя предоставленную информацию, ваше устройство должно успешно подключиться к вашей операционной системе и выполнять необходимые функции. Если у вас возникнут трудности, проверьте каждую настройку еще раз и убедитесь в правильности соединений.

Оцените материал
Добавить комментарий

Капча загружается...