sudo命令
sudo命令用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。
语法
sudo(选项)(参数)
选项
-b:在后台执行指令;
-h:显示帮助;
-H:将HOME环境变量设为新身份的HOME环境变量;
-k:结束密码的有效期限,也就是下次再执行sudo时便需要输入密码;。
-l:列出目前用户可执行与无法执行的指令;
-p:改变询问密码的提示符号;
-s:执行指定的shell;
-u<用户>:以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份;
-v:延长密码有效期限5分钟;
-V :显示版本信息。
配置sudo不要密码
用超级权限编辑/etc/sudoers文件
sudo vim /etc/sudoers
然后我们看到类似如下一行
test ALL=(ALL) ALL
其中test是用户名,第一个ALL是指网络中的主机,我们后面把它改成了主机名,它指明test可以在此主机上执行后面的命令。第二个括号里的ALL是指目标用户,也就是以谁的身份去执行命令。最后一个ALL就是指命令名
知道了其含义,我们若要配置test用户使用sudo不需要输入密码,我们可以在/etc/sudoers最后一行添加如下内容(用tab隔开)
test ALL=(ALL) NOPASSWD:ALL
如果只是想test在使用某个指令时不要输入密码,可以改成如下
test ALL=(ALL) /bin/cat, /bin/ls
#test在使用cat,ls命令时不需要密码