Linux切换用户身份(su)

Posted Xavier Jiezou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux切换用户身份(su)相关的知识,希望对你有一定的参考价值。

摘要

本文将讨论 Linux 中如何切换用户身份。

引言

我们用一个例子来说明为什么需要切换用户身份。

测试样例:我们目前是以普通用户的身份来登录终端的,当我们使用 ls /root 命令列出 /root 目录下的文件时,会提示权限不够。原因很简单,/root 目录的读写权限是 dr-xr-x---,即对其它用户没有任何权限。而我们当前用户既不是文件拥有者,也不从属于 root 组。因此,当前用户既不能切换到该目录中,也不能列出该目录下的文件,更无法在该目录下创建、修改或删除文件。

$ ls /root
ls: 无法打开目录 '/root': 权限不够

在 Linux 中,我们得用适当的身份来完成与其相对应的任务,因此我们就需要切换用户身份。

切换用户身份的命令是 su(switch user 的缩写),只要将要切换为的用户名跟在命令后面就可以了。一般来说,我们还带一个 -l 选项,即使用 su -l 用户名,这样不仅切换了用户身份,同时也切换了用户的 shell 运行环境。如果没有特殊情况,强烈建议带上 -l 选项。-l 选项可以简化为 -

$ su - root # 正确输入 root 用户的密码即可切换为 root 用户
密码:
# ls /root # 切换成功后就能正常列出 /root 目录下的文件了
test  nginx exp

安全起见:输入密码时终端窗口不会以任何方式回显你的输入(包括星号字符),因此初学者不要怀疑是自己键盘坏了。

需要注意:从普通用户切换到根用户或其它用户是需要输入密码,从根用户切换到普通用户不需要密码。

参考

中国大学 MOOC | Linux 系统管理 | 主题 06 管好用户 | 小节 3 切换用户身份

以上是关于Linux切换用户身份(su)的主要内容,如果未能解决你的问题,请参考以下文章

linux之切换用户su(switch user)

Linux命令_用户身份切换

linux以root用户身份进入centos后如何切换到普通用户?

Linux课程笔记 用户身份切换命令

linux su和sudo命令的区别

linux三周第三次课笔记