03
2020
07
11:27:47

Linux查看用户列表

cat /etc/passwd 可以查看所有用户的列表

who 
w 可以查看当前活跃的用户列表

last  可以查看历史登陆的用户列表

pkill -KILL -t pts/0  #pts/0为w指令看到的用户终端号

cat /etc/group 查看用户组

groups 查看当前登录用户的组内成员
groups gliethttp 查看gliethttp用户所在的组,以及组内成员
whoami 查看当前登录用户名

一个简明的layout命令

cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown|awk -F":" '{ print $1"|"$3"|"$4 }'|more


w命令


LINUX是个多用户系统,一旦连接到网络中,它可以同时为多个登录用户提供服务。系统管理员可以随时了解系统中有那些用户,用户都在进行什么操作。

查看用户的操作
系统管理员若想知道某一时刻用户的行为,只需要输入命令w即可,在SHELL终端中输入如下命令:
tux@tux-desktop:~$ w

21:13:14 up 7:08, 2 users, load average: 0.22, 0.32, 0.20
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
tux      tty7     :0               14:05     ?    37:55   0.33s x-session-manag
tux      pts/1    :0.0             21:13    0.00s 0.13s 0.00s w

可以看到执行W命令及显示结果。
命令信息含义
上述显示的信息分别表示如下:
第一行显示系统的汇总信息,字段分别表示系统当前时间、系统运行时间、登陆哟内用户总数及系统平均负载信息。对于上述势力中的几个显示数据意义为:
21:13:14 表示执行W的时间是在晚上9点13分。
7:08 表示系统运行7小时8分。
2 users 表示当前系统登陆用户总数为2。
load average与后面的数字一起表示系统在过去1,5,10分钟内的负载程度,数值越小,系统负载越轻。
从第二行开始构成一个表格,共有8个栏目,分别显示各个用户正在做的事情及该用户所占用的系统资料。
USER:显示登陆用户帐号名。用户重复登陆,该帐号也会重复出现。
TTY:用户登陆所用的终端。
FROM:显示用户在何处登陆系统。
LOGIN@:是LOGIN AT的意思,表示登陆进入系统的时间。
IDLE:用户空闲时间,从用户上一次任务结束后,开会记时。
JCPU:一终端代号来区分,表示在摸段时间内,所有与该终端相关的进程任务所耗费的CPU时间。
PCPU:指WHAT域的任务执行后耗费的CPU时间。
WHAT:表示当前执行的任务。


who命令


查看某用户
当登陆系统用户很多的时候,可以在W后面加上某个用户名,则会查看该用户执行任务的情况。
tux@tux-desktop:~$ w tux
21:19:01 up 7:14, 2 users, load average: 0.25, 0.21, 0.18
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
tux      tty7     :0               14:05     ?    38:05   0.33s x-session-manag
tux      pts/1    :0.0             21:13    0.00s 0.13s 0.00s w tux

默认情况下,系统会显示上述所有的信息,如果只关心某一方面,可以只使用相关的选项。



功能说明:显示目前登入系统的用户信息。 
  语  法:who [-Himqsw][--help][--version][am i][记录文件] 
  补充说明:执行这项指令可得知目前有那些用户登入系统,单独执行who指令会列出登入帐号,使用的终端机,登入时间以及从何处登入或正在使用哪个X显示器。 
  参  数: 
  -H或--heading  显示各栏位的标题信息列。
  -i或-u或--idle  显示闲置时间,若该用户在前一分钟之内有进行任何动作,将标示成"."号,如果该用户已超过24小时没有任何动作,则标示出"old"字符串。 
  -m  此参数的效果和指定"am i"字符串相同。 
  -q或--count  只显示登入系统的帐号名称和总人数。

who命令示例 

要显示关于谁正在使用本地系统节点的信息,请输入: 

who 
显示类似于以下内容的信息: 

[root@nameserver ~]$ who
root pts/1 2015-12-22 15:23 (192.168.61.33)
root pts/2 2015-12-23 09:29 (192.168.61.29)
root pts/3 2015-12-23 09:39 (192.168.61.253)

 

要显示您的用户名,请输入: 
who am i 
显示类似于以下内容的信息: 

[root@nameserver ~]$ who am i
root pts/3 2015-12-23 09:39 (192.168.61.253)

 

要显示登录、注销、系统启动和系统关闭的历史记录,请输入: 
who /var/adm/wtmp 
显示类似于以下内容的信息: 
hank lft/0 Jun 8 08:34 (ausnix5) 
john lft/0 Jun 8 08:34 (JIKey) 
mary lft/0 Jun 8 08:22 (machine.austin.ibm) 
jan pts4 Jun 8 09:19 (puff.wisc.edu) 


要显示本地系统节点的运行级别,请输入: 
who -r 
显示类似于以下内容的信息: 

运行级别 3 2015-12-21 18:38


要显示任何当前活动的和以前已由 init 生成的活动进程,请输入: 
who -p 
显示类似于以下内容的信息 
srcmstr . Jun 8 04:15 old 2896 
cron . Jun 8 04:15 old 4809 
uprintfd . Jun 8 04:15 old 5158 


要通过指定 -bdlprtTu 标志来处理 /var/adm/wtmp 文件,请输入: 
who -a /var/adm/wtmp 
显示类似于以下内容的信息: 
. system boot Jun 19 10:13 
. run-level 2 Jun 19 10:13 
. . Jun 19 10:14 old 
. . Jun 19 10:14 old 
. . Jun 19 10:14 old 
rc - . Jun 19 10:13 old 
. . Jun 19 10:16 old 
. . Jun 19 10:14 old 
srcmstr - . Jun 19 10:14 old 
rctcpip - . Jun 19 10:14 old 
rcdce - . Jun 19 10:14 old 
rccm - . Jun 19 10:15 old 
dceupdt - . Jun 19 10:15 old 
rcnfs - . Jun 19 10:15 old 
cron - . Jun 19 10:16 old 
piobe - . Jun 19 10:16 old 
qdaemon - . Jun 19 10:16 old 
writesrv - . Jun 19 10:16 old 
uprintfd - . Jun 19 10:16 old 
. . Jun 19 10:16 old 
LOGIN - lft0 Jun 19 10:16 old 
. . Jun 19 10:16 old 
. . Jun 19 10:16 old

 

由于linux服务器允许多用户登录,公司很多人知道密码,工作造成一定的障碍,所以需要有时踢出指定的用户

1/#who   查出当前有那些终端登录(用 w 命令更详细)

# who
root     pts/0        2010-10-28 09:36 (192.168.1.236)
root     pts/2        2010-10-28 09:40 (192.168.1.27)
root     pts/3        2010-10-28 10:02 (192.168.1.82)
root     pts/4        2010-10-20 16:06 (192.168.1.244)

2/我想踢出IP为82的登录,其对应的tty为pts/3

# pkill -kill -t pts/3

3/再次查看

# who
root     pts/0        2010-10-28 09:36 (192.168.1.236)
root     pts/2        2010-10-28 09:40 (192.168.1.27)
root     pts/4        2010-10-20 16:06 (192.168.1.244)

已成功踢出





w、who、whoami、who am i命令


命令功能:显示登录用户的信息

命令格式:

常用选项:

举例:

w 显示已经登录的用户及正在进行的操作

[root@localhost ~]# w

 11:22:01 up 4 days, 21:22,  3 users,  load average: 0.00, 0.00, 0.00

USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT

root     tty1     -                Thu14    4days  0.19s  0.19s -bash

root     pts/0    172.31.3.32      Thu14    0.00s  0.73s  0.00s w

root     pts/1    172.31.3.32      11:18    1:50   0.07s  0.02s -bash


who 显示已经登录的用户名、终端名称、登录时间及登录IP

[root@localhost ~]# who

root     tty1         2015-11-12 14:00

root     pts/0        2015-11-12 14:03 (172.31.3.32)

root     pts/1        2015-11-17 11:18 (172.31.3.32)


whoami 显示当前用户的用户名

[zzd@localhost ~]$ whoami

zzd


who am i 显示登录系统的时候的用户名,即使已经切换到其他用户也显示登录时的用户

         结果同who -m

[zzd@localhost ~]$ whoami

zzd

[zzd@localhost ~]$ who am i

root     pts/1        2015-11-17 11:18 (172.31.3.32)

[zzd@localhost ~]$ who -m

root     pts/1        2015-11-17 11:18 (172.31.3.32)




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/1418.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: