首页 > 代码库 > su root、sudo su、sudo -i的区别

su root、sudo su、sudo -i的区别

     这个su root就是一个切换用户命令,root是用户名,那么你需要输入的就是root账户的密码,但是ubuntu是禁用root登录的,所以给root设了个诡异的密码,它的密码并非你装的时候设的密码,但是可以开启root,不过建议别开启,要用什么root权限做事在前面加sudo就行了。如果你不开启的话根本就没法登,自然sudo root再输入密码无法登录了。而sudo su后面什么都不加默认就转到root了,你机器里就一个root是超级权限。而sudo时是你现在登录的这个用户sudo,密码就是你的密码,而且超级权限转变用户是不用输所切换成的用户的用户名的,所以就到root了,至于sudo -i是一样的,sudo -i选项是指更改shell环境参量为目标用户的,而你没指名目标所以默认了root,并且把环境参量也换成root的了,就更root登录shell一样。

 

 

假设一个普通用户trunk,首先以trunk登陆:
su root 临时切换到root用户,需要密码,切换后环境变量不变,取得root的部分权限,且只能使用trunk用户path路径中的命令,不能使用root用户path路径中的独有命令。
su - root 切换为root用户,需要密码,切换后环境变量改变,几乎可以不受限制的做任何事。
su - trunk 从root切换回普通用户,无需密码,切换后只拥有trunk权限。