当前位置: 首页 > news >正文

Linux 日志管理

Linux 日志管理

Linux 日志管理笔记


一、日志基础概念

1. 什么是日志?

日志文件是记录系统重要事件的信息文件,包括:

  • 用户登录/退出信息
  • 系统启动/运行/错误信息
  • 安全认证与授权信息(SSH、sudo、密码修改)
  • 邮件、打印、定时任务等服务信息

2. 日志的核心作用

  • 排错:系统故障时,日志是定位问题的第一手资料。
  • 安全审计:记录用户操作、攻击痕迹,排查非法访问。
  • 行为追溯:追踪系统和用户的历史行为,用于合规审计。

二、系统常用日志文件

日志文件 类型 说明 查看方式
/var/log/boot.log 文本 系统启动日志,记录开机过程 cat /var/log/boot.log
/var/log/cron 文本 定时任务(crontab)执行日志 cat /var/log/cron
/var/log/cups/ 目录 打印服务相关日志 查看目录内文件
/var/log/dmesg 文本 内核自检信息,也可直接用 dmesg 命令查看 dmesgcat /var/log/dmesg
/var/log/btmp 二进制 错误登录记录(如密码错误) lastb
/var/log/lastlog 二进制 所有用户最后一次登录时间 lastlog
/var/log/maillog 文本 邮件服务相关日志 cat /var/log/maillog
/var/log/messages 文本 系统通用消息日志,记录绝大多数关键事件 cat /var/log/messages
/var/log/secure 文本 安全认证日志(登录、SSH、sudo、su、密码修改) cat /var/log/secure
/var/log/wtmp 二进制 永久记录用户登录/注销、系统启动/重启/关机事件 last
/var/run/utmp 二进制 当前已登录用户信息,随用户登录/注销动态变化 w / who / users

三、日志管理服务 rsyslogd

1. 服务简介

  • CentOS 6.x:默认日志服务为 syslogd
  • CentOS 7/8:默认日志服务为 rsyslogd,功能更强,且与 syslogd 兼容。
  • 作用:统一收集、管理系统和服务产生的日志,并写入对应的日志文件。

2. 服务状态查看

# 查看 rsyslogd 是否在运行
ps aux | grep "rsyslog" | grep -v "grep"# 查看 rsyslogd 的自启动状态
systemctl list-unit-files | grep rsyslog

3. 日志文件格式

rsyslogd 记录的日志文件,每条记录包含 4 个部分:

  1. 事件产生的时间
  2. 产生事件的主机名
  3. 产生事件的服务名/程序名
  4. 事件的具体信息

示例:/var/log/secure 中的 SSH 登录日志

Nov 12 12:18:37 hspEdu100 sshd[10478]: pam_unix(sshd:session): session opened for user root by (uid=0)

四、rsyslogd 配置文件详解

1. 配置文件路径

/etc/rsyslog.conf

2. 配置文件核心格式

日志类型.日志级别 日志文件路径

  • 第一个 *:日志类型(Facility)
  • 第二个 *:日志级别(Priority)

(1)日志类型(Facility)

类型 说明
auth PAM 认证产生的日志
authpriv SSH、FTP 等登录/验证信息
cron 定时任务(crontab)相关日志
kern 内核相关日志
lpr 打印服务日志
mail 邮件服务日志
news 新闻组服务日志
user 用户程序产生的日志
uucp 主机间通信日志
local1-7 自定义日志设备

(2)日志级别(Priority)

级别从低到高,记录的信息越来越少:

级别 说明
debug 调试信息,日志量最大
info 一般信息日志(最常用)
notice 重要性较高的普通信息
warning 警告级别
err 错误级别,单个功能/模块无法正常工作
crit 严重级别,整个系统/软件无法正常工作
alert 需要立即处理的信息
emerg 内核崩溃等紧急信息
none 不记录任何日志

3. 自定义日志示例

/etc/rsyslog.conf 中添加自定义日志规则:

# 示例:记录所有日志到 /var/log/hsp.log
*..*    /var/log/hsp.log

修改后重启 rsyslogd 服务生效:

systemctl restart rsyslog

五、常用日志查看命令

1. 文本日志(直接查看)

cat /var/log/messages          # 查看完整日志
tail -f /var/log/secure        # 实时监控日志(常用于排查登录问题)
grep "Failed" /var/log/secure  # 过滤错误登录记录

2. 二进制日志(专用命令)

lastb        # 查看错误登录记录(/var/log/btmp)
lastlog      # 查看所有用户最后一次登录时间(/var/log/lastlog)
last         # 查看所有用户登录/注销记录(/var/log/wtmp)
w / who / users  # 查看当前已登录用户(/var/run/utmp)
dmesg        # 查看内核自检信息

六、CentOS 7 vs CentOS 8 日志管理对比

特性 CentOS 7 CentOS 8
默认日志服务 rsyslogd rsyslogd(兼容,同时支持 journald
主要日志文件 /var/log/ 目录下的传统文本日志 保留 /var/log/ 目录,同时引入 journalctl 查看二进制日志
日志查看方式 文本日志用 cat/tail,二进制用专用命令 支持传统方式 + journalctl(统一查看所有日志)
配置文件 /etc/rsyslog.conf /etc/rsyslog.conf(兼容),新增 /etc/systemd/journald.conf

七、日志管理最佳实践

  1. 定期清理日志:避免日志文件过大占满磁盘,可配置 logrotate 实现自动切割与清理。
  2. 监控关键日志:重点关注 /var/log/secure(安全)、/var/log/messages(系统),及时发现异常登录或错误。
  3. 日志备份:定期备份关键日志,用于问题追溯和安全审计。
http://www.jsqmd.com/news/840664/

相关文章:

  • 手把手教你用Python和SAM搞定CHAOS医学CT数据预处理(附完整代码)
  • 终极免费方案:KeyboardChatterBlocker彻底拯救机械键盘连击困扰
  • VSCode里装ESP-IDF插件总失败?试试这个手动升级pip的“卡点”操作
  • Google Pixel 10零点击漏洞链深度解析:5行代码拿下内核的技术细节与行业反思
  • 西门子S7-200 PLC步进控制实战:手把手教你用SM66.7状态位实现精准启停与循环
  • Cursor对话历史导出扩展:基于DOM逆向的AI协作数据备份方案
  • Word中知网研学插件“隐身”故障排查与COM加载项修复指南
  • 20253317孙晓东 实验四《Python程序设计》实验报告
  • Taotoken多模型聚合平台使用Python调用大模型的完整教程
  • HFSS新手避坑指南:边界条件设置顺序搞错,仿真结果差十倍?
  • 权威推荐!低查重AI教材编写工具,一键生成20万专业教材书稿!
  • 英雄联盟R3nzSkin内存换肤:终极安全换肤指南
  • MobaXterm实战:一站式打通串口调试与远程SSH管理
  • ARM RealView Debugger镜像加载与调试全解析
  • 基于电阻分压网络的传感器复用与蓝牙报警系统设计
  • LangChain实战:用思维链(Chain of Thought)构建可解释的智能推荐系统
  • HarmonyOS ArkWeb 系列之资源预获取:prefetchResource 让页面秒开
  • Music Tag Web:从混乱到有序,用智能标签管理拯救你的音乐收藏
  • 广州企业空调安装 TOP5!老兵制冷凭 12 年资历、铁军团队、政企案例稳坐榜首 - 广州搬家老班长
  • Claude Code提示词入门:CLAUDE.md编写完全指南
  • 从零构建企业级任务管理系统:全栈架构、核心功能与部署实战
  • 探索os-loop-ai:基于eBPF与AI的操作系统智能资源调度框架
  • 纵向数据分析实战:Landmark Analysis在动态风险预测中的应用
  • RK3588 AI开发避坑指南:从C++应用部署角度,理解RKNPU2与RKNN-Toolkit-Lite2的协作关系
  • AI视频自动化生成:从LLM到FFmpeg的全栈技术解析与实践
  • 基于LangChain与itchat-uos构建微信智能对话机器人:从原理到部署实践
  • OpenWrt kmod内核校验机制与强制安装实战
  • APK Installer:如何在Windows电脑上快速安装Android应用?终极指南
  • HarmonyOS ArkWeb 系列之动态组件预创建:提前准备好 Web 实例,打开即渲染
  • 从理论到实践:一阶数字低通滤波器在Matlab中的设计与实现