昨日推荐:天天学一个 Linux 命令(55):idshell
su 命令用于切换当前用户身份到其余用户身份。centos
sudo 命令用于切换用户执行权限,这个命令可以使其它非 root 用户具备 root 权限。默认状况下,sudo 要求用户使用密码进行身份验证,这是用户密码,不是 root 密码。app
su [ options ] [ username ] sudo [ options ] [ command ]
su 命令选项ide
-c<指令> #执行完指定的指令后,即恢复原来的身份 -f #使shell不用去读取启动文件 -l #切换身份时,同时变动工做目录 -m #切换身份时,不变动环境变量 -s #指定要执行的shell --help #打印帮助信息 --version #打印版本信息
sudo 命令选项centos7
-b #在后台执行指令 -h #打印帮助信息 -H #将HOME环境变量设为新身份的HOME环境变量 -k #结束密码的有效期限,也就是下次再执行sudo时便须要输入密码 -l #列出目前用户可执行与没法执行的指令 -s<shell> #执行指定的shell -u<用户> #以指定的用户做为新的身份 -v #延长密码有效期限5分钟 -V #打印版本信息
#切换用户到 mingongge [root@centos7 ~]# su - mingongge Last login: Sun Jan 17 08:08:46 EST 2021 on pts/0 #切换到root用户后执行pwd命令后再切换至原用户 [mingongge@centos7 ~]$ su -c pwd root Password: /home/mingongge
[mingongge@centos7 ~]$ sudo -i [sudo] password for mingongge: mingongge is not in the sudoers file. This incident will be reported. #普通用户若是没有在/etc/sudoers文件里配置相关的信息,则没法执行sudo这个命令 [mingongge@centos7 ~]$ sudo -l [sudo] password for mingongge: Sorry, user mingongge may not run sudo on centos7.
用户须要执行 sudo 命令时就须要在/etc/sudoers配置文件中配置,而后直接使用sudo + 须要执行的命令 这种组合来让本身具备管理员权限。spa