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




目录

  • 7.12 id:显示用户与用户组的信息
  • 7.13 w:显示已登录用户信息
  • 7.14 who:显示已登录用户信息
  • 显示最全的登录用户的信息
  • 7.15 users:显示已登录用户
  • 7.16 whoami:显示当前登录的用户名
  • 7.17 last:显示用户登录列表
  • 7.18 lastb:显示用户登录失败的记录
  • 7.19 lastlog:显示所有用户的最近登录记录


 


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


id命令能够显示指定用户真实有效的用户ID(UID)和组ID(GID)等信息。


 


id [option] [username]


 


-g    显示用户组ID


-G    显示用户所属附加群组的ID


-n    显示用户,所属群组或附加群组的名称,不显示数字


-r    显示实际ID


-u    显示用户ID


 




7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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.12-7.19 id、w、who、last、lastb、lastlog_用户信息



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


    w命令可以显示已经登录系统的用户,并显示用户正在执行的命令。


 


w [option] [user]


 


user参数是显示指定用户的信息。


 


-h    不显示前两行标题信息


-u    忽略执行程序的名称,以及CPU时间的信息


-s    使用短输出格式


 




7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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


7.12-7.19 id、w、who、last、lastb、lastlog_用户信息


 


以下是上述范例命令输出结果的格式说明。


上面的第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    显示登录进程


 


7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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)


7.12-7.19 id、w、who、last、lastb、lastlog_用户信息


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




7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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.12-7.19 id、w、who、last、lastb、lastlog_用户信息



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读取信息并显示用户最近的登录列表。


显示用户最近登录的列表。




7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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.12-7.19 id、w、who、last、lastb、lastlog_用户信息



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


    lastb命令可以从日志文件/var/log/btmp中读取信息,并显示用户登录失败的记录,用于发现系统登录异常。


 


-num    指定显示结果的行教*


-n num


 




7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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.12-7.19 id、w、who、last、lastb、lastlog_用户信息


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


 lastlog命令从日志文件/var/log/lastlog中读取信息,并显示所有用户的最近登录记录,用于查看系统是否有异常登录。  


显示所有用户的最近登录记录。


 


7.12-7.19 id、w、who、last、lastb、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**



#<=当从不登录的系统用户突然登录了,就要怀疑是否有用户侵入系统了。


7.12-7.19 id、w、who、last、lastb、lastlog_用户信息



目录

  • 7.12 id:显示用户与用户组的信息
  • 7.13 w:显示已登录用户信息
  • 7.14 who:显示已登录用户信息
  • 显示最全的登录用户的信息
  • 7.15 users:显示已登录用户
  • 7.16 whoami:显示当前登录的用户名
  • 7.17 last:显示用户登录列表
  • 7.18 lastb:显示用户登录失败的记录
  • 7.19 lastlog:显示所有用户的最近登录记录


 



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


id命令能够显示指定用户真实有效的用户ID(UID)和组ID(GID)等信息。


 


id [option] [username]


 


-g    显示用户组ID


-G    显示用户所属附加群组的ID


-n    显示用户,所属群组或附加群组的名称,不显示数字


-r    显示实际ID


-u    显示用户ID


 




7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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.12-7.19 id、w、who、last、lastb、lastlog_用户信息



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


    w命令可以显示已经登录系统的用户,并显示用户正在执行的命令。


 


w [option] [user]


 


user参数是显示指定用户的信息。


 


-h    不显示前两行标题信息


-u    忽略执行程序的名称,以及CPU时间的信息


-s    使用短输出格式


 




7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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


7.12-7.19 id、w、who、last、lastb、lastlog_用户信息


 


以下是上述范例命令输出结果的格式说明。


上面的第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    显示登录进程


 


7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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)


7.12-7.19 id、w、who、last、lastb、lastlog_用户信息


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




7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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.12-7.19 id、w、who、last、lastb、lastlog_用户信息



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读取信息并显示用户最近的登录列表。


显示用户最近登录的列表。




7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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.12-7.19 id、w、who、last、lastb、lastlog_用户信息



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


    lastb命令可以从日志文件/var/log/btmp中读取信息,并显示用户登录失败的记录,用于发现系统登录异常。


 


-num    指定显示结果的行教*


-n num


 




7.12-7.19 id、w、who、last、lastb、lastlog_用户信息

[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.12-7.19 id、w、who、last、lastb、lastlog_用户信息



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


 lastlog命令从日志文件/var/log/lastlog中读取信息,并显示所有用户的最近登录记录,用于查看系统是否有异常登录。  


显示所有用户的最近登录记录。


 


7.12-7.19 id、w、who、last、lastb、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**



#<=当从不登录的系统用户突然登录了,就要怀疑是否有用户侵入系统了。


7.12-7.19 id、w、who、last、lastb、lastlog_用户信息