1、内容不同:

su命令:用来切换用户,substitute英文含义“代替”的意思。

sudo命令:sudo为superuser do 的简写,即使用超级用户来执行命令,一般是指root用户。

2、用法不同:

su命令:不加用户名默认是切换为root用户,切当前目录不改变,其他环境变量不变。

sudo命令: 查看当前用户可以用sudo执行的命令都有哪些。

3、环境不同:

su命令:切换到root用户,但是并没有转到root用户家目录下,即没有改变用户的环境。

sudo命令:是当前用户切换到root,然后以root身份执行命令,执行完成后,直接退回到当前用户,而这些的前提是要通过sudo的配置文件/etc/sudoers来进行授权。

su的参数:

-c<指令>或--command=<指令>:执行一个指令后就恢复原来的身份;

-f或--fast:使shell不用读取启动文件,适用于csh和tcsh;

-,-l,--login:切换用户时,使环境变量(home,shell,user,logname,path等)和欲切换的用户相同、不使用则取得用户的临时权限;

-m,-p,:变更身份时,保留环境变量不变;

-s<shell>,--shell=<shell>:指定执行命令的shell;

--help:显示帮助;

--version:显示版本信息;

用户账户:指定欲切换用户,默认切换为root。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐