linux系统(centos)下su和sudo命令的区别

linux系统(centos)下su和sudo命令的区别

  • su命令:switch user缩写,切换用户。用于 切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。
  • sudo命令:super user do缩写,临时用来以其他用户(常用root)的身份来执行命令。普通用户需要在/etc/sudoer文件里面配置才能使用sudo命令。

基本参数:

-c或--command=:执行完指定的指令后,即恢复原来的身份;
-f或——fast:适用于csh与tsch,使shell不用去读取启动文件;
-l或——login:改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,logname。此外,也会变更PATH变量;
-m,-p或--preserve-environment:变更身份时,不要变更环境变量;
-s或--shell=:指定要执行的shell;
--help:显示帮助;
--version;显示版本信息。

常见的使用场景:

备注:sudo明确临时切换身份来执行命令,可以在/etc/sudoer文件里面配置免密。在生产环境中,系统管理员管理系统时,建议不要使用root命令直接ssh远程登录,也不要直接使用root操作系统变更。而是使用一个运维专用的普通账号。绝大情况下使用这个普通账号进行系统管理(部署服务,上线应用,查看日志等等)。特殊情况下需要root用户,那就应该为这个普通账号配置sudo权限。

/etc/sudoer文件里面,也可以配置,限制某用户用sudo时,只能执行特定的几个命令。

基本参数:

-b:在后台执行指令;
-h:显示帮助;
-H:将HOME环境变量设为新身份的HOME环境变量;
-k:结束密码的有效期限,也就是下次再执行sudo时便需要输入密码;。
-l:列出目前用户可执行与无法执行的指令;
-p:改变询问密码的提示符号;
-s:执行指定的shell;
-u:以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份;
-v:延长密码有效期限5分钟;
-V :显示版本信息。

常用使用场景:

sudo su #该命令和sudo -i能达到一样的效果。但是sudo su需要当前登录用户有sudo权限,输入的密码为当前用户密码。
sudo -i #

Original: https://www.cnblogs.com/penngke/p/15432521.html
Author: penngke
Title: linux系统(centos)下su和sudo命令的区别

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/524433/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球