Linux 系统日志管理时间:2024-04-09 09:52:091.rsyslog ##此服务是用来采集系统日志的。他不产生日志,只是起到采集作用 2.rsyslog的管理(配置文件/etc/rsyslog.conf) /var/log/messages ##服务信息日志 /var/log/secure ##系统登陆日志 /var/log/cron ##定时任务日志 /var/log/maillog ##邮件日志 /var/log/boot.log ##系统启动日志 1).指定日志采集路径: *(什么类型的日志).*(什么级别的日志) / (存放到什么文件) ##日志采集规则 例:*.* /var/log/messages ##将所有类型所有级别的日志存放在/var/log/messages里面 2).日志类型分为: auth ##pam产生日志 authpriv ##ssh.ftp等登陆信息的验证信息 cron ##时间任务相关 kern ##内核 lpr ##打印 mail ##邮件 mark(syslog)-rsyslog ##服务内部的信息,时间标识 news ##新闻组 user ##用户程序产生的相关程序 uucp ##unix to unix copy,unix主机之间相关的通讯 local 1~7 ##自定义的日志设备 3).日志级别分为: debug ##有调式信息的,日志信息最多 info ##般信息的日志,最常用 notice ##最具有重要性的普遍条件的信息 warning ##警告级别 err ##错误级别,组织某个功能或者模块不能正常工作的信息 crit ##严重级别,组织整个系统或者整个软件不能正常工作的信息 alert ##需要立刻修改的信息 emerg ##内核崩溃等严重信息 none ##什么都不记录 ###注意:从上到下,级别从低到高,记录的信息越来越少 3.日志的远程同步 在日志发送方: vim /etc/rsyslog.conf *.* @ip ##”@“表示udp协议发送,”@@“表示tcp协议发送 systemctl restart rsyslog.service ##重启服务 systemctl stop firewalld ##关闭火墙 在日志接收方: vim /etc/rsyslog.conf 15 $ModLoad imudp ##日志接收模块 16 $UDPServerRun 514 ##开启接收端口 systemctl restart rsyslog systemctl stop firewalld ##关闭火墙 systemctl disable firewalld ##设定火墙开机关闭 测试: 在发送方和接收方都清空日志文件 > /var/log/messages 在日志的发送方 logger xxx cat /var/log/messages ##查看日志已经生成 在日志接收方查看 cat /var/log/messages 排错方法: 1)防火期强是否关闭 2)配置文件是否更改,重启 3)网络是否良好 ping 本主机ip 4)接口是否打开 netstat -antlupe | grep rsyslog 4.日志采集格式的设定 vim /etc/rsyslog.conf 47 $template 格式名称, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n" ^ ^ ^ ^ ^ 显示日志时间 显示主机ip 日志记录目 日志内容 换行 *.* /var/log/messages;格式名称 5.时间同步服务 服务名称 chronyd 在服务端: vim /etc/chrony.conf ##修改配置文件 22 allow 172.25.254.0/24 ##允许哪些客户端来同步本机时间 29 local stratum 10 ##本机不同步任何主机的时间,本机作为时间源 systemctl restart chronyd ##重启服务 systemctl stop firewalld.service ##关闭火墙 在客户端: vim /etc/chrony.conf ##修改配置文件 server ip iburst ##本机立即同步此ip的时间 timedatectl set-timezone Asia/shanghai ##更改本机时区为上海时区 systemctl restart chronyd ##重启服务 systemctl stop firewalld.service ##关闭火墙 测试: 在客户端:chronyc sources -v 左下角出现^*说明时间同步成功 6.timedatectl命令 timedatectl ##管理系统时间 timedatectl status ##显示当前时间信息 timedatectl set-time ##设定当前时间 timedatectl set-timezone ##设定当前时区 timedatectl set-local-rtc 0|1 ##设定是否使用utc时间 timedatectl list-timezones ##查看支持的所有时区 7.journal 1)journalctl ##日志查看工具 journalctl -n 3 ##查看最近3条日志 journalctl -p err ##查看错误日志 journalctl -o verbose ##查看日志的详细参数 journalctl --since ##查看从什么时间开始的日志 journalctl --until ##查看到什么时间为止的日志 2)如何使用systemd-journald保存系统日志 默认systemd-journald时不保存系统日志到硬盘的 那么关机后再次开机只能看到本次开机之后的日志 上一次关机之前的日志是无法保存的 mkdir /var/log/journal chgrp systemd-journal /var/log/journal chmod g+s /var/log/journal killall -1 systemd-journald ls /var/log/journal 文件名 *保留的日志文件是数据直接用journalctl查看日志