w
显示登录到系统的用户情况,以及系统的平均负荷
语法:
w [-fhlsuV] [用户名称]
命令参数:
-f
开启或关闭显示用户从何处登入系统。
-h
不显示各栏位的标题信息列。
-l
使用详细格式列表,此为预设值。
-s
使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的CPU时间。
-u
忽略执行程序的名称,以及该程序耗费CPU时间的信息。
-V
显示版本信息。
w
14:54:15 up 1 day, 22:08, 2 users, load average: 0.22, 0.14, 0.10 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT 用户 终端 客户端IP 登陆时间 CPU空闲时间 此终端下进程占用的时间 w这个命令占用的时间 运行的命令
system load averages
系统的平均负荷
分别是:1分钟、5分钟、15分钟 主要是看15分钟,单个CPU超过不超过1是最好的状态。
也就是如果当前只有一个CPU,那么最好的状态应该是:0.9,0.9,0.9,不超过1就行,如果CPU有8个核心,那么不超过8就行,以此类推。
超过之后只能说明当前系统处于忙碌状态,并不会因此宕机(不是很严重的情况下),说明还有调优的空间。
uptime
命令是w
命令的简化版(从内容上说)查看系统已运行多久还有系统平均负荷
uptime
14:54:15 up 1 day, 22:08, 2 users, load average: 0.22, 0.14, 0.10
uptime
仅有一个 -V
参数用来显示版本号
who
命令 显示目前登入系统的用户信息
语法:
who [-Himqsw][--help][--version][am i][记录文件]
参数:
-a
同: -b -d --login -p -r -t -T -u
-b
最后一次系统引导时间。
-d
显示死掉的进程,包括其时间等。
-H
显示每列的标题。
-i
不建议使用,被-u取代。
-l
不建议使用,可使用--lookup,通过DNS转化hostnames。
-m
与who am i相同。
-p
显示初始化引起的活动进程。
-q
显示登录用户名和登录用户数量。
-r
显示当前运行级别。
-s
此参数将忽略不予处理,仅负责解决who指令其他版本的兼容性问题。
-t
显示上次系统时钟变化。
-T
或-w
显示用户信息状态。
-u
列出登陆的用户。
whoami
用于查看当前有效用户名的命令,由英文单句“Who am I?(我是谁?)”连接而成
id -un
也是用于查看当前有效用户名的命令
who、whoami命令 和 who am i 命令的区别
[iansiu@mail ~]$ who iansiu tty1 2016-04-05 17:58 iansiu pts/0 2016-07-03 11:01 (192.168.1.88) iansiu pts/1 2016-07-03 04:33 (192.168.1.88) [iansiu@mail ~]$ who am i iansiu pts/0 2016-07-03 11:01 (192.168.1.88) [iansiu@mail ~]$ whoami iansiu
现在更换用户身份
[iansiu@mail ~]$ su Password: [root@mail iansiu]# who iansiu tty1 2016-04-05 17:58 iansiu pts/0 2016-07-03 11:01 (192.168.1.88) iansiu pts/1 2016-07-03 04:33 (192.168.1.88) [root@mail iansiu]# who am i iansiu pts/0 2016-07-03 11:01 (192.168.1.88) [root@mail iansiu]# whoami root [root@mail iansiu]# id -un root
看出区别来了吧,whoami
显示的是当前“操作用户”的用户名,而who am i
显示的是“登录用户”的用户名。
用Linux的术语来解释就是:(实际用户=uid
,即user id
。有效用户=euid
,即effective user id
)
who am i
显示的是实际用户的用户名,即用户登陆的时候的用户ID。此命令相当于who -m
。
whoami
显示的是有效用户ID(操作用户).
w - Show who is logged on and what they are doing.
who - show who is logged on
whoami - print effective userid
who am i - When a user logs in as a root across the network, both the command whoami and who am i will show you root. However, when a user abc logs in remotely and runs su – root, whoami will show root whereas who am i will show abc