7.12-7.19 id、w、who、last、lastb、lastlog

7.12 id:显示用户与用户组的信息

id命令能够显示指定用户真实有效的用户ID(UID)和组ID(GID)等信息。
 
id [option] [username]
 
-g    显示用户组ID
-G    显示用户所属附加群组的ID
-n    显示用户,所属群组或附加群组的名称,不显示数字
-r    显示实际ID
-u    显示用户ID
 
[root@doit ~]# id
uid=0(root) gid=0(root) groups=0(root)
[root@cs6 ~]# id lewen
uid=901(lewen) gid=801(sa) groups=801(sa)
 
[root@cs6 ~]# id lewen
uid=901(lewen) gid=801(sa) groups=801(sa)
[root@cs6 ~]# id -g
0
[root@cs6 ~]# id -gn
root
[root@cs6 ~]# id -u
0
[root@cs6 ~]# id -un
root 

7.13 w:显示已登录用户信息

    w命令可以显示已经登录系统的用户,并显示用户正在执行的命令。
 
w [option] [user]
 
user参数是显示指定用户的信息。
 
-h    不显示前两行标题信息
-u    忽略执行程序的名称,以及CPU时间的信息
-s    使用短输出格式
 
[root@cs6 ~]# w
13:16:55 up 19:20,  2 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    10.0.0.1         13:16    6.00s  0.03s  0.03s -bash
root     pts/1    10.0.0.1         10:50    0.00s  0.10s  0.03s w
 
以下是上述范例命令输出结果的格式说明。
上面的第1行输出依次显示了当前的系统时间、系统从启动到现在已经运行的时间、登录到系统中的用户数和系统平均负载。平均负载是指在lmin、5min、15min内系统的负载状况。
USER:表示登录系统的用户。
TTY:表示用户使用的TTY名称。
FROM:表示用户从哪里登录进来,一般显示远程登录主机的IP地址或主机名。
LOGIN@:用户登录的日期和时间。
IDLE:显示终端的空闲时间。
JCPU:表示该终端上的所有进程及子进程使用系统的总时间。
PCPU:当前活动进程使用的系统时间。
WHAT:当前用户执行的进程名称和选项。
 
[root@cs6 ~]# w -h
root     pts/0    10.0.0.1         13:16    1:26   0.03s  0.03s -bash
root     pts/1    10.0.0.1         10:50    0.00s  0.07s  0.00s w -h

7.14 who:显示已登录用户信息

    who命令能够显示已经登录系统的用户,以及系统的启动时间等信息。
-a    显示所有信息,相当于-b -d -login -p -r -t -T -u
-b    显示系统的启动时间
-d    显示已死的进程
-H    显示标题,默认不显示
-l    显示登录进程
 
[root@cs6 ~]# who
root     pts/0        2019-05-12 10:34 (10.0.0.1)
root     pts/1        2019-05-12 10:50 (10.0.0.1)
[root@cs6 ~]# who -b    #<=显示启动时间。
         system boot  2019-05-11 17:56
[root@cs6 ~]# who -d
         pts/0        2019-05-12 13:11              2506 id=ts/0  term=0 exit=0
[root@cs6 ~]# who -l    #<—显示登录的进程
LOGIN    tty1         2019-05-11 17:56              1483 id=1
LOGIN    tty2         2019-05-11 17:56              1485 id=2
LOGIN    tty3         2019-05-11 17:56              1487 id=3
LOGIN    tty4         2019-05-11 17:56              1489 id=4
LOGIN    tty5         2019-05-11 17:56              1491 id=5
LOGIN    tty6         2019-05-11 17:56              1493 id=6
[root@cs6 ~]# who -H
NAME     LINE         TIME             COMMENT
root     pts/1        2019-05-12 10:50 (10.0.0.1)

显示最全的登录用户的信息

[root@cs6 ~]# who -H -a
NAME       LINE         TIME             IDLE          PID COMMENT  EXIT
           system boot  2019-05-11 17:56
           run-level 3  2019-05-11 17:56
LOGIN      tty1         2019-05-11 17:56              1483 id=1
LOGIN      tty2         2019-05-11 17:56              1485 id=2
LOGIN      tty3         2019-05-11 17:56              1487 id=3
LOGIN      tty4         2019-05-11 17:56              1489 id=4
LOGIN      tty5         2019-05-11 17:56              1491 id=5
LOGIN      tty6         2019-05-11 17:56              1493 id=6
           pts/0        2019-05-12 13:11              2506 id=ts/0  term=0 exit=0
root     + pts/1        2019-05-12 10:50   .          2533 (10.0.0.1)
一般情况下,who命令的输出格式为:
名称 [状态] 线路时间 [活动] [进程标识](主机名)
其中各项的说明如下。
名称:用户的登录名。
状态:表明线路对用户是否都是可写的。
线路:类似于pts/1、pts/2等,此线路标识在/dev目录中可以找到。
时间:用户登录系统的时间。
活动:某个用户在自己的线路上最后一次活动发生以来到现在的时间。如果此项是个“.”,就表示一分钟内的线路活动;如果线路保持静止已经超过24小时,或者自从系统启动以来还没有使用过,那么此项标记为“old”。
进程标识:用户登录Shell的进程id。
主机名:登录到Linux系统上的客户端机器标识。 

7.15 users:显示已登录用户

    users命令可以显示已经登录系统的用户。如果是同一用户登录多次,则登录几次就会显示几次用户名。
 
[root@cs6 ~]# users
root root

7.16 whoami:显示当前登录的用户名

    whoami命令用于显示当前登录的用户名,这个命令可以看作英文短句who ami的简写。
显示当前登录的用户名称例子。
[root@cs6 ~]# whoami
root
 

7.17 last:显示用户登录列表

    last 命令能够从日志文件/var/log/wtmp读取信息并显示用户最近的登录列表。
显示用户最近登录的列表。
[root@cs6 ~]# last -10
root     pts/1        10.0.0.1         Sun May 12 10:50   still logged in   
root     pts/0        10.0.0.1         Sun May 12 10:34   still logged in   
root     pts/0        10.0.0.1         Sun May 12 06:23 - 10:25  (04:01)    
root     pts/1        10.0.0.1         Sat May 11 20:37 - 10:25  (13:47)    
root     pts/0        10.0.0.1         Sat May 11 17:57 - 20:43  (02:46)    
reboot   system boot  2.6.32-754.el6.x Sat May 11 17:56 - 13:04  (19:07)    
root     pts/0        10.0.0.1         Sat May 11 17:08 - down   (00:48)    
reboot   system boot  2.6.32-754.el6.x Sat May 11 17:07 - 17:56  (00:48)    
root     pts/1        10.0.0.1         Sat May 11 15:31 - down   (01:35)    
root     pts/0        10.0.0.1         Sat May 11 12:46 - down   (04:21)    
 
wtmp begins Sun May  5 23:13:36 2019
 
 
[root@cs6 ~]# last lewen    # 显示用户登录情况
 
wtmp begins Sun May  5 23:13:36 2019
 

7.18 lastb:显示用户登录失败的记录

    lastb命令可以从日志文件/var/log/btmp中读取信息,并显示用户登录失败的记录,用于发现系统登录异常。
 
-num    指定显示结果的行教*
-n num
 
[root@cs6 ~]# lastb
vagrant  ssh:notty    10.0.0.1         Sun May  5 23:20 - 23:20  (00:00)    
vagrant  ssh:notty    10.0.0.1         Sun May  5 23:20 - 23:20  (00:00)    
vagrant  ssh:notty    10.0.0.1         Sun May  5 23:19 - 23:19  (00:00)    
vagrant  ssh:notty    10.0.0.1         Sun May  5 23:19 - 23:19  (00:00)    
 
btmp begins Sun May  5 23:19:47 2019

7.19 lastlog:显示所有用户的最近登录记录

 lastlog命令从日志文件/var/log/lastlog中读取信息,并显示所有用户的最近登录记录,用于查看系统是否有异常登录。  
显示所有用户的最近登录记录。
 
[root@cs6 ~]# lastlog
Username         Port     From             Latest
root             pts/1    10.0.0.1         Sun May 12 10:50:00 +0800 2019
bin                                        **Never logged in**
daemon                                     **Never logged in**
adm                                        **Never logged in**
lp                                         **Never logged in**
sync                                       **Never logged in**
shutdown                                   **Never logged in**
halt                                       **Never logged in**
mail                                       **Never logged in**
uucp                                       **Never logged in**
operator                                   **Never logged in**
games                                      **Never logged in**
gopher                                     **Never logged in**
ftp                                        **Never logged in**
nobody                                     **Never logged in**
vcsa                                       **Never logged in**
saslauth                                   **Never logged in**
postfix                                    **Never logged in**
sshd                                       **Never logged in**
ntp                                        **Never logged in**
ett                                        **Never logged in**
lewen                                      **Never logged in**
inca                                       **Never logged in**
kevin                                      **Never logged in**
 
 
 
#<=当从不登录的系统用户突然登录了,就要怀疑是否有用户侵入系统了。

 

 
posted @ 2019-05-13 11:52  Fadewalk  阅读(1087)  评论(0编辑  收藏  举报