前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >3.7 su命令

3.7 su命令

作者头像
运维小白
发布2022-01-06 13:58:24
1.1K0
发布2022-01-06 13:58:24
举报
文章被收录于专栏:运维小白运维小白

su命令介绍

  • sum命令,它是用来切换用户的
  • 快捷键ctrl+d,退出当前用户

su命令用法

  • su - username 完全切换当前用户
代码语言:javascript
复制
[root@localhost ~]# whoami
root
[root@localhost ~]# su - hanfeng
[hanfeng@localhost ~]$ whoami
hanfeng
[hanfeng@localhost ~]$ pwd
/home/hanfeng
[hanfeng@localhost ~]$ ls -la
总用量 16
drwx------. 2 hanfeng ha1   83 11月  1 15:07 .
drwxr-xr-x. 4 root    root  34 10月 31 15:38 ..
-rw-------. 1 hanfeng ha1   21 11月  1 15:18 .bash_history
-rw-r--r--. 1 hanfeng ha1   18 8月   3 2016 .bash_logout
-rw-r--r--. 1 hanfeng ha1  193 8月   3 2016 .bash_profile
-rw-r--r--. 1 hanfeng ha1  231 8月   3 2016 .bashrc
[hanfeng@localhost ~]$ 登出
[root@localhost ~]# 
代码语言:javascript
复制
其中这个 - ,目的就是彻底的切换用户,使用自己的配置、环境变量等
.bash开头的文件都是用户的配置文件
  • su username 看到用户已经切换,但不是彻底的切换过来,因为还在/root用户下
代码语言:javascript
复制
[root@localhost ~]# su hanfeng
[hanfeng@localhost root]$ whoami
hanfeng
[hanfeng@localhost root]$ pwd
/root
[hanfeng@localhost root]$ exit
[root@localhost ~]# 

su - -c用法

  • su - -c “命令” 用户名:是不进入这个账户,但是以这个账户的身份执行命令
代码语言:javascript
复制
[root@localhost ~]# su - -c "touch /tmp/han.111" hanfeng
[root@localhost ~]# ls -lt /tmp/ |head
总用量 0
-rw-r--r--. 1 hanfeng ha1   0 11月  1 15:45 han.111
drwx------. 3 root    root 17 11月  1 10:21 systemd-private-5909416742444897abc72857986169b4-vmtoolsd.service-klBF7K
[root@localhost ~]# id hanfeng
uid=1000(hanfeng) gid=1001(ha1) 组=1001(ha1),1002(user3)
[root@localhost ~]# 
代码语言:javascript
复制
这里会看到文件的属组是ha1,因为hanfeng用户的属组就是ha1
  • su命令切换用户后,再切换到另一个用户下
    • 只要输入再次切换用户的密码即可登录
代码语言:javascript
复制
[root@localhost ~]# su - hanfeng
上一次登录:三 11月  1 16:09:37 CST 2017pts/0 上
[hanfeng@localhost ~]$ su - user5
密码:
最后一次失败的登录:三 11月  1 16:10:09 CST 2017pts/0 上
最有一次成功登录后有 1 次失败的登录尝试。
[user5@localhost ~]$ ls -la
总用量 12
drwx------. 2 user5 user5  62 11月  1 16:07 .
drwxr-xr-x. 5 root  root   47 11月  1 16:07 ..
-rw-r--r--. 1 user5 user5  18 8月   3 2016 .bash_logout
-rw-r--r--. 1 user5 user5 193 8月   3 2016 .bash_profile
-rw-r--r--. 1 user5 user5 231 8月   3 2016 .bashrc
[user5@localhost ~]$ 登出
[hanfeng@localhost ~]$ 登出
[root@localhost ~]# 

/etc/skel文件

  • useradd -M 不要自动建立用户的登入目录,就是说创建的用户没有配置文件
  • /etc/skel是存放模板配置文件
代码语言:javascript
复制
[root@localhost ~]# useradd -M ll
[root@localhost ~]# su - ll
su: 警告:无法更改到 /home/ll 目录: 没有那个文件或目录
-bash-4.2$ 
-bash-4.2$ 登出
[root@localhost ~]# mkdir /home/ll
[root@localhost ~]# chown ll:ll /home/ll/
[root@localhost ~]# su - ll
上一次登录:三 11月  1 16:20:29 CST 2017pts/0 上
-bash-4.2$ pwd
/home/ll
-bash-4.2$ ls -la
总用量 0
drwxr-xr-x. 2 ll   ll    6 11月  1 16:28 .
drwxr-xr-x. 6 root root 57 11月  1 16:28 ..
-bash-4.2$ 登出
[root@localhost ~]# cp  /etc/skel/.bash* /home/ll/
[root@localhost ~]# chown -R ll:ll !$
chown -R ll:ll /home/ll/
[root@localhost ~]# su - ll
上一次登录:三 11月  1 16:55:28 CST 2017pts/0 上
[ll@localhost ~]$ 登出
[root@localhost ~]# 
  • 普通用户也可以 su - 到root用户下,只需要root用户的密码
代码语言:javascript
复制
[root@hf-01 ~]# su - hanfeng
上一次登录:五 10月 27 05:14:42 CST 2017pts/1 上
[hanfeng@hf-01 ~]$ su -
密码:
上一次登录:四 11月  2 01:26:08 CST 2017从 192.168.74.1pts/0 上
[root@hf-01 ~]# whoami
root
[root@hf-01 ~]# 登出
[hanfeng@hf-01 ~]$ 登出
[root@hf-01 ~]# 登出
[root@hf-01 ~]# 
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017/11/01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • su命令介绍
  • su命令用法
    • su - -c用法
      • /etc/skel文件
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档