Answers:
当您尝试使用sudo
和在bash调用中运行命令时,会出现错误消息,尽管ADMIN
目标系统上的用户mac123
具有运行命令的权限sudo
,NOPASSWD
但未为此特定用户指定选项(in /etc/sudoers
)。
系统必须提示用户并等待从键盘提供密码,但是由于没有连接终端,提示将永远挂起。
作为针对此类情况的措施,系统会因您收到的错误消息而失败。
如果你花时间了解我昨天的答案:
如果ADMIN 对关机或macxxx机器上的所有命令都有无密码 sudo权限)
你不会遇到这个问题。
你应该修改你的脚本:
...
if [ $DAYS_UP -ge ${MAX_UPDAYS} ];then
echo Mac is going to shutdown
sudo shutdown -h now
else
...
并编辑sudoers文件mac123
,以便它包含,例如(它必须匹配脚本中的命令):
ADMIN ALL=(ALL) NOPASSWD: /sbin/shutdown -h now
请记住,您必须使用visudo
程序执行此操作,否则您可能会完全破坏您的系统。
或者,您可以使用SUDO_ASKPASS
环境变量并将其指向提供密码的脚本(错误消息的第二部分)。我不推荐这种方法。