1. Linux登录日志的存储
在Linux系统中,登录日志主要存储在三个文件中,/var/log/wtmp,/var/run/utmp,/var/log/lastlog。常用的查询命令有w,who,last,users,lastlog等。
2. w命令
w命令可用于显示当前登录系统的用户信息。执行这项指令可查询目前登录系统的用户有哪些人,以及正在执行的程序。单独执行w指令会显示所有的用户,也可以指定用户名称,仅显示某位用户的相关信息。root@0b6987cc587f /workspace $ w
19:30 up 48 days, 3:05, 2 users, load averages: 2.11 2.11 2.14
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/2 192.168.0.1 Wed14 0.00s 0.08s 0.00s w
root pts/16 192.168.0.1 Wed11 5:20 0.08s 0.08s -bash
w命令显示的对应信息如下:当前时间,系统启动到现在的时间,登录用户的数目,系统在最近1秒、5秒和15秒的平均负载。USER: 登录帐号
TTY : 终端名称
FROM: 远程主机名
LOGIN@: 登录时间
IDLE: 空闲时间
JCPU: 该TTY终端连接的所有进程的占用时间
PCPU: 当前进程(即w项中显示的)的占用时间
WHAT: 当前正在运行进程的命令行
3. who命令
who命令用于显示系统中有哪些登录用户。root@0b6987cc587f /workspace $ who
root pts/2 2019-05-08 19:14 (192.168.0.1)
root pts/16 2019-05-08 18:39 (192.168.0.1)
who命令显示的对应信息如下:
登录帐号,终端名称,日期和时间,用户登录IP地址。
who am i用来查看当前登陆者的信息。
root@0b6987cc587f /workspace $ who am i
root pts/2 2019-05-08 19:14 (192.168.0.1)
4. last命令
last命令用于显示用户最近登录信息。
root@0b6987cc587f /workspace $ last -n 3
root pts/21 192.168.0.1 Thu May 9 12:01 - 19:00 (00:00)
root pts/6 192.168.0.1 Wed May 8 18:30 still logged in
root pts/2 192.168.0.1 Wed May 8 18:14 still logged in
wtmp begins Sun Dec 30 19:10:00 2018
last命令显示的对应信息如下:用户名称,终端名称,远程主机名,日志活动发生时间,括号中的数字表示连接持续了多少小时和分钟。
5. users命令
users命令用于显示当前登录系统的所有用户列表。每个用户名对应一个登录会话。如果一个用户有不止一个登录会话,则用户名将显示相同的次数。root@0b6987cc587f /workspace $ users
root root
6. lastlog命令
lastlog命令用于显示系统中所有用户最近一次的登录信息。root@0b6987cc587f /workspace $ last
logUsername Port From Latest
root pts/6 192.168.0.1 Sun Apr 28 18:38:20 +0800 2019
daemon **Never logged in**
bin **Never logged in**
sys **Never logged in**
sync **Never logged in**
games **Never logged in**
man **Never logged in**
lp **Never logged in**
mail **Never logged in**
news **Never logged in**
uucp **Never logged in**
proxy **Never logged in**
www-data **Never logged in**
backup **Never logged in**
list **Never logged in**
irc **Never logged in**
gnats **Never logged in**
nobody **Never logged in**
systemd-timesync **Never logged in**
systemd-network **Never logged in**
systemd-resolve **Never logged in**
systemd-bus-proxy **Never logged in**
_apt **Never logged in**
sshd **Never logged in**
7. ac命令
ac命令计算所有用户总的连接时间,默认单位是小时,基于/var/log/wtmp文件统计。root@0b6987cc587f /workspace $ ac
total 4595.16
|