当用户会话或高负载时,在共享服务器上发出关机/重启警告

当用户会话或高负载时,在共享服务器上发出关机/重启警告

有没有一种简单的方法可以在关机、重启、关机、停止等情况下警告管理员:

  • 正在进行的计算(高负载、高磁盘 io)
  • 打开 bash / zsh / ... 终端会话
  • 其他登录用户
  • screen / tmux 会话

我正在寻找一种能够帮助管理员避免意外丢弃大量工作的解决方案。

设置:合作环境(15 个用户,彼此都认识)。我们使用一台有多个用户和管理员的共享服务器。许多用户在screen/tmux会话中进行长时间的计算。尽管管理员应该知道得更多,但有时他们会重新启动机器并意外打扰登录用户正在进行的工作。

答案1

有一个名为 的 debian 软件包molly-guard。它会要求您输入主机名,这样您就不会意外关闭错误的机器。默认情况下,此功能仅针对 SSH 连接启用,但您可以设置ALWAYS_QUERY_HOSTNAME=true/etc/molly-guard/rc始终询问。

此外,为了让管理员了解发生了什么,我们添加了以下/etc/molly-guard/run.d/20-own-warning文件:

#! /bin/bash

echo
echo "current logins: w:"
w
echo
echo "current logins: who:"
who
echo
echo "current open terminals: ps aux | grep -E '(bash)|(zsh)'"
ps aux | grep -E '(bash)|(zsh)'
echo
echo
echo "Before shutdown/reboot, please contact all of the above users!!!"
echo

exit 0

相关内容