Linux日志管理学习笔记
文章目录前言一、先搞懂Linux日志到底是什么1.1 日志的核心作用1.2 日志都存在哪二、核心日志服务rsyslogd2.1 工作原理2.2 两个核心概念日志类型 日志级别1日志类型Facility日志是哪来的2日志级别Priority日志有多重要2.3 配置文件格式三、实操自定义一个日志文件步骤1修改rsyslog主配置文件步骤2创建日志文件可选步骤3重启服务让配置生效步骤4验证效果四、日志轮替logrotate防止日志把磁盘撑爆4.1 主配置文件4.2 自定义轮替规则步骤1新建轮替配置文件步骤2手动测试轮替效果4.3 轮替是怎么自动执行的五、内存日志journalctl开机失败也能查常用命令六、排障常用技巧查看命令1. 实时监控日志2. 过滤关键字查日志3. 常见问题查哪个日志总结前言日志是Linux系统的「黑匣子」排障、审计、调优全靠它也是运维方向面试的高频考点。提示以下是本篇文章正文内容下面案例可供参考一、先搞懂Linux日志到底是什么1.1 日志的核心作用日志是系统用来记录所有重要事件的文件小到用户登录、命令执行大到服务崩溃、内核报错都会被日志记录下来。核心用处有三个排障定位服务启动失败、系统异常重启翻日志基本能找到根因安全审计谁尝试登录失败、有没有人修改关键文件都能查到痕迹性能分析通过系统日志分析资源占用、服务运行状态1.2 日志都存在哪Linux绝大多数日志默认存放在/var/log目录下不同类型的日志分门别类放在对应文件里。下面是最常用的核心日志文件必须记牢日志文件作用查看方式/var/log/secure安全认证日志用户登录、权限验证相关SSH登录成败全在这cat / tail / grep/var/log/messages系统通用日志绝大多数系统事件都存在这排障万金油cat / tail / grep/var/log/cron定时任务日志crontab任务的执行状态全看它cat / tail / grep/var/log/boot.log系统启动日志开机过程的服务加载、启动状态cat / tail / grep/var/log/dmesg内核自检日志硬件、内核相关信息开机自动生成dmesg命令/var/log/maillog邮件服务日志cat / tail / grep/var/log/lastlog所有用户最后一次登录记录二进制文件lastlog命令/var/log/wtmp永久记录用户登录注销、系统启停二进制文件last命令/var/log/btmp记录登录失败的记录二进制文件lastb命令踩坑提醒lastlog、wtmp、btmp都是二进制文件别用vim/cat硬打开会出现乱码必须用对应的专用命令查看。二、核心日志服务rsyslogdCentOS 7之后系统默认的日志服务从syslogd升级为rsyslogd功能更强、性能更高并且完全兼容旧版的配置规则。2.1 工作原理rsyslogd就像一个「日志分发员」它按照配置文件/etc/rsyslog.conf里的规则把不同来源、不同严重程度的日志分发到不同的日志文件中。比如SSH登录的认证信息rsyslogd收到后匹配到认证类规则就会自动写入/var/log/secure文件。2.2 两个核心概念日志类型 日志级别配置文件里最核心的格式是类型.级别这也是最容易记混的地方拆分开就很好理解。1日志类型Facility日志是哪来的标记日志由哪个模块产生常见类型如下类型说明auth/authpriv认证授权相关authpriv更偏向隐私认证如SSH登录cron定时任务相关kern内核产生的日志mail邮件服务lpr打印相关user用户程序产生的日志local0~local78个自定义日志类型留给用户自行使用2日志级别Priority日志有多重要按照严重程度从低到高排序级别越高记录的信息越少、事件越严重。级别说明debug调试信息记录最详细开发排错用info普通运行信息日常记录最常用notice提醒信息正常但需要关注warning/warn警告可能有异常但不影响服务运行err/error错误服务功能出现异常crit严重错误已经影响系统正常运行alert紧急需要立即处理emerg致命内核崩溃级别的错误none不记录任何日志记忆小技巧配置中写mail.info的意思是「mail类型中级别info的日志全部记录」不是只记录info级别2.3 配置文件格式/etc/rsyslog.conf中每一行规则的标准格式日志类型.日志级别 日志文件路径举几个系统原生的配置例子一看就懂# 所有info及以上级别日志存入messages邮件、认证、定时任务除外它们有单独文件*.info;mail.none;authpriv.none;cron.none /var/log/messages# 所有认证相关日志全部存入secureauthpriv.* /var/log/secure# 定时任务日志单独存放cron.* /var/log/cron每条日志的标准输出格式为事件时间 主机名 服务/程序名 事件详情例如Sep 9 17:25:33 xq100 sshd[1682]: Accepted password for root from 192.168.10.1 port 49929 ssh2三、实操自定义一个日志文件光看不练假把式我们动手实现把sshd服务的日志单独存到/var/log/my_ssh.log中。步骤1修改rsyslog主配置文件vim/etc/rsyslog.conf在文件末尾添加一行规则# 自定义SSH认证日志单独存放authpriv.* /var/log/my_ssh.log步骤2创建日志文件可选不手动创建的话rsyslogd写入时也会自动生成touch/var/log/my_ssh.log步骤3重启服务让配置生效systemctl restart rsyslog步骤4验证效果重新用终端登录一次服务器然后查看日志cat/var/log/my_ssh.log|grepsshd如果能看到登录记录就说明配置成功了。踩坑提醒配置语法错误会导致rsyslog服务启动失败可以用systemctl status rsyslog查看状态排查问题。四、日志轮替logrotate防止日志把磁盘撑爆日志会越写越大如果放任不管迟早占满磁盘。Linux用logrotate实现日志轮替定期切割旧日志、压缩归档、自动删除过期日志实现生命周期循环管理。4.1 主配置文件全局默认配置在/etc/logrotate.conf几个核心参数参数作用weekly默认每周轮替一次rotate 4保留4份旧日志超过数量自动删除create轮替后自动创建新的空日志文件dateext旧日志用日期作为后缀如secure-20220909compress轮替时压缩旧日志默认注释需要可手动开启include /etc/logrotate.d加载该目录下所有自定义轮替规则补充如果没有dateext参数旧日志会用数字递增命名secure.1、secure.2… 最新的日志永远叫原名。4.2 自定义轮替规则系统中各个服务的轮替规则都放在/etc/logrotate.d/目录下比如yum、bootlog都有独立的规则文件。我们也给刚才的my_ssh.log写一套轮替策略。需求每天轮替一次保留7天日志空日志不轮替自动压缩旧文件。步骤1新建轮替配置文件vim/etc/logrotate.d/my_ssh写入以下配置/var/log/my_ssh.log{missingok# 日志文件不存在也不报错daily# 每天轮替一次rotate7# 保留7份旧日志compress# 压缩旧日志notifempty# 空文件不执行轮替copytruncate# 先复制再清空原文件不影响服务持续写日志}步骤2手动测试轮替效果logrotate-f/etc/logrotate.d/my_ssh执行后查看/var/log目录会生成压缩后的旧日志文件。4.3 轮替是怎么自动执行的logrotate本身不会定时运行它依赖系统的crontab每日定时任务触发。在/etc/cron.daily/目录下有一个logrotate可执行文件系统每天会自动执行一次触发所有日志轮替规则。五、内存日志journalctl开机失败也能查除了写入磁盘的日志Linux还有一部分日志存在内存中由systemd的journald服务管理特点非常鲜明系统重启后自动清空因为存储在内存系统启动过程中、rsyslog还未启动时的日志也能记录专门用来排查系统启动失败、服务起不来的问题常用命令# 查看所有内存日志journalctl# 查看最新的3条日志journalctl-n3# 查看指定时间段的日志journalctl--since15:00--until15:30journalctl--since2022-09-09--until2022-09-10# 只查看错误级别的日志journalctl-perr# 详细格式输出展示更多字段journalctl-overbose实用场景系统开不了机进入单用户模式后先用journalctl查启动报错快速定位是哪个服务崩溃。六、排障常用技巧查看命令最后整理几个日常学习和排障最高频的日志使用姿势亲测好用。1. 实时监控日志# 实时刷新secure日志监控登录情况tail-f/var/log/secure2. 过滤关键字查日志# 查找所有登录失败的记录grepFailed password/var/log/secure# 查看指定日期的定时任务执行情况grepSep 9/var/log/cron3. 常见问题查哪个日志问题场景优先查看的日志SSH登录失败、权限异常/var/log/secure定时任务没执行、执行报错/var/log/cron系统启动失败、服务无法启动/var/log/boot.logjournalctl硬件异常、内核报错/var/log/dmesg不知道啥问题先看通用日志/var/log/messages总结一开始学日志管理总觉得又杂又乱又是类型又是级别还有一堆配置文件。真正动手配置一遍、用日志排一次错就会发现逻辑非常清晰rsyslog负责「收日志、分日志」按类型和级别分发到不同文件logrotate负责「管日志生命周期」定时切割删除防止占满磁盘journalctl负责「内存临时日志」解决系统启动阶段的排障问题Linux章节也进入到了尾声感谢各位的支持我们下期见~

相关新闻

Path of Building PoE2:流放之路2角色构建的免费离线规划器终极指南

Path of Building PoE2:流放之路2角色构建的免费离线规划器终极指南

Path of Building PoE2:流放之路2角色构建的免费离线规划器终极指南 【免费下载链接】PathOfBuilding-PoE2 项目地址: https://gitcode.com/GitHub_Trending/pa/PathOfBuilding-PoE2 还在为《流放之路2》复杂的角色构建系统感到困惑吗?每次调整天…

2026/9/27 16:51:22 阅读更多 →
如何用终极跨平台串口调试工具提升硬件开发效率:SerialPortAssistant完全指南

如何用终极跨平台串口调试工具提升硬件开发效率:SerialPortAssistant完全指南

如何用终极跨平台串口调试工具提升硬件开发效率:SerialPortAssistant完全指南 【免费下载链接】SerialPortAssistant This project is a cross-platform serial port assistant. It can run on WINDOWS, linux、android、macos system. 项目地址: https://gitcod…

2026/9/25 22:26:56 阅读更多 →
Viskell进阶技巧:解决视觉编程扩展性难题的10个实用方法

Viskell进阶技巧:解决视觉编程扩展性难题的10个实用方法

Viskell进阶技巧:解决视觉编程扩展性难题的10个实用方法 【免费下载链接】viskell Visual programming meets Haskell 项目地址: https://gitcode.com/gh_mirrors/vi/viskell Viskell作为一款将Haskell的函数式编程与视觉化界面结合的创新工具,为…

2026/9/30 21:03:11 阅读更多 →

最新新闻

TerraScan点云处理实战:参数原理与LiDAR测绘精度控制

TerraScan点云处理实战:参数原理与LiDAR测绘精度控制

简介:本资源是一份面向测绘、遥感、地理信息系统(GIS)及三维建模领域从业者与高校相关专业师生的技术参考文献,系统讲解基于TerraScan软件的LiDAR点云数据处理全流程。内容涵盖LiDAR技术原理与发展现状、TerraScan核心功能&#x…

2026/10/2 22:51:07 阅读更多 →
HGRV轨迹预测:贝叶斯粒子滤波建模与Python实现

HGRV轨迹预测:贝叶斯粒子滤波建模与Python实现

简介:这是一份关于高超声速滑翔飞行器(HGRV)轨迹预测的完整复现资料,面向具备一定编程和数学基础、对贝叶斯推断与粒子滤波感兴趣的科研人员和工程师。资源以docx文档形式整理了论文复现思路与详细代码解释,覆盖意图代…

2026/10/2 22:51:07 阅读更多 →
LabVIEW数据存储指南:TDMS文件读写方案与性能优化

LabVIEW数据存储指南:TDMS文件读写方案与性能优化

先说结论:这套存储读写方案我在实验室里用了快四年,从单通道几十Hz的慢速采集,到八通道连续一周的疲劳试验,再到偶尔要回放分析的老数据,基本都覆盖到了。如果你正在用LabVIEW做数据采集、信号处理或者设备状态记录&am…

2026/10/2 22:51:07 阅读更多 →
URLLC短码长通信:突破香农极限的实时可靠传输

URLLC短码长通信:突破香农极限的实时可靠传输

1. 什么是URLLC场景下的短码长 regime?——从工厂产线到远程手术的真实需求倒逼出来的通信范式你有没有想过,为什么5G宣传里总说“一毫秒时延”,但实际用手机打视频电话,卡顿还是时有发生?问题不在基站功率&#xff0c…

2026/10/2 22:51:07 阅读更多 →
AI写作合规指南:守住作者性的技术边界

AI写作合规指南:守住作者性的技术边界

1. 事件本质与行业震动:一场关于“作者性”的边界测试 “Author Dropped from Literary Prize over AI Allegations”——这行标题不是一则娱乐八卦,而是一记敲在当代文学创作神经末梢上的重锤。它背后没有算法黑箱的神秘感,也没有技术厂商的…

2026/10/2 22:51:07 阅读更多 →
蛋白质功能位点识别平台构建:从数据到部署的机器学习全流程

蛋白质功能位点识别平台构建:从数据到部署的机器学习全流程

简介:这份PDF文献面向生物信息学、蛋白质功能研究方向的初学者与科研人员,系统讲解如何用支持向量机(SVM)构建蛋白质功能位点识别的通用机器学习平台。内容涵盖非同源序列提取、序列特征编码(基本信息、物化特征、结构…

2026/10/2 22:50:06 阅读更多 →

日新闻

从零搭建AI工程化:模型之外的完整闭环

从零搭建AI工程化:模型之外的完整闭环

先搞清楚一件事:从零开始做 AI 工程化,难的从来不是调模型、写提示词,而是把一套原型 Demo 变成长得像是“正经系统”的东西。你手里可能已经有了能跑通的代码,也可能刚读完一些概念,但真到了要把它变成可维护、可观测…

2026/10/2 0:00:20 阅读更多 →
大模型训练显存估计与混合精度训练实战指南

大模型训练显存估计与混合精度训练实战指南

1. 大模型训练显存估计与混合精度训练详解显存不够用,几乎是每个做大模型训练的人都会撞上的第一堵墙。你可能也经历过:模型代码写完了,数据管道跑通了,满心欢喜地按下训练启动脚本,结果几秒钟后终端弹出一行红字——C…

2026/10/2 0:00:20 阅读更多 →
小样本学习数据集选型指南:27个真正可用的高质量数据集

小样本学习数据集选型指南:27个真正可用的高质量数据集

1. 小样本学习的“弹药库”:为什么你总在找数据集,却总找不到真正能用的? 小样本、数据集——这两个词最近半年在我处理的200多个AI项目咨询里,出现频率排进前三。不是模型调不好,不是代码写不对,而是卡在…

2026/10/2 0:00:20 阅读更多 →

周新闻

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio Sp…

2026/10/1 19:40:48 阅读更多 →
SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南 模板网站太丑不够用?别急着加滤镜,那是治标不治本。很多老板盯着后台流量掉得眼红,却还在纠结首页Banner的圆角是不是3像素。这就像穿着西装去挖土,姿势不对,努力白费。我整理这份 速查手册…

2026/10/1 19:41:40 阅读更多 →
FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏

FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏

FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏 【免费下载链接】FireRed-OpenStoryline FireRed-OpenStoryline is an AI video editing agent that transforms manual editing into intention-driven directing through natural language …

2026/10/1 20:05:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/2 10:36:31 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/2 5:26:06 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/2 6:09:11 阅读更多 →