su与sudo的区别
su当普通用户登陆系统需要切换root用户,已经root用户的密码
sudo是让普通用户的获取一些root用户的权限,而需要root密码
该配置文件是 visudo 是一个命令可以直接运行,当然也可以使用which 查看这个文件的绝对路径。
visudo其实是一个授权文件
sudo -l <<====可以查看当前用户可以使用那些sudo的命令
文件内容:
-------------------------------------------------------------------------
找到:
##Allow root to run any commands anywhere
root ALL=(ALL) ALL
##这里的root是指用户,第一个ALL是指从哪里登陆(all包括所有登陆方式),第二个ALL是括号内的拥有那个用户的权限(all表示所有的用户的权限),第三个ALL是指拥有用户的那些权限(all表示拥有全部权限)。
-------------------------------------------------------------------------
我们在这行下面添加一条
##Allow root to run any commands anywhere
root ALL=(ALL) ALL
aming ALL=(root) /bin/ls <<===这里我们将aming获取root用户的权限,可以通过任何方式登陆,拥有用户/bin/ls下的命令(这个需要获取那个命令要写绝对路径,这样不容易出错)。
然后我们保存(方法和vi的保存的方法一样)
下面使用aming普通用户登陆
$ls /root/ <<===提示我们没有权限不够
我们使用这个命令:
$sudo ls /root/ <<===第一次登陆需要输入密码,这里的密码是用户自己的密码
-------------------------------------------------------------------------
我们在这行下面添加多条
##Allow root to run any commands anywhere
root ALL=(ALL) ALL
#aming ALL=(root) /bin/ls <<===前面的#号相对于把他给注释了,就不能使用了)
aming ALL=(root) /bin/ls,/usr/bin/passwd,/bin/cd <<===多个命令用,号分割开
保存退出:wq
-------------------------------------------------------------------------
-------------------------------------------------------------------------
我们在这行下面添加多条
##Allow root to run any commands anywhere
root ALL=(ALL) ALL
aming ALL=(root) NOPASSWD: /bin/ls <<===NOPASSWD: 是指不输入用户密码
保存退出:wq
-------------------------------------------------------------------------
我们可以在赋予某个组这样的权限
---------------------------------------------------
##Same thing without a password
# %wheel ALL=(ALL) NOPASSWD:ALL <<===这里的wheel是组,当然这行命令被#号给弄掉了
---------------------------------------------------
su当普通用户登陆系统需要切换root用户,已经root用户的密码
sudo是让普通用户的获取一些root用户的权限,而需要root密码
该配置文件是 visudo 是一个命令可以直接运行,当然也可以使用which 查看这个文件的绝对路径。
visudo其实是一个授权文件
sudo -l <<====可以查看当前用户可以使用那些sudo的命令
文件内容:
-------------------------------------------------------------------------
找到:
##Allow root to run any commands anywhere
root ALL=(ALL) ALL
##这里的root是指用户,第一个ALL是指从哪里登陆(all包括所有登陆方式),第二个ALL是括号内的拥有那个用户的权限(all表示所有的用户的权限),第三个ALL是指拥有用户的那些权限(all表示拥有全部权限)。
-------------------------------------------------------------------------
我们在这行下面添加一条
##Allow root to run any commands anywhere
root ALL=(ALL) ALL
aming ALL=(root) /bin/ls <<===这里我们将aming获取root用户的权限,可以通过任何方式登陆,拥有用户/bin/ls下的命令(这个需要获取那个命令要写绝对路径,这样不容易出错)。
然后我们保存(方法和vi的保存的方法一样)
下面使用aming普通用户登陆
$ls /root/ <<===提示我们没有权限不够
我们使用这个命令:
$sudo ls /root/ <<===第一次登陆需要输入密码,这里的密码是用户自己的密码
-------------------------------------------------------------------------
我们在这行下面添加多条
##Allow root to run any commands anywhere
root ALL=(ALL) ALL
#aming ALL=(root) /bin/ls <<===前面的#号相对于把他给注释了,就不能使用了)
aming ALL=(root) /bin/ls,/usr/bin/passwd,/bin/cd <<===多个命令用,号分割开
保存退出:wq
-------------------------------------------------------------------------
-------------------------------------------------------------------------
我们在这行下面添加多条
##Allow root to run any commands anywhere
root ALL=(ALL) ALL
aming ALL=(root) NOPASSWD: /bin/ls <<===NOPASSWD: 是指不输入用户密码
保存退出:wq
-------------------------------------------------------------------------
我们可以在赋予某个组这样的权限
---------------------------------------------------
##Same thing without a password
# %wheel ALL=(ALL) NOPASSWD:ALL <<===这里的wheel是组,当然这行命令被#号给弄掉了
---------------------------------------------------
编辑回复