Linux命令系列(1) —— su和sudo的使用

1. su

  普通用户执行 su 命令的时候,会索要root用户的密码切换到root用户。
  
  root用户拥有最高权限,就可以执行所有操做了。
  su命令默认是请求切换到root用户,如果使用 su 用户 方式则可以切换到指定用户。
  
  注意:su并不会真正切换用户身份,也就是环境变量不变;只有 su - 用户名 才会真正的切换环境变量,也就相当于重新登陆。

2. sudo

  sudo的作用就是将root用户的权限下放给普通用户,允许普通用户也有更高的权限做事。
  普通用户的权限在配置文件 /etc/sudoers 下进行配置,当然只有root用户可以维护这个文件。
  执行sudo命令后,会查询 sudoers 配置文件此用户是否有相对应的权限。如果有权限就会索要当前用户的密码,将当前用户身份转成root用户。执行完命令后自动退出root用户身份变成普通用户身份。
  普通用户可以通过 sudo -l 命令查询当前用户有哪些命令是有权限的。

3. 配置普通用户权限

  将当前用户身份切换到root用户。
  执行命令 visudo ,确保手动配置的用户权限语句格式正确。
  找到 ## Allow root to run any commands anywhere 这一行,在root的下一行进行配置。
  
  语法是:用户 主机地址=(用户能够以何种身份来执行命令) 能执行"命令表"
  用户:就是要配置权限的用户,由于用户组和用户名可以重名,所以配置组的时候需要用%开头。
  主机地址:做多系统部署的时候需要用,ALL代表全部主机,如果只是本地用,可以用localhost。
  括号内:指名使用sudo的用户能够以何种身份来执行命令,ALL代表所有用户。
  命令表:使用英文逗号分隔开的命令表,表示用户可以用括号内的身份执行的命令,命令表中的命令需要使用绝对路径,ALL代表所有命令都可以使用。详细的例如:/bin/rm,/usr/bin/find 。

posted @ 2020-01-16 16:15  苍凉温暖  阅读(269)  评论(0编辑  收藏  举报