在使用ubuntu的过程中,部分命令必须要具备root权限才可以执行,然后root权限需要输入密码,很多常用的命令如:reboot等,甚至需要每次输入密码,部分用户也许会很不满意。另外当如果在写脚本时也会出现这种问题,脚本中可能会包含一些sudo指令,但用户不想每次都输入密码。这边介绍几种方法以供参考。

写入配置文件

将免密码文件写入到 /etc/sudoers 配置文件中,书写格式如下:

1
2
3
4
5
6
7
假设你的用户名是user,host是host则可以将以下命令加入到 /etc/sudoers 中:
user host = (root) NOPASSWD: /sbin/shutdown
user host = (root) NOPASSWD: /sbin/reboot
user host = (root) NOPASSWD: /home/user/program/startup.sh (注意:startup.up需要设定为可执行)
可以看到通过以上方法写入到sudoers中可以让程序或者脚本中即便需要root权限,也可以免密码自动执行。

参考链接:
http://askubuntu.com/questions/159007/how-do-i-run-specific-sudo-commands-without-a-password