blog » Linux » su 和 sudo、su root和su – root 区别

su 和 sudo、su root和su – root 区别

su
su是superuser的前面两字母。

su root=su
like you open an interactive shell in root name,then only .bashrc will be sourced.

su root和su一样:表示与root建立一个链接,通过root执行命令,其实就是进程的有效用户ID变成了root,unix校验进程的权限都是校验的有效用户ID,进程的实际用户ID还是当前登录系统的用户,主目录也还是当前登录系统的用户的主目录。

sudo -i
just like login as root, then the shell is login shell,which mean it will expericene a login process,usually .bash_profile and .bashrc will be sourced

sudo -i表示以root身份登录,进程的实际用户ID和有效用户ID都变成了root,主目录也切换为root的主目录。

sudo 命令
执行该条命令期间,进程的有效用户ID临时更改为root。

sudo :
暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码。不过有时间限制,Ubuntu默认为一次时长15分钟。

su :
切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su 账户名称”。如果后面不加账户时系统默认为root账户,密码也为超级账户的密码。没有时间限制。

sudo -i: 为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。

sudo -i 直接运行sudo命令加-i参数
sudo su 运行sudo命令给su命令提权,运行su命令。
sudo -i 运行结果 PWD=/root
sudo su 运行结果 PWD=/home/用户名(当前用户主目录)

This post has already been read 186 times!

Related posts

RSS 2.0 | leave a response | trackback

发表评论