我正在配置一台连接到 UPS 的服务器。UPS 通过 进行管理,apcupsd
当断电和恢复正常时,它会调用一些脚本。
服务器正在运行用户启动的多个虚拟机vboxuser
。我想在断电时正常停止虚拟机,我可以这样做vboxmanage
。
vboxuser
我如何才能从调用的脚本中运行命令apcupsd
?
答案1
如果apcupsd
脚本以 root 身份运行,那么您应该能够使用以下命令在脚本中运行关机命令sudo
:
/path/to/sudo -u vboxuser /path/to/shutdown-command args
(即创建一个由 apc 守护进程运行的 shell 脚本,并将所有 sudo 关机命令放入其中)
如果脚本不是以 root 身份运行,那么你仍然可以使用 sudo,方法是将其配置为允许相关用户以 vboxuser 身份运行关机命令。如果是这种情况,你可能必须查看 sudo 手册页,或者等待更详细的答案来涵盖它,因为我绝不是 sudo 专家。