用sudo命令为Ubuntu分配管理权限(4)

   需要注意的是,当我们为用户定义可以运行的命令时,必须使用完整的命令路径。这样做是完全出于安全的考虑,如果我们给出的命令只是简单的userad而非/usr/sbin/useradd,那么用户有可能创建一个他自己的脚本,也叫做userad,然后放在它的本地路径中,如此一来他就能够通过这个名为useradd的本地脚本,作为root来执行任何他想要的命令了。这是相当危险的!
  sudo命令的另一个便捷的功能,是它能够指出哪些命令在执行时不需要输入密码。这很有用,尤其是在非交互式脚本中以超级用户的身份来运行某些命令的时候。例如,想要让用户作为超级用户不必输入密码就能执行kill命令,以便用户能立刻杀死一个失控的进程。为此,在命令行前边加上NOPASSWD:属性即可。例如,可以在/etc/sudoers文件中加上下面一行,从而让jorge获得这种权力:

jorge ALL=(root) NOPASSWD: /bin/kill, /usr/bin/killall
  这样一来,jorge就能运行以下命令,作为root用户来杀死失控的rm进程了。

jorge@ubuntu:~$ sudo killall rm
  6.如何启用root帐户
  通过以上介绍,我们发现sudo的确很好用,但是如果您早就习惯了在root下工作,想回味一下过去的感觉该怎么办呢?很简单,只要为root设置一个root密码就行了:

$ sudo passwd root
  好了,现在您能直接作为root登录了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/6ba672bd2b0ac86c19686052e40bbc6e.html