目录
①普通用户切换 root 用户
②root 用户切换普通用户
su 命令的作用是在 Linux 中切换用户,是英文单词:Switch(切换) User(用户) 的缩写。
语法:
su [-] 用户名
在 Linux 中“[]”里面的内容都代表可选,可以不写。
su:命令本体,必写;
-:可选选项,切换用户的同时改变 Shell 环境,建议加上;
用户名:参数,要切换的用户名;
首先,在开始讲解之前,先带你们了解一下普通用户和 root 用户一开始登录进来的时候所处的路径是什么(也就是默认路径):
☝️普通用户:/home/用户名(用户名:默认你在 VMware 虚拟机创建的第一个用户)
[wq@localhost ~]$ pwd
/home/wq
✌️root 用户:/root
[wq@localhost ~]$ su -
密码:
上一次登录:三 2月 1 02:04:45 PST 2023pts/1 上
[root@localhost ~]# pwd
/root
①.①、加上可选选项“-”,切换用户的同时改变 Shell 环境
语法:命令本体 + 可选选项:su -;
[wq@localhost ~]$ su -
Password:
Last login: Wed Feb 1 00:46:56 PST 2023 on pts/1
[root@localhost ~]# pwd
/root
因为加“-”会改变 Shell 环境的原因,普通用户 wq 成功被切换为 root 用户的默认登录目录:/root;
♀️①.①:我是最常用的切换 root 用户命令。
①.②、直接使用 su 命令本体
语法:命令本体:su;
[wq@localhost ~]$ su
Password:
[root@localhost wq]# pwd
/home/wq
会切换到普通用户在 root 里面相对应的工作目录:
比如:我在当前普通用户的 home 目录使用 su 进行切换,他会切换到我当前 root 用户的 home 目录,并且还会切换到该 home 目录登录的用户;
[wx@localhost ~]$ su
Password:
[root@localhost wx]# pwd
/home/wx
又比如:我在当前普通用户的 home 目录的一个文件夹用 su 进行切换,他会切换到我当前 root 用户的 home 目录里同样的一个文件夹内;
[wq@centos test3]$ su
Password:
[root@centos test3]#
①.③、使用完整语法进行切换
语法:命令本体 + 可选选项 + root:su - root;
[wq@localhost ~]$ su - root
Password:
Last login: Wed Feb 1 01:50:37 PST 2023 on pts/1
[root@localhost ~]#
因为加“-”会改变 Shell 环境的原因,切换 root 用户成功!!!
看到这里不难发现,好像每次普通用户去切换 root 用户都需要去输入密码,哈哈,没错,普通用户切换任何用户都要输入密码(包括他自己)。
示例:
我在这里演示一个当前普通用户 wq 切换当前普通用户 wq(也就是自己切自己):
[wq@localhost ~]$ su - wq
Password:
Last login: Wed Feb 1 02:47:13 PST 2023 on pts/1
[wq@localhost ~]$
同样需要输入密码!!!
②.①、加上可选选项“-”,切换用户的同时改变 Shell 环境
语法:命令本体 + 可选选项 + 参数:su - 用户名;
[root@localhost ~]# su - wq
Last login: Wed Feb 1 00:29:29 PST 2023 on pts/1
[wq@localhost ~]$ pwd
/home/wq
因为加“-”改变 Shell 环境的原因,root 用户成功被切换为普通用户 wq 的默认登录路径:/home/wq;
♀️②.①:root 用户切换普通用户命令用我的这一个就可以了,下面②.②的没用。
②.②、不加上可选选项“-”,切换用户的同时不改变 Shell 环境
语法:命令本体 + 参数:su wq;
[root@localhost ~]# su wq
[wq@localhost root]$ pwd
/root
因为没有加“-”改变 Shell 环境的原因,所以普通用户 wq 并没有切换成功,还是处在 root 用户的默认登录路径:/root;
②.②:我谢谢你②.①。
看到这里又不难发现,root 用户去切换普通用户的时候竟然不需要输入密码,哈哈,没错,root 用户作为超级管理员,他切换任何用户都是不需要密码的。
总结为一句话:root 用户切换任何用户都不要密码;普通用户切换任何用户都要密码;
退出当前用户登录(也可以理解为返回上一个登录用户)
快捷键:ctrl + d
命令:exit
最后,还要补充一点:
如果你在切换用户的过程中出现了该错误:su: Authentication failure
[wq@localhost ~]$ su - wx
Password:
su: Authentication failure
原因:
1、用户没有设置密码,所以你不知道输什么,乱输,导致该错误;
2、用户设置了密码,但是,你忘了。。。
解决办法:
无论是 没有设置密码 还是 忘记了密码 都可以通过 设置密码 来解决。
那么如何来设置密码呢???
嘻嘻~你点下面的~
在 Linux 中创建用户 and 给用户设置密码相关操作_^O^——的博客-CSDN博客
☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️
嘻嘻~你点☝️上面的~
拜,溜了溜了~
完。。。