串口多用戶卡可擴充多組 RS-232 介面連接終端機。本文以 8 埠卡(IRQ 3、I/O 0x0190~0x01C8、晶片 16550A)為例,說明在 Red Hat 6.1 上的完整設定流程。
多用戶卡使用 IRQ 3,會與 ttyS1 (COM2) 和 ttyS3 (COM4) 衝突,需先刪除:
cd /dev ./MAKEDEV -d ttyS1 ./MAKEDEV -d ttyS3
使用 MAKEDEV 建立 ttyS11~ttyS18(名稱可自訂):
./MAKEDEV ttyS11 ./MAKEDEV ttyS12 ... ./MAKEDEV ttyS18
/bin/setserial /dev/ttyS11 port 0x0190 irq 3 uart 16550A /bin/setserial /dev/ttyS12 port 0x0198 irq 3 uart 16550A /bin/setserial /dev/ttyS13 port 0x01a0 irq 3 uart 16550A /bin/setserial /dev/ttyS14 port 0x01a8 irq 3 uart 16550A /bin/setserial /dev/ttyS15 port 0x01b0 irq 3 uart 16550A /bin/setserial /dev/ttyS16 port 0x01b8 irq 3 uart 16550A /bin/setserial /dev/ttyS17 port 0x01c0 irq 3 uart 16550A /bin/setserial /dev/ttyS18 port 0x01c8 irq 3 uart 16550A
若無 setserial 請先安裝(Red Hat 6.1 預設已含)。
11:2345:respawn:/sbin/mingetty ttyS11 12:2345:respawn:/sbin/mingetty ttyS12 13:2345:respawn:/sbin/mingetty ttyS13 14:2345:respawn:/sbin/mingetty ttyS14 15:2345:respawn:/sbin/mingetty ttyS15 16:2345:respawn:/sbin/mingetty ttyS16 17:2345:respawn:/sbin/mingetty ttyS17 18:2345:respawn:/sbin/mingetty ttyS18
執行 init q 重讀設定,連接終端機即可看到登入提示。
/etc/rc.d/init.d/ttyS 含上述 8 行 setserial 指令,chmod +x/etc/rc.d/rc3.d (文字模式) 或 rc5.d (圖形模式) 建立連結:ln -s ../init.d/ttyS S99ttyS/etc/rc.d/rc.local 末尾編輯 /etc/rc.d/rc.local,修改 echo 產生 /etc/issue 的行,加入裝置名稱:
echo "Kernel $(uname -r) on $a $SMP$(uname -m) (ttyS11)" >> /etc/issue
終端機登入畫面將顯示 (ttyS11) 等標識,方便辨識。
務必確認卡片實際晶片型號、IRQ、I/O 埠位址,這是整個設定成敗的關鍵。