sudo用法及centos使用sudo来执行root权限操作
指令名称:sudo使用权限:在 /etc/sudoers 中有出现的使用者
使用方式:sudo -V
sudo -h
sudo -l
sudo -v
sudo -k
sudo -s
sudo -H
sudo [ -b ] [ -p prompt ] [ -u username/#uid] -s
sudo command
说明:以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就似乎是 root 亲自执行
参数:
-V 显示版本编号
-h 会显示版本编号及指令的使用方式说明
-l 显示出自己(执行 sudo 的使用者)的权限
-v 因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会问密码,这个参数是重新做一次确认,假如超过 N 分钟,也会问密码
-k 将会强迫使用者在下一次执行 sudo 时问密码(不论有没有超过 N 分钟)
-b 将要执行的指令放在背景执行
-p prompt 能够更改问密码的提示语,其中 %u 会代换为使用者的帐号名称, %h 会显示主机名称
-u username/#uid 不加此参数,代表要以 root 的身份执行指令,而加了此参数,能够以 username 的身份执行指令(#uid 为该 username 的使用者号码)
-s 执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell
-H 将环境变数中的 HOME (家目录)指定为要变更身份的使用者家目录(如不加 -u 参数就是系统管理者 root )
command 要以系统管理者身份(或以 -u 更改为其他人)执行的指令
范例:
sudo -l 列出现在的权限
sudo -V 列出 sudo 的版本资讯
Centos系统利用sudo来执行root权限的配置方法:
ubuntu与其他linux版本在用户权限上略有不同,默认的用户不是root,而是一个比较特殊的普通用户,此用户拥有通过sudo来执行只有root用户才拥有的操作。所以,是一个特权用户。这对防止用户执行灾难性的操作(如rm)有一定的保护作用,特别是服务器,如果一个新手使用root权限操作,极有可能酿成灾难。控制一个普通用户通过sudo来执行一些root操作权限,很有必要。
修改sudos配置文件,命令visudo. 内容如下:
# /etc/sudoers
Defaults env_reset
# User privilege specification
root ALL=(ALL) ALL
# %sudo ALL=NOPASSWD: ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
可见,在admin组里的用户通过sudo操作具有所有的root权限。同理,在centos中我们可以通过下面的方法来达到上述效果。
1 建立群组:
groupadd lamp
2,建立用户:
useradd -d /usr/local/apache2/htdocs/clients/on -g lamp cardii
passwd cardii
3,赋予cardii用户管理amp组件权限
visudo
cardii ALL=(ALL)/usr/local/apache2/bin/apachectl,/usr/local/vim,/usr/local/apache2/conf/httpd.conf
可以按需配置。
页:
[1]