sudo命令的使用

    Sudo是Unix/Linux平台上的一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的“权力”,让他们执行一些只有超级用户或其他特许用户才能完成的任务(主要体现为命令),比如:运行一些像mount,halt,su之类的命令,或者编辑一些系统配置文件,像/etc/mtab, /etc/samba/smb.conf等。这样以来,就不仅减少了root用户的登陆次数和管理时间,也提高了系统安全性。


   权力分配主要通过在配置文件/etc/sudoers按照约定格式添加一行信息。

     用户名主机名=(运行用户名) 可运行的命令


例如:sn ALL=(ALL) /usr/sbin/useradd          给sn用户添加系统用户的权利

 这样,就可以执行在sn用户下,执行sudo useradd username 命令来添加用户。

  但是执行上条命令需要输入密码,怎么才能不要密码呢?需要在配置文件里添加NOPASSWD:

例如:sn ALL=(ALL) NOPASSWD: /usr/sbin/useradd


在执行sudo useradd username命令的时候报了一个错误:sudo: /etc/sudoers is mode 0640, should be 0440 sudo: no valid sudoer

原来是/etc/sudoers在我修改的时候添加了写权限,去掉写权限就好。

修改/etc/sudoers时可以不用添加写权限,只要在修改后用“:wq!”就能强制保存退出了。

更好的更改方式是使用visudo编辑。之所以使用visudo有两个原因,一是它能够防止两个用户同时修改它;二是它也能进行有限的语法检查。所以,即使只有你一个超级用户,你也最好用visudo来检查一下语法。


详细讲解的链接:http://man.linuxde.net/sudo

猜你喜欢

转载自blog.csdn.net/colorful_lights/article/details/79682858