串口连接两台服务器"/>
用串口连接两台服务器
今天才发现服务器上的是公头,所以要买一根母对母的线,把两台服务器连接起来。
1. 查询波特率
# stty < /dev/ttyS1
speed 38400 baud; line = 0;
lnext = <undef>; min = 1; time = 0;
-brkint -icrnl ixoff -imaxbel iutf8
-icanon -iexten -echo -echoctl
2. 确定串口设备
server1 # echo "hello" > /dev/ttyS1
server2 # cat -v < /dev/ttyS1
# cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A port:000003F8 irq:4 tx:0 rx:0 CTS
1: uart:16550A port:000002F8 irq:3 tx:41782 rx:87 RTS|DTR
2: uart:unknown port:000003E8 irq:4
3: uart:unknown port:000002E8 irq:3
可以用上面的方法确定是ttyS0还是ttyS1
3. 设置server1的grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="serial"
GRUB_SERIAL_COMMAND="serial --speed=38400 --unit=1 --word=8 --parity=no --stop=1"
GRUB_CMDLINE_LINUX="rd.lvm.lv=fedora/root rd.lvm.lv=centos/swap rd.lvm.lv=fedora/swap intel_iommu=on biosdevname=0 pci=realloc crashkernel=256M mem=16G console=tty1 console=ttyS1,38400 nokaslr"
GRUB_DISABLE_RECOVERY="true"
GRUB_DEFAULT=0
4. 用picocom在server2连接
# picocom -b 38400 /dev/ttyS1
5. 启动getty服务,只能在被测试的机器上启动,picocom不能启动这个服务
# systemctl restart serial-getty@ttyS1.service
否则的话,/dev/ttyS1设备会被login进程占据,发送不了数据:
crash> files 5390
PID: 5390 TASK: ffff8a9390590000 CPU: 9 COMMAND: "echo"
ROOT: / CWD: /rootFD FILE DENTRY INODE TYPE PATH0 ffff8a8b601dab00 ffff8a8b66018540 ffff8a8b661a3d98 CHR /dev/pts/101 ffff8a935fcdc200 ffff8a8b9f02c900 ffff8a8b980d0070 CHR /dev/ttyS12 ffff8a8b601dab00 ffff8a8b66018540 ffff8a8b661a3d98 CHR /dev/pts/10crash> bt 0xffff8a93906bae00
PID: 3091 TASK: ffff8a93906bae00 CPU: 15 COMMAND: "login"#0 [ffffac9fc754fc58] __schedule at ffffffffa88a3266#1 [ffffac9fc754fcf0] schedule at ffffffffa88a38cc#2 [ffffac9fc754fd00] schedule_timeout at ffffffffa88a7b5b#3 [ffffac9fc754fd80] wait_woken at ffffffffa80c3c24#4 [ffffac9fc754fda8] n_tty_write at ffffffffa84eca76#5 [ffffac9fc754fe30] tty_write at ffffffffa84e8024#6 [ffffac9fc754fe90] __vfs_write at ffffffffa827c7cb#7 [ffffac9fc754fea0] vfs_write at ffffffffa827fd31#8 [ffffac9fc754fed8] ksys_write at ffffffffa827ffec#9 [ffffac9fc754ff20] __x64_sys_write at ffffffffa828008a
#10 [ffffac9fc754ff30] do_syscall_64 at ffffffffa800263a
#11 [ffffac9fc754ff50] entry_SYSCALL_64_after_hwframe at ffffffffa8a0008cRIP: 00007fb0a042d7a4 RSP: 00007ffc40b42438 RFLAGS: 00000246RAX: ffffffffffffffda RBX: 0000000000000007 RCX: 00007fb0a042d7a4RDX: 0000000000000007 RSI: 00007ffc40b42610 RDI: 0000000000000002RBP: 00007ffc40b42610 R8: 00007fb0a115ec80 R9: 00007ffc40b47f3cR10: 00007fb0a04ba320 R11: 0000000000000246 R12: 0000000000000007R13: 0000000000000001 R14: 00007fb0a06f8660 R15: 0000000000000007ORIG_RAX: 0000000000000001 CS: 0033 SS: 002b
更多推荐
用串口连接两台服务器
发布评论