Sudo
Sudo(substitute [user/superuser] do),是一种用于类Unix操作系统(如BSD、Mac OS X以及GNU/Linux)的程序,它允许用户透过某种安全的方式使用某种特殊权限来执行程式(通常为系统的超级使用者)。
原理
在sudo被写出之前,一般用户管理系统的方式是利用su切换为超级用户,但是su的缺点之一在于必须要先告知超级使用者的密码。
sudo使一般用户不需要知道超级用户的密码即可获得权限。
首先超级用户将一般使用者登记在特殊的文档中(通常是/etc/sudoers),完成对该使用者的授权(此时该使用者称为“sudoer”);在一般使用者需要取得特殊权限时,其可在命令前加上“sudo”,此时sudo将会询问该用户自己的密码(以确认终端机前的是该使用者本人),回答后系统即会将该命令的进程以超级使用者的权限执行。
之后的一段时间内(预设为5分钟,可在/etc/sudoers自订),使用sudo不需要再次输入密码。
由于不需要超级使用者的密码,部分Unix系统甚至利用sudo使一般使用者取代超级使用者作为管理帐号,例如Ubuntu、Mac OS X等。
安装
Arch Linux中:
# pacman -S sudo
配置
范例:赋予wheel用户组群root权限。
# visudo
%wheel ALL=(ALL) ALL #去掉这行注释
使用
把“sudo”放在普通命令之前即可,如下。
[david@test ~]$ sudo su -
Password:
[root@test ~]#