Linux【13】-1-2-日志管理-Centos 操作系统常用log日志(last)

日志文件是重要的系统信息文件,其中记录了许多重要的系统事件,包括用户的登录信息、系统的启动信息、系统的安全信息、邮件相关信息、各种服务相关信息等。这些信息有些非常敏感,所以在 Linux 中这些日志文件只有 root 用户可以读取。

那么,系统日志文件保存在什么地方呢?还记得 /var/ 目录吗?它是用来保存系统动态数据的目录,那么 /var/log/ 目录就是系统日志文件的保存位置。我们通过表 1 来说明一下系统中的重要日志文件。

一、系统中的重要日志文件

1.1 /var/log/secure

记录验证和授权方面的倍息,只要涉及账户和密码的程序都会记录,比如系统的登录、ssh的登录、su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中(例如pop3,ssh,telnet,ftp等都会记录在此.)

1.2. 用户登陆信息 /var/log/wtmp

  • 该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件。因此随着系统正常运行时间的增加,该文件的大小也会越来越大,增加的速度取决于系统用户登录的次数。该日志文件可以用来查看用户的登录记录,
  • 一个二进制文件,记录每个用户的登录次数和持续时间等信息,被编码过,所以必须以last解析;

last命令就通过访问这个文件获得这些信息,并以反序从后向前显示用户的登录记录,last也能根据用户、终端tty或时间显示相应的记录。

可以用last命令输出当中内容:

debian:/var/log# last
debian   pts/9        221.215.176.148  Thu Oct 17 10:15   still logged in   
debian   pts/8        221.215.176.148  Thu Oct 17 09:56   still logged in   
debian   pts/7        221.215.176.148  Thu Oct 17 09:32 - 10:44  (01:12)    
root     pts/5        114.255.31.253   Thu Oct 17 09:30 - 10:20  (00:50)    
root     pts/4        114.255.31.253   Thu Oct 17 09:30 - 10:20  (00:50)  

或者用

last -f /var/log/wtmp

last 命令:

功能说明:列出目前与过去登入系统的用户相关信息。

语  法:last [-adRx][-f ][-n ][帐号名称...][终端机编号...]
补充说明:单独执行last指令,它会读取位于/var/log目录下,名称为wtmp的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来。
参  数:
-a  把从何处登入系统的主机名称或IP地址,显示在最后一行。
-d  将IP地址转换成主机名称。
-f   指定记录文件。
-n 或-  设置列出名单的显示列数。
-R  不显示登入系统的主机名称或IP地址。
-x  显示系统关机,重新开机,以及执行等级的改变等信息。

Linux下查看系统上次启动时间命令:

last reboot
who -b
uptime

1.3 /var/log/messages 开机系统发生的错误

它是核心系统日志文件,其中包含了系统启动时的引导信息,以及系统运行时的其他状态消息。I/O 错误、网络错误和其他系统错误都会记录到此文件中。其他信息,比如某个人的身份切换为 root,已经用户自定义安装软件的日志,也会在这里列出。

查看最新的message信息

tail -f  /var/log/message

1.4 /var/log/cron 记录与系统定时任务相关的曰志

用来记录crontab这个服务的内容;

1.5 /var/log/cups/

记录打印信息的曰志

1.6 /var/log/dmesg 内核日志;

记录了系统在开机时内核自检的信总。也可以使用dmesg命令直接查看内核自检信息

1.7 /var/log/btmp 记录错误的登录尝试;

记录错误登陆的日志。这个文件是二进制文件,不能直接用Vi查看,而要使用lastb命令查看。命令如下:

[root@localhost log]#lastb
root tty1 Tue Jun 4 22:38 - 22:38 (00:00)
#有人在6月4 日 22:38便用root用户在本地终端 1 登陆错误

1.8 /var/log/lastlog

记录系统中所有用户最后一次的登录时间的曰志。这个文件也是二进制文件.不能直接用Vi 查看。而要使用lastlog命令查看

1.9 /var/Iog/maillog 记录邮件信息的曰志

maillog or mailog ?

1.10 /var/tun/ulmp 记录当前已经登录的用户的信息。

这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息。同样,这个文件不能直接用Vi查看,而要使用w、who、users等命令查看

二、其他日志

除系统默认的日志之外,采用 RPM 包方式安装的系统服务也会默认把日志记录在 /var/log/ 目录中(源码包安装的服务日志存放在源码包指定的目录中)。不过这些日志不是由 rsyslogd 服务来记录和管理的,而是各个服务使用自己的日志管理文档来记录自身的日志。以下介绍的日志目录在你的 Linux 上不一定存在,只有安装了相应的服务,日志才会出现。服务日志如表 2 所示。

表 2 服务日志

日志文件	说明
/var/log/httpd/	RPM包安装的apache取务的默认日志目录
/var/log/mail/	RPM包安装的邮件服务的额外日志因录
/var/log/samba/	RPM色安装的Samba服务的日志目录
/var/log/sssd/	守护进程安全服务目录
/var/log/mysqld.log 等等文件,记录几个不同的网络服务的记录文件;

其他:

/var/log.boot.log

记录一些开机或者关机启动的一些服务显示的启动或者关闭的信息;

/var/log/acpid

ACPI - Advanced Configuration and Power

Interface,表示高级配置和电源管理接口。 后面的 d 表示 deamon 。 acpid 也就是 the ACPI event daemon 。 也就是 acpi 的消息进程。用来控制、获取、管理 acpi 的状态的服务程序。

/var/run/utmp

记录着现在登录的用户;

/var/log/cpus

CPU的处理信息;

/var/log/syslog

事件记录监控程序日志;

/var/log/auth.log

用户认证日志;

/var/log/daemon.log

系统进程日志;

/var/log/mail.err

邮件错误信息;

/var/log/mail.info

邮件信息;

/var/log/mail.warn

邮件警告信息;

/var/log/daemon.log

系统监控程序产生的信息;

/var/log/kern

内核产生的信息;

/var/log/lpr

行打印机假脱机系统产生的信息;

参考资料:

药企,独角兽,苏州。团队长期招人,感兴趣的都可以发邮件聊聊:tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn