S2-P5 分析和存储日志
约 1189 字大约 4 分钟
2025-03-24
任务一:配置rsyslog服务,将debug日志写入到指定的日志文件
添加日志配置文件并添加配置内容
cd /etc/rsyslog.d/ vim debug.conf
*.debug /var/log/21lst-debuglog
配置文件解析:
*.debug
:日志等级/var/log/21lst-debuglog
:存储位置重启
rsyslog
服务# 重启rsyslog服务 systemctl restart rsyslog.service # 查看rsyslog服务状态(如果异常可能是配置文件错误) systemctl status rsyslog.service
查看
/var/log
下是否已经生成21lst-debuglog
日志文件测试发送一条
debug
级别的日志并查看是否在21lst-debuglog
日志文件中记录# 发送debug日志 logger -p user.debug "this is a debug test from 21lst" # 查看日志末尾10行 tail /var/log/21lst-debuglog
命令解析:
-p user.debug
:设置记录的设备和级别-t 21lst_test
:每行记录都加上21lst_test
这个标签"this ... 21lst"
:输出信息
任务二:通过systemd-journald来查看日志并永久存储其日志
查看PID为1的日志的详细内容
journalctl _PID=1 -o verbose | more
命令解析:
-n 5
:查看最后5条日志-p err
:显示指定级别的日志-f
:实时监控日志-k
:仅查看内核日志,不显示应用日志-b
:显示本次启动的日志--since "2020-05-01 11:00:00"
:显示从什么时候开始 ,--since today
为今天--until "2020-02-13 11:05:00"
:显示到哪为止-o verbose
:查看日志详细信息和选项_SYSTEMD_UNIT=sshd.service
:显示与sshd.service
相关的所有日志条目_PID=82
:显示PID为82的日志条目_COMM=sshd
:显示进程名字为sshd
的日志| more
:可以向下翻阅日志,避免刷屏日志内容:
查看从
2020-9-1 00:00:00
起的所有err
级别的日志journalctl -p err --since "2020-09-01 00:00:00" | more
查看今天所有和
sshd
服务相关的日志journalctl --since today _SYSTEMD_UNIT=sshd.service
永久存储
systemd-journald
日志,修改配置文件的Storage
选项为persistent
并重启服务,检查/var/log
下生成journald
文件夹,存放其日志进入
vim
界面后,可以使用快捷命令将它复制并粘贴,以保留默认设置供参考:定位到
Storage
所在行,按下yy
复制整行在当前直接按
p
粘贴去掉粘贴出来
Storage
的注释符号,并修改为persistent
保存并退出
重启服务,生效配置文件:
# 重启服务 systemctl restart systemd-journald # 生效配置文件 systemctl status systemd-journald
查看是否生成日志:
cd /var/log/
注意:
systemd-journald
生成的日志不可直接查看,只能用journalctl
命令查看
任务三:设置系统的时间和时区,并且同步NTP时间
通过
timedatectl
更改系统的时区为Asia/Shanghai
,将系统的时间修改为2020-12-30 12:12:12
# 修改时区 timedatectl set-timezone "Asia/Shanghai" # 关闭NTP时间同步 timedatectl set-ntp 0 # 设置时间 timedatectl set-time "2020-12-30 12:12:12" # 查看现在时间(精简) date # 查看显示时间(详细) timedatectl
配置系统DNS
# 设置DNS为 114.114.114.114 nmcli con mod ens33 ipv4.dns 114.114.114.114 # 重载网卡 nmcli con up ens33 # 查看网卡配置 nmcli dev show ens33 | grep DNS
开启
chrony
服务,将时间同步为NTP时间# 启动服务 systemctl start chronyd # 查看状态 systemctl status chronyd # 启用NTP同步 timedatectl set-ntp 1
查看同步状态:
chronyc sources -v
显示解析:
*
:当前同步的源+
:表示其他可接受的源?
:表示连接丢失的源
拓展
动态监测
/var/log/messages
的变化提示:一个tty终端监控,另外一个tty终端发送日志(用两种方法)
方法一:
tail -F /var/log/messages
方法二:
less +F /var/log/messages
修改
chrony
配置文件,将ntp1.aliyun.com
作为NTP同步时间源vim /etc/chrony.conf
增加时间源
ntp1.aliyun.com
:server ntp1.aliyun.com iburst
重启
chronyd
服务,查看同步状态:systemctl restart chronyd systemctl status chronyd chronyc sources -v