su
命令用于切换到另一个用户,即更改用户ID
。在正常登录会话期间,如果没有执行username
例如su -
,它默认以root用户身份登录。通常,要成为其他用户或登录其他用户,可以用以下命令,然后系统会提示你输入要切换到的用户的密码。
$ su rumenz
要注意用户对用户
rumenz
保持环境deploy
原始登录会话,当前工作目录和可执行文件的路径也保持不变。使用
ls
尝试打印用户rumenz
工作目录(实际上还是用户deploy
工作目录),会抛出:ls: cannot open directory .: Permission denied
错误。
rumenz
用户可以使用$ cd
(不带任何参数)进入自己的家目录。当你使用
su -
或-l
或--login
时,它会为你提供一个类似于正常登录时的登录界面。下面的所有命令都是等价的。
$ su - rumenz
OR
$ su -l rumenz
OR
$ su --login rumenz
在这种情况下,用户
rumenz
提供了自己的默认登录环境,包括可执行文件的路径;他还会进入他的默认家目录。重要的是,当你在
su
没有username
,将自动成为超级用户。将获得root的默认环境,包括可执行文件更改的路径。还将进入 root 的家目录:
$ su