4.8.3、whoami、who 和 who am i 命令用法和区别

关注公众号 “融码一生”,领取全套 PDF / 电子书

  • whoami:查看当前系统当前账号的用户名。等同于id -un命令。可通过cat /etc/passwd查看系统用户信息。
  • 由于系统管理员通常需要使用多种身份登录系统,例如通常使用普通用户登录系统,然后再以su命令切换到 root 身份。这时就可以使用 whoami 来查看当前用户的身份。
  • who am i:打印登陆当前 Linux 系统的用户名(第一次登录终端的用户名);等同于who -m命令。
  • who 命令:查看当前所有登录系统的用户信息。常用选项:

选项

含义

-m 或 am I

只显示运行 who 命令的用户名、登录终端和登录时间

-q 或 --count

只显示用户的登录账号和登录用户的数量

-u 或 --heading

显示列标题

whoami
:<<!
jyhuang2
!


who am i
:<<!
root     pts/2        2022-07-27 09:43 (117.136.46.222)
!


su - root
:<<!
Password:
Last login: Wed Jul 27 10:02:02 CST 2022 on pts/2
!


whoami
:<<!
root
!

who am i
:<<!
jyhuang2 pts/4        2022-07-27 10:50 (117.136.46.222)
!
  • 使用 su 或 sudo 命令切换用户身份,骗得过 whoami,但骗不过 who am i。要解释这背后的运行机制,需搞清楚什么是实际用户(UID)和有效用户(EUID,即 Effective UID)。
    • 实际用户:登陆 Linux 系统时所使用的用户;在整个登陆会话过程中,实际用户不会发生变化
    • 有效用户:当前执行操作的用户,真正决定权限高低的用户,能利用 su 或 sudo 命令进行任意切换的
  • 一般实际用户和有效用户相同;出现用户身份切换时它们会出现差异。
  • whoamiwho am i通常应用在哪些场景中?
    • 对那些经常需要切换用户的系统管理员来说,经常需要明确当前使用的是什么身份
    • 对于某些 shell 脚本,或需要特别的用户才能执行,这时就需要利用 whoami 命令来搞清楚执行它的用户是谁
    • 还有一些 shell 脚本,一定要某个特别用户才能执行,即便使用 su 或 sudo 命令切换到此身份都不行,此时就需要利用 who am i 来确认

关注公众号 “融码一生”,领取全套 PDF / 电子书

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

融码一生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值