运维破案全靠日志!系统报错、入侵痕迹一键追溯。
Linux 日志管理操作系统内核和程序记录了发生的事件日志这些日志用于审核系统并解决问题。日志以文本方式保存在/var/log目录中。可以使用普通文本实用程序如less和tail检查这些日志。Linux 内置了基于Syslog协议的标准日志记录系统。许多程序使用此系统记录事件并将其组织到日志文件中。CentOS 7 中systemd-journald和rsyslog服务负责处理syslog消息。systemd-journald 服务是操作系统事件记录体系结构的核心收集系统各方面事件消息包括内核、引导过程早期阶段的输出、守护程序启动和运行时的输出、syslog事件然后将它们重组为标准格式并写入结构化的索引系统日志中。rsyslog 服务读取systemd-journald日志然后记录到日志文件或根据自己的配置将日志保存到不同的文件中以及转发给其他程序。rsyslog 日志配置rsyslog 服务配置配置文件位置主配置 /etc/rsyslog.conf。主配置文件中以下配置作用是引入从配置目录中配置文件。bash # Include all config files in /etc/rsyslog.d/ include(file/etc/rsyslog.d/*.conf modeoptional)从配置/etc/rsyslog.d/*.conf。日志记录规则每一条日志消息都可以通过消息类型facility和priority分类参考rsyslog.conf(5)。日志记录规则格式:facility连接符号priority 处理方式例如cron.infofacility设备类型facility说明authpam产生的日志authprivsshftp等登录信息的验证信息cron周期性任务计划相关kern内核Ipr打印mail邮件news新闻组user用户程序产生的相关信息local 0~7自定义的日志设备本地使用priority优先级优先级优先级名称严重性0emerg系统不可用1alert必须立即采取措施2crit临界情况3err非验证错误状况4warning警告情況5notice正常但重要的事件6info信息性事件7debug调式级别消息8none代表什么都不存储连接符号连接符号作用.表示大于等于xxx级别的信息.表示等于xXx级别的信息.!表示在xXx之外的等级的信息处理方式记录到文件发送到终端转发给其他服务器配置文件内容/etc/rsyslog.conf 中部分内容如下### RULES ##### Log all kernel messages to the console.#kern.* /dev/console*.info;mail.none;authpriv.none;cron.none /var/log/messages authpriv.* /var/log/securme mail.* -/var/log/maillog cron.* /var/log/cron# Everybody gets emergency messages*.emerg :omusrmsg:*# Save news errors of level crit and higher in a special file.uucp,news.crit /var/log/spooler(打印机)# Save boot messages also to boot.loglocal7.* /var/log/boot.log日志存储位置/var/log/messages大多数系统日志消息记录在此处不包括与身份验证、电子邮件处理和调度作业执行相关的消息以及纯碎与调试相关的消息。/var/log/secure与安全性和身份验证事件相关的syslog消息。/var/log/maillog与邮件服务器相关的syslog消息。/var/log/cron与调度作业执行相关的syslog消息。/var/log/boot.log与系统启动相关的非syslog控制台消息。查看日志内容[rootserver ~17:05:29]# tail -f /var/log/messagesJul2316:41:49 server systemd: Removed slice User Slice of laowang. Jul2316:50:01 server systemd: Created slice User Slice of root. Jul2316:50:01 server systemd: Started Session25of user root. Jul2316:50:01 server systemd: Removed slice User Slice of root.日志内容说明Nov 10 10:23:34代表日志产生时间。centos7产生日志的主机名。systemd-logind产生日志的进程。最后一个区域是日志内容例如“Removed session 15.”。[rootserver ~17:07:32]# tail -f /var/log/secureJul2316:33:49 server sshd[5635]: User xiaoma from client.xiaoma.cloud not allowed because not listedinAllowUsers Jul2316:33:49 server sshd[5635]: input_userauth_request: invalid user xiaoma[preauth]Jul2316:33:51 server unix_chkpwd[5637]: password check failedforuser(xiaoma)Jul2316:33:51 server sshd[5635]: pam_unix(sshd:auth): authentication failure;lognameuid0euid0ttysshruserrhostclient.xiaoma.clouduserxiaoma自定义日志记录规则[rootserver ~17:12:41]# vim /etc/rsyslog.d/xiaoma.conflocal5.* /var/log/xiaoma.log#重启[rootserver ~17:13:53]# systemctl restart rsyslog.service[rootserver ~17:14:54]# ls /var/log/xiaoma.logls: 无法访问/var/log/xiaoma.log: 没有那个文件或目录# 手动生成一个消息[rootserver ~17:15:10]# logger -p local5.info test my log[rootserver ~17:15:43]# cat /var/log/xiaoma.logJul2417:15:43 server root:testmy log最佳实践1.故障1sshd_config文件丢失模拟[rootserver ~ 00:10:42]# mv /etc/ssh/sshd_config .[rootserver ~ 00:11:05]# systemctl restart sshd监控日志[rootserver ~ 00:11:21]# tail -f /var/log/messagesJul2500:11:21 server systemd: Unit sshd.service entered failed state. Jul2500:11:21 server systemd: sshd.service failed. Jul2500:12:03 server systemd: sshd.service holdofftimeover, scheduling restart. Jul2500:12:03 server systemd: Stopped OpenSSH server daemon. Jul2500:12:03 server systemd: Starting OpenSSH server daemon...######################################################################Jul2500:12:03 server sshd: /etc/ssh/sshd_config: No suchfileor directory######################################################################Jul2500:12:03 server systemd: sshd.service: main process exited,codeexited,status1/FAILURE Jul2500:12:03 server systemd: Failed to start OpenSSH server daemon. Jul2500:12:03 server systemd: Unit sshd.service entered failed state. Jul2500:12:03 server systemd: sshd.service failed.根据提示恢复文件。[rootserver ~ 00:12:20]# mv sshd_config /etc/ssh[rootserver ~ 00:14:05]# systemctl restart sshd2.故障2sshd_config配置错误模拟echo hello world /etc/ssh/sshd_config[rootserver ~ 00:14:38]# echo hello world /etc/ssh/sshd_config监控日志[rootserver ~ 00:15:40]# tail -f /var/log/messagesJul2500:14:38 server systemd: Started OpenSSH server daemon. Jul2500:15:40 server systemd: Stopping OpenSSH server daemon... Jul2500:15:40 server systemd: Stopped OpenSSH server daemon. Jul2500:15:40 server systemd: Starting OpenSSH server daemon...#####################################################################Jul2500:15:40 server sshd: /etc/ssh/sshd_config: line141: Bad configuration option: hello#####################################################################Jul2500:15:40 server sshd: /etc/ssh/sshd_config: terminating,1bad configuration options Jul2500:15:40 server systemd: sshd.service: main process exited,codeexited,status255/n/a根据提示修复配置文件错误。补充虽然系统提供了日志服务但并不会记录所有内容。系统中的应用程序是否使用 rsyslog 服务记录日志取决于应用程序设计。例如httpd 服务使用自己的日志记录。sshd 服务使用 rsyslog 服务记录登录和退出日志。[rootserver ~]# grep AUTHPRIV /etc/ssh/sshd_config SyslogFacility AUTHPRIV[rootserver ~]# grep ^authpri /etc/rsyslog.conf authpriv.* /var/log/secure[rootserver ~]# tail -1 /var/log/secure Jul 25 14:10:39 server sshd[20527]: pam_unix(sshd:session): session opened for user root by (uid0) systemd-journald 日志systemd-journald 日志持久化保存systemd-journald 配置文件/etc/systemd/journald.conf详情参考 journald.conf(5)Storage 参数更改参数值后需要重启systemd-journald服务。persistent将日志存储在/var/log/journal目录中这可在系统重启后持久保留。如果/var/log/journal目录不存在systemd-journald服务会创建它。volatile将日志存储在易失性/run/log/journal目录中。因为/run文件系统是临时的仅存在于运行时内存中存储在其中的数据包括系统日志不会在系统启后持久保留。auto如果/var/log/journal目录存在那么rsyslog会使用持久存储否则使用易失性存储。如果未设置Storage参数此为默认操作。[rootserver ~10:37:49]# vim /etc/systemd/journald.conf......[Journal]# StorageautoStoragepersistent......[rootserver ~10:39:33]# systemctl restart systemd-journaldsystemd-journald 日志分析[rootserver ~10:40:47]# ls /var/log/journal/a5a99033a10f49259e32c539ed260f3a# systemd-journald日志是以二进制方式存储不能使用常规文本工具查看# 查看所有日志条目默认使用less查看文档[rootserver ~10:41:41]# journalctl# 动态查看所有日志条目[rootserver ~10:42:16]# journalctl -f# 查看本次系统启动到现在所有日志条目[rootserver ~10:42:25]# journalctl -b 0# 1 第1次启动的日志# 2 第2次启动的日志# N 第n次启动的日志# 查看最近5条日志[rootserver ~10:42:52]# journalctl -n 5# 查看error级别日志[rootserver ~10:43:20]# journalctl -p err[rootserver ~10:43:33]# journalctl -p err | cat# 根据时间查看日志[rootserver ~10:45:49]# journalctl --since today[rootserver ~10:46:08]# journalctl --since 2026-07-24 10:40:00 --until 2026-07-24 10:46:00[rootserver ~10:48:04]# journalctl --since -1 hour# 详细查看所有日志[rootserver ~10:48:40]# journalctl -o verbose# 查看特定unit日志[rootserver ~10:49:14]# journalctl -u sshd.service最佳实践故障1配置文件丢失[rootserver ~10:49:55]# mv /etc/ssh/sshd_config .[rootserver ~10:50:19]# systemctl restart sshd处理过程通过日志发现/etc/ssh/sshd_config: No such file or directory文件丢失。# 重启服务时动态监控日志[rootserver ~10:51:23]# journalctl -f-- Logs begin at 五2026-07-24 09:27:08 CST. --7月2410:50:46 server.xiaoma.cloud systemd[1]: sshd.service failed.7月2410:50:46 server.xiaoma.cloud polkitd[727]: Unregistered Authentication Agentforunix-process:4335:502033(system bus name :1.142, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8)(disconnected from bus)7月2410:51:28 server.xiaoma.cloud systemd[1]: sshd.service holdofftimeover, scheduling restart.7月2410:51:28 server.xiaoma.cloud systemd[1]: Stopped OpenSSH server daemon.7月2410:51:28 server.xiaoma.cloud systemd[1]: Starting OpenSSH server daemon...7月2410:51:28 server.xiaoma.cloud sshd[4357]: /etc/ssh/sshd_config: No suchfileor directory7月2410:51:28 server.xiaoma.cloud systemd[1]: sshd.service: main process exited,codeexited,status1/FAILURE7月2410:51:28 server.xiaoma.cloud systemd[1]: Failed to start OpenSSH server daemon.......# 移动回来并重启服务[rootserver ~10:52:21]# mv sshd_config /etc/ssh/sshd_config[rootserver ~10:54:19]# systemctl restart sshd故障2配置文件参数错误[rootserver ~10:56:22]# echo PermitRootLogin hahaha /etc/ssh/sshd_config[rootserver ~10:57:35]# systemctl restart sshd处理过程通过日志发现/etc/ssh/sshd_config line 141: unsupported option hahaha.# 重启服务时动态监控日志[rootserver ~10:58:16]# journalctl -f-- Logs begin at 五2026-07-24 09:27:08 CST. --7月2410:57:59 server.xiaoma.cloud sshd[4453]: Received signal15;terminating.7月2410:57:59 server.xiaoma.cloud systemd[1]: Stopping OpenSSH server daemon...7月2410:57:59 server.xiaoma.cloud systemd[1]: Stopped OpenSSH server daemon.7月2410:57:59 server.xiaoma.cloud systemd[1]: Starting OpenSSH server daemon...7月2410:57:59 server.xiaoma.cloud sshd[4544]: /etc/ssh/sshd_config line141: unsupported optionhahaha.7月2410:57:59 server.xiaoma.cloud systemd[1]: sshd.service: main process exited,codeexited,status255/n/a7月2410:57:59 server.xiaoma.cloud systemd[1]: Failed to start OpenSSH server daemon.7月2410:57:59 server.xiaoma.cloud systemd[1]: Unit sshd.service entered failed state.# 清理对应无效记录并重启服务[rootserver ~10:58:40]# sed -i /hahaha/d /etc/ssh/sshd_config[rootserver ~10:59:19]# systemctl restart sshd故障3配置文件参数错误[rootserver ~10:59:31]# yum install -y httpd[rootserver ~11:00:36]# sed -i s/Listen 80/Listen 80000/g /etc/httpd/conf/httpd.conf[rootserver ~11:01:03]# systemctl restart httpd处理过程通过日志发现AH00526: Syntax error on line 42 of /etc/httpd/conf/httpd.conf# 重启服务时动态监控日志[rootserver ~11:01:27]# journalctl -f-- Logs begin at 五2026-07-24 09:27:08 CST. --7月2411:01:01 server.xiaoma.cloud systemd[1]: Removed slice User Slice of root.7月2411:01:13 server.xiaoma.cloud polkitd[727]: Registered Authentication Agentforunix-process:4652:564708(system bus name :1.158[/usr/bin/pkttyagent --notify-fd5--fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8)7月2411:01:13 server.xiaoma.cloud systemd[1]: Starting The Apache HTTP Server...7月2411:01:13 server.xiaoma.cloud httpd[4659]: AH00526: Syntax error on line42of /etc/httpd/conf/httpd.conf:7月2411:01:13 server.xiaoma.cloud httpd[4659]: Invalid address or port7月2411:01:13 server.xiaoma.cloud systemd[1]: httpd.service: main process exited,codeexited,status1/FAILURE7月2411:01:13 server.xiaoma.cloud systemd[1]: Failed to start The Apache HTTP Server.7月2411:01:13 server.xiaoma.cloud systemd[1]: Unit httpd.service entered failed state.# 修改回来并重启服务[rootserver ~11:01:39]# sed -i s/Listen 80000/Listen 80/g /etc/httpd/conf/httpd.conf[rootserver ~11:02:09]# systemctl restart httpd全文总结rsyslog生成文本格式系统日志日志存放目录/var/log/自定义规则放到/etc/rsyslog.d/修改配置必须重启 rsyslogtail -f实时跟踪文本日志。systemd-journald管理 systemd 托管服务日志使用journalctl查询默认重启丢失日志修改 Storagepersistent 实现持久保存。排错思路系统登录、定时任务报错优先查/var/log/secure、/var/log/cron自定义服务启动失败优先使用journalctl -u 服务名。运维规范不要直接修改主配置文件修改配置先做语法校验开启日志轮转防止日志无限增大打满硬盘重要环境可远程转发日志留存证据。

相关新闻

3步解锁Beyond Compare永久使用权限:开源密钥生成器完全指南

3步解锁Beyond Compare永久使用权限:开源密钥生成器完全指南

3步解锁Beyond Compare永久使用权限:开源密钥生成器完全指南 【免费下载链接】BCompare_Keygen Keygen for BCompare 5 项目地址: https://gitcode.com/gh_mirrors/bc/BCompare_Keygen 还在为Beyond Compare 5的30天试用期而焦虑吗?每次打开软件都…

2026/7/25 10:27:12 阅读更多 →
3种高效方法:如何用开源工具永久保存抖音精彩内容

3种高效方法:如何用开源工具永久保存抖音精彩内容

3种高效方法:如何用开源工具永久保存抖音精彩内容 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. …

2026/7/25 10:27:12 阅读更多 →
Legacy iOS Kit终极指南:如何拯救旧iPhone/iPad设备性能的完整教程

Legacy iOS Kit终极指南:如何拯救旧iPhone/iPad设备性能的完整教程

Legacy iOS Kit终极指南:如何拯救旧iPhone/iPad设备性能的完整教程 【免费下载链接】Legacy-iOS-Kit An all-in-one tool to restore/downgrade, save SHSH blobs, jailbreak legacy iOS devices, and more 项目地址: https://gitcode.com/gh_mirrors/le/Legacy-i…

2026/7/25 10:27:12 阅读更多 →

最新新闻

3步快速搭建Sunshine游戏串流服务器:家庭云游戏的终极指南

3步快速搭建Sunshine游戏串流服务器:家庭云游戏的终极指南

3步快速搭建Sunshine游戏串流服务器:家庭云游戏的终极指南 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 想要在任何设备上流畅玩PC游戏吗?Sunshine游戏串…

2026/7/25 10:45:19 阅读更多 →
图像二值化技术:原理、实现与工程实践

图像二值化技术:原理、实现与工程实践

1. 图像二值化的本质与核心价值在计算机视觉领域,二值化处理就像给图像做"黑白分明"的判断题。我处理过上千张工业检测图像,发现合理的二值化能直接决定后续特征提取的成败。这种将灰度图像转换为仅含黑白两色的过程,实质是通过阈值…

2026/7/25 10:45:19 阅读更多 →
图神经网络与Transformer在查询优化器中的应用与挑战

图神经网络与Transformer在查询优化器中的应用与挑战

1. 查询优化器的变革契机我第一次接触查询优化器是在2012年处理一个电商平台的慢查询问题。当时面对的是一个典型的星型模式数据库,优化器在连接顺序选择上的失误导致了一个本该30秒完成的查询跑了近8分钟。这种经历让我深刻认识到:传统基于代价模型的优…

2026/7/25 10:45:19 阅读更多 →
Windows HEIC缩略图插件:终极解决方案让iPhone照片在Windows完美预览

Windows HEIC缩略图插件:终极解决方案让iPhone照片在Windows完美预览

Windows HEIC缩略图插件:终极解决方案让iPhone照片在Windows完美预览 【免费下载链接】windows-heic-thumbnails Enable Windows Explorer to display thumbnails for HEIC/HEIF files 项目地址: https://gitcode.com/gh_mirrors/wi/windows-heic-thumbnails …

2026/7/25 10:45:19 阅读更多 →
基于MobileNetV3的水果识别系统设计与优化

基于MobileNetV3的水果识别系统设计与优化

1. 项目背景与核心价值水果识别这个课题乍看简单,实则包含了计算机视觉领域的多个关键技术挑战。我在本科毕设阶段选择这个方向,主要是考虑到它既能体现深度学习的基础能力,又具备实际应用场景。不同于常见的MNIST手写数字识别这类"玩具…

2026/7/25 10:45:19 阅读更多 →
一次跨国专线中断引发的全球业务影响复盘:BGP路由策略优化与SD-WAN多路径冗余建设

一次跨国专线中断引发的全球业务影响复盘:BGP路由策略优化与SD-WAN多路径冗余建设

一次跨国专线中断引发的全球业务影响复盘:BGP路由策略优化与SD-WAN多路径冗余建设 一、事件始末:一根光纤引发的全球雪崩 2025年2月12日凌晨2:17(UTC8),运维值班钉钉群突然被大量告警刷屏。华东Region的监控系统显示大…

2026/7/25 10:44:18 阅读更多 →

日新闻

突破文档下载限制:kill-doc让你看到的都能保存

突破文档下载限制:kill-doc让你看到的都能保存

突破文档下载限制:kill-doc让你看到的都能保存 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就是为了解决您的…

2026/7/25 0:00:35 阅读更多 →
C++ string类模拟实现:从深拷贝到内存管理的完整指南

C++ string类模拟实现:从深拷贝到内存管理的完整指南

1. 项目概述:为什么我们要“手撕”string类?在C的学习道路上,尤其是从C语言过渡到C的“初阶”阶段,string类绝对是一个绕不开的核心。标准库里的std::string用起来太方便了,、find、substr,几个操作符和函数…

2026/7/25 0:00:35 阅读更多 →
三角洲寻宝鼠工具:高效文件搜索与资源管理实战指南

三角洲寻宝鼠工具:高效文件搜索与资源管理实战指南

1. 先搞清楚“三角洲寻宝鼠”到底是什么工具从名称来看,“三角洲寻宝鼠”更像是一个资源查找或文件检索类工具,而不是游戏或娱乐软件。这类工具的核心价值在于帮助用户快速定位特定资源,比如文档、图片、压缩包或特定格式的文件。如果你经常需…

2026/7/25 0:00:35 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/25 5:08:22 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/25 5:13:53 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/24 18:52:18 阅读更多 →

月新闻