我们知道linux是一个多用户系统,所以我们在使用的时候避免不了使用多个用户的权限,这个时候就需要用户切换。
1.su
su是最简单的身份切换命令,它可以进行任何身份的切换:
su切换截图 su -切换截图我们发现同样是从juming账户切换到root账户,pwd变量获取到的数据是不同的!
1》su切换用户,读取的变量设置方式为非登录shell的方式,这种方式很多原本的变量不会被修改。
2》su - 会将所有变量都转换到新用户的环境
3》从root用户切换到一般用户时,不需要输入用户的密码
2.sudo
sudo一般是以一般用户的身份执行root用户的功能,但是并不是所有人都能执行sudo,只有符合/etc/sudoers的用户才能执行sudo这个命令:
无权限账号提示错误信息1》默认情况下只有root可以执行sudo
sudo执行流程:
1》系统检查/etc/sudoers文件中查找该用户是否有执行sudo的权限
2》如果用户拥有权限,让用户输入密码确认
3》密码输入成功,则执行sudo后面接的命令
4》如果用户和执行者身份相同,那么就不用输入密码
1》单一用户使用root命令:
①以root用户身份编辑/etc/sudoers文件
②在文件中找到root ALL=(ALL) ALL
③在这个数据下一行添加:
用户名 ALL=(aLL) ALL
④接下来上面设置的用户名就可以使用sudo执行root的命令了
添加用户 2》添加用户组:
①以root用户身份编辑/etc/sudoers文件
②找到#%wheel ALL=(ALL) ALL
③去掉这一行前面的#号
④修改用户的用户组usermod,将用户的用户组更改为wheel
⑤接下来加入wheel用户组的用户就可以使用sudo执行root的命令了
添加用户组 3》设置用户无需密码执行:
①以root用户身份编辑/etc/sudoers文件
②找到 # %wheel ALL=(ALL) NOPASSWD: ALL
③去掉这一行前面的#号
修改变成无需密码 4》设置用户可以有限制的执行:
①以root用户身份编辑/etc/sudoers文件
②添加单一用户,并更改最后面的ALL参数:
设置用户有限制执行1》添加的命令必须使用命令的绝对路径
5》sudo时间间隔:
1》两次sudo操作的时间间隔超过5分钟,那么就需要重新输入一次用户密码。
3.sudo优势:
配置好sudo账号之后一般用户不需要知道root密码就可以执行root的相关命令,可以让root用户更加安全。
网友评论