我正在reboot -f
远程使用命令来强制重新引导Unix计算机。问题是ssh连接长时间保持活动状态,我不知道为什么?我想在重启机器后立即关闭ssh连接,并返回到我的本地shell。我怎样才能做到这一点?请注意,不带-f
标志的重新启动命令不起作用。
该命令将reboot -f
永不返回(除非您没有导致重新引导的权限)。在发布时,SSH客户端正在等待做某事,这可能是:
由于SSH服务器进程已死,因此SSH客户端将不会死,直到计时器启动。
如果您运行ssh remotehost 'reboot -f >/dev/null &'
,则将发生以下情况:
reboot
在后台启动命令。reboot
命令使计算机重新引导。但是,这并不可靠:根据时间的不同,第3步可能会在第2步之前进行。添加计时器会使这种情况不太可能发生:
ssh remotehost '{ sleep 1; reboot -f; } >/dev/null &'
要绝对确保服务器端已承诺运行reboot
,同时确保在通知客户端已提交之前实际上并未重新引导,则需要从服务器到客户端的附加通知。可以通过SSH连接输出,但是变得很复杂。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句