讲师中心 微信公众号

工具推荐

视频效率加速
Seko
Seko

AI短剧一键生成成片

AniShort
AniShort

AI短剧协同制作平台

updream

一键生成高质量推广成片

立刻MV
立刻MV

低成本歌曲 MV、视频生成

Linux 日志系统原理与运维实践

秋静酱_1810

秋静酱_1810

发布时间:2026-02-11 20:49:02

|

636人浏览过

|

来源于php中文网

原创

Linux日志分层存储:systemd-journald二进制日志(/run/log/journal或持久化/var/log/journal)、rsyslog文本日志(/var/log/messages等)、内核dmesg环缓冲区、auditd审计日志(/var/log/audit/audit.log)。

linux 日志系统原理与运维实践

日志到底存在哪儿?别只记 /var/log 就完事

Linux 日志不是统一存一个地方,而是分层、分流、多格式共存。你看到的 /var/log/messages 或 /var/log/secure 只是 rsyslog 转发落地的文本副本;真正的第一手日志往往先经过 systemd-journald,以二进制形式暂存在 /run/log/journal(重启即丢),或持久化到 /var/log/journal(需手动开启)。内核启动阶段的日志甚至根本没走用户空间,只在 dmesg 环缓冲区里——/var/log/dmesg 文件只是开机后的一次快照。

  • 查实时系统事件,优先用 journalctl -u sshd -n 20,不是 tail -f /var/log/secure;后者可能有几秒延迟,且漏掉服务启动前的日志
  • /var/log/messages 在 CentOS/RHEL 7+ 上默认不存在,被 rsyslog 配置为只收 systemd 转发来的部分消息,内容比 journalctl 少得多
  • 审计类操作(如 sudo、用户登录)优先看 /var/log/audit/audit.log,它由内核 auditd 直接写入,绕过 syslog 流程,更难篡改

journalctl 查询慢、卡死?多半是没加过滤或没持久化

journalctl 默认读整个二进制日志库,如果没开持久化、又刚重装过系统,它会从内存里捞数据,速度还行;但一旦启用了 Storage=persistent 且运行了几周,未加约束的 journalctl 就可能卡住——不是 bug,是它真在扫描几百 MB 的索引文件。

  • 永远带时间范围:journalctl --since "2026-02-10" --until "2026-02-11 14:00",避免全量扫描
  • 按服务查比关键词更稳:journalctl -u nginx --priority err 比 journalctl | grep "502" 快一个数量级,且不丢上下文
  • 如果发现 journalctl --disk-usage 显示超 1G,而 SystemMaxUse=500M 已设却无效,检查是否漏写了 sudo systemctl restart systemd-journald

logrotate 配置了却不转?常见于权限、路径、定时器三处断点

logrotate 不是常驻进程,它靠 cron 每天调用一次 /etc/cron.daily/logrotate 触发。这意味着:配置改了不生效,不是语法错,很可能是 cron 没跑、目标文件权限不对、或日志路径和实际不符。

Linux Security Scanner
Linux Security Scanner

Linux 安全审计工具,检查 SSH 配置、开放/监听端口、防火墙规则(ufw/iptables/nftables)、失败登录尝试、sudoers 权限...

下载
  • 手动测试用:logrotate -d /etc/logrotate.d/myapp(-d 表示 dry-run),看输出里是否出现 rotating pattern 和 renaming,没有就说明匹配失败
  • 确保日志文件属主可写,且 logrotate 配置里的 create 644 root root 中的用户对目录有写权限;常见坑是应用以 www-data 写日志,但 create 指定 root,导致新文件创建失败
  • 若日志路径含变量(如 /var/log/app/<code>$(hostname)/access.log),logrotate 不解析 shell 变量,必须写死或用外部脚本生成配置

远程日志转发为什么收不到?rsyslog 的 UDP 与 TLS 不是简单开关

配好 *.* @192.168.1.100:514 却没日志?UDP 默认无确认、易丢包,防火墙、路由、接收端 rsyslog 是否监听 UDP 都得验;想用 TLS 加密,则发送端和接收端证书、模块加载、端口(通常是 6514)、协议版本必须严格对齐。

  • 先确认本地 rsyslog 是否真正加载了模块:rsyslogd -v | grep imudp(UDP)或 rsyslogd -v | grep gtls(TLS)
  • UDP 场景下,在接收端执行:sudo ss -uln | grep :514,没输出说明 rsyslog 没监听,检查 /etc/rsyslog.conf 是否有 module(load="imudp") 和 input(type="imudp" port="514")
  • TLS 转发时,$DefaultNetstreamDriverCAFile 必须指向接收端签发的 CA 证书,且发送端日志规则末尾要加 ;RSYSLOG_ForwardFormat,否则接收端解析失败

日志系统最麻烦的从来不是“怎么配”,而是“哪一层在说话”。journalctl 看到的,rsyslog 不一定转发;rsyslog 转发了,logrotate 可能压根没管那个文件;logrotate 转了,应用自己又开了个新日志句柄继续往旧文件写……链路一长,问题就藏在交接缝里。

热门AI工具

更多
豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

Flowith
Flowith Hot

Flowith是一款基于画布和智能体工作流的 AI 协作工作空间。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

相关专题

更多
nginx 重启
nginx 重启

nginx重启对于网站的运维来说是非常重要的,根据不同的需求,可以选择简单重启、平滑重启或定时重启等方式。本专题为大家提供nginx重启的相关的文章、下载、课程内容,供大家免费下载体验。

423

2023.07.27

nginx 配置详解
nginx 配置详解

Nginx的配置是指设置和调整Nginx服务器的行为和功能的过程。通过配置文件,可以定义虚拟主机、HTTP请求处理、反向代理、缓存和负载均衡等功能。Nginx的配置语法简洁而强大,允许管理员根据自己的需要进行灵活的调整。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

4187

2023.08.04

nginx配置详解
nginx配置详解

NGINX与其他服务类似,因为它具有以特定格式编写的基于文本的配置文件。本专题为大家提供nginx配置相关的文章,大家可以免费学习。

7085

2023.08.04

tomcat和nginx有哪些区别
tomcat和nginx有哪些区别

tomcat和nginx的区别:1、应用领域;2、性能;3、功能;4、配置;5、安全性;6、扩展性;7、部署复杂性;8、社区支持;9、成本;10、日志管理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

601

2024.02.23

nginx报404怎么解决
nginx报404怎么解决

当访问 nginx 网页服务器时遇到 404 错误,表明服务器无法找到请求资源,可以通过以下步骤解决:1. 检查文件是否存在且路径正确;2. 检查文件权限并更改为 644 或 755;3. 检查 nginx 配置,确保根目录设置正确、没有冲突配置等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1516

2024.07.09

Nginx报404错误解决方法
Nginx报404错误解决方法

解决方法:只需要加上这段配置:try_files $uri $uri/ /index.html;即可。想了解更多Nginx的相关内容,可以阅读本专题下面的文章。

3998

2024.08.07

nginx部署php项目教程汇总
nginx部署php项目教程汇总

本专题整合了nginx部署php项目教程汇总,阅读专题下面的文章了解更多详细内容。

122

2026.01.13

nginx配置文件详细教程
nginx配置文件详细教程

本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

577

2026.01.13

Go-Zero API开发使用教程
Go-Zero API开发使用教程

本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。

0

2026.11.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn