答案1
您可以简单地不使用shutdown
时间规范,但是
echo shutdown -h now | at now + 5 minutes
或类似的;一个简单的
sleep $((60*5)) ; shutdown -h now
也可以。
但是,使用的at
优点是您可以使用查看等待命令atq
并使用取消它们atrm
。
答案2
通常,shutdown
创建文件/etc/nologin
,该login
命令将其理解为拒绝非 root 登录。
这给你留下了两个明显的选择:
- 连接为
root
(首选使用公钥身份验证而不是密码)。 /etc/nologin
开始关机后删除该文件。请注意,新连接的用户不会看到wall
即将关闭的警告消息;这可能对他们的会议有害。
答案3
简单的解决方案就是不要跑得太快shutdown
。相反,先休眠一段时间,然后shutdown
仅在延迟结束后才运行。
如果作业作为 shell 脚本运行,这很容易。您还需要某种方法来阻止最终发生关闭。您可以直接终止脚本,或者让脚本在睡眠结束后检查某些文件以停止关闭:
sleep 300
if ! [ -e /noshutdown ]; then
shutdown -h now
fi