是否有适合关闭或重新启动Linux计算机的shell脚本?我已经尝试过关闭shell脚本,但是当我输入sudo shutdown
时,它会要求输入密码。我们如何使用脚本输入密码?
答案 0 :(得分:3)
另一方面,在我看来更清洁的方法:
在/etc/sudoers.d/
中创建一个包含内容的新文件:
%users ALL=NOPASSWD: /sbin/shutdown
%users ALL=NOPASSWD: /sbin/reboot
如果组“users”的任何用户尝试执行关闭或重新启动,则会导致sudo 不要求输入密码。当然,您也可以指定另一个组,也许是新创建的组,以便更好地控制重新启动权限。
有关sudo
其他可能设置的详细信息,请参阅Manpage。
答案 1 :(得分:2)
是的,使用-S开关从STDIN读取密码:
$echo <password> | sudo -S <command>
公开您的密码通常不好寻找可以保护/隐藏它的东西。在过去,我经常使用Jenkins插件执行此操作,并定期执行脚本。
答案 2 :(得分:0)
如果真的想要实现它,你应该编写一个包含shutdown
命令的脚本;将root
作为其所有者,然后使用chmod
命令设置SUID位,并为每个人提供可执行权限。执行时,脚本的所有者将变为root
,并且不应询问密码。