我有一台远程 Linux 服务器,它带有付费的 kvm 和非常慢的“按请求重启”服务。现在,当我使用“sudo reboot”重启服务器时,ssh 会在 3-5 秒内断开我的连接,但服务器有时会继续运行,我想,是在等待某个 rc.d 脚本关闭。网络仍处于配置状态,因此我甚至可以 ping 服务器,但无法建立 ssh 连接,因此,显然 sshd 已关闭。我甚至无法深入检测关机期间发生了什么。所以,问题是:如何防止 sshd 在系统关机期间停止?我希望 sshd 一直运行,直到整个系统关机。
答案1
你不知道。
您的操作系统需要在关闭之前停止所有进程。这包括终止您的 SSH 连接。
网络“活跃”是内核尚未停止/重新启动的结果 - IP/ICMP 堆栈正在响应您的 ping。用户空间可能完全消失,而内核将继续响应 ping。
你能重新排序关机脚本,以便sshd
在稍后的过程中将其终止(查看发行版的文档),但是这只会使 SSH 守护进程运行更长时间 - 它不会保存您的会话,该会话是作为独立进程终止的(这就是为什么您可以在仍登录时停止/启动 sshd - 活动连接不再是“守护进程的一部分”)。
如果您的系统运行正常,一旦开始关机过程,它将禁止登录,并且会话终止后您将无法登录。