我有一台基于 Debian 的 Linux 服务器,运行了一年左右,没有任何问题。几天前,ssh 交互模式无缘无故停止工作。我的意思是,我可以正常打开 ssh 连接,服务器用 shell 向我打招呼,但我就是无法输入任何内容。但是,如果我发送如下命令:,我会得到响应。ssh [email protected] cat /var/log/messages
我查阅了几份日志,发现了一条与该问题有点相关的消息;
sh kernel: [10222733.062511] ------------[ cut here ]------------
sh kernel: [10222733.062522] WARNING: at /build/buildd-linux-2.6_2.6.32-39-amd64-7yVIH2/linux-2.6-2.6.32/debian/build/source_amd64_none/drivers/char/tty_ldisc.c:738 tty_ldisc_reinit+0x46/0x7b()
sh kernel: [10222733.062526] Hardware name: PowerEdge R210 II
sh kernel: [10222733.062528] Modules linked in: ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_conntrack nf_defrag_ipv4 ip_tables x_tables sha1_generic arc4 ecb ppp_mppe ppp_async crc_ccitt ppp_generic slhc loop snd_pcm snd_timer snd soundcore snd_page_alloc i2c_i801 i2c_core pcspkr evdev joydev dcdbas container button processor ext3 jbd mbcache sg sd_mod sr_mod crc_t10dif cdrom usb_storage usbhid hid mpt2sas ahci ehci_hcd libata scsi_transport_sas usbcore bnx2 nls_base scsi_mod fan thermal thermal_sys [last unloaded: scsi_wait_scan]
sh kernel: [10222733.062568] Pid: 8662, comm: sshd Not tainted 2.6.32-5-amd64 #1
sh kernel: [10222733.062569] Call Trace:
sh kernel: [10222733.062572] [<ffffffff811ff056>] ? tty_ldisc_reinit+0x46/0x7b
sh kernel: [10222733.062574] [<ffffffff811ff056>] ? tty_ldisc_reinit+0x46/0x7b
有什么方法可以让 sshd 重新以交互模式工作吗?我尝试重新启动 sshd,但没有帮助。不知何故,我无法重新启动服务器。尝试发送shutdown -r now
,reboot
但它拒绝关闭。
我应该继续并请求物理重启吗?
答案1
是的,这将需要强制重启;tty/pty 驱动程序已变得混乱(ldisc
是一个包含内容和线路缓冲的共享层termios
;在某些操作系统上,不同的 ldisc 用于 PPP/拨号网络)。