linux中su和su -之间你知不道的事

2022-06-02 16:37:55 浏览数 (3)

su 命令用于切换到另一个用户,即更改用户ID。在正常登录会话期间,如果没有执行username例如su -,它默认以root用户身份登录。

通常,要成为其他用户或登录其他用户,可以用以下命令,然后系统会提示你输入要切换到的用户的密码。

代码语言:javascript复制
$ su rumenz

要注意用户对用户rumenz保持环境deploy 原始登录会话,当前工作目录和可执行文件的路径也保持不变。

使用ls尝试打印用户rumenz工作目录(实际上还是用户deploy工作目录),会抛出:ls: cannot open directory .: Permission denied 错误。

rumenz用户可以使用$ cd(不带任何参数)进入自己的家目录。

当你使用 su --l--login时,它会为你提供一个类似于正常登录时的登录界面。下面的所有命令都是等价的。

代码语言:javascript复制
$ su - rumenz
OR
$ su  -l rumenz
OR
$ su --login rumenz

在这种情况下,用户rumenz提供了自己的默认登录环境,包括可执行文件的路径;他还会进入他的默认家目录。

重要的是,当你在su没有username,将自动成为超级用户。将获得root的默认环境,包括可执行文件更改的路径。还将进入 root 的家目录:

代码语言:javascript复制
$ su

0 人点赞