sudo是提权到root权限
前提是:用户需要又sudo的权限才行(如果没有sudo权限是无法指定该命令的)
sudo可以设置不需要密码,sudo输入的是用户的密码,而不是root密码
sodu su 、sudo su - 前者默认的环境是用户环境,后者用的环境是root环境
su 是切换用户
root切换到任意用户都是不需要输入密码的
但是用户切换到用户的话,就是需要密码的,所以可以先切换到root账号,再切换到其他账号
su - 是切换用户及环境
su环境变量是用户家目录,su - 环境变量是root家目录
注意事项
1.登录到root账号:sudo passwd root,设置su - 密码
这样子所有知道密码的人都能登录
2.所以需要限制只有加入到某个组的用户才能切换到root权限
cat /etc/pam.d/su
取消注释
vi /etc/login.defs
添加:
SU_WHEEL_ONLY yes
3.将用户添加到wheel组里面
cat /etc/group | grep wheel
usermod -G wheel liucaixin
为用户设置sudo权限
sudo su
sudo su -
su -
使用root权限,我们一般会想到这三条命令,现在来谈谈区别:
su -:要求需要root密码,我们一般不建议直接su -,因为平时我们往往只是想执行一条命令,不建议使用root去做更多的操作
sodu su -:切换到root账号,而且环境也切换到root环境下(可以留意切换之后,当前的目录就会切换到root的家目录下)
sudo su :切换到root账号下,但是环境还是当前用户的环境,而不是root环境
sudo命令,我们可以设置需要密码跟不需要密码两种
需要密码:就是本用户的密码,而不是root权限的密码
不需要密码:不需要输入密码
修改/etc/sudoers
在"root ALL=(ALL) ALL"在起下面添加"xxx ALL=(ALL) ALL"(这里的xxx是你的用户名)
注意:因为sudoers该文件默认是只读文件,正常的编辑保存肯定是不行的,有两种方式解决:
1.wq!
2.“chmod u+w /etc/sudoers”、“chmod u-w /etc/sudoers”
是不行的,有两种方式解决:
1.wq!
2.“chmod u+w /etc/sudoers”、“chmod u-w /etc/sudoers”