Linux 中的系统日志入门Linux 中的系统日志入门Linux 中的系统日志入门Linux 中的系统日志入门
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

Linux 中的系统日志入门

系统日志记录是了解 Linux 系统上执行了哪些活动的最可靠方法。

Linux 中的系统日志可让您深入了解 PC 或服务器基础设施上的核心活动。它们对于保持系统稳定和安全至关重要。系统日志还为您提供了审核过去发生的各种活动的机会。

本指南向您介绍 Linux 中的日志系统。核心系统应用程序和服务执行的所有主要活动都以日志的形式记录,而这一切的核心是一个称为Syslog的系统。

为什么系统日志很重要?

想象一下,您的 Linux PC 最近遇到启动错误,或者您怀疑有人试图登录您的系统。当您的系统以日志形式跟踪此类活动时,可以轻松跟踪这些事件。

在 Linux 中,系统日志是服务、守护程序和系统应用程序执行的核心系统活动的人类可读记录。 Linux 机器上记录的一些重要活动包括用户登录和登录失败、操作系统启动、系统故障等。

Linux 有一个称为 Syslog 的专用服务,专门负责通过系统记录器创建日志。 Syslog 由多个组件组成,例如 Syslog 消息格式、Syslog 协议和 Syslog 守护进程:在较新版本的 Linux 中通常称为 syslogd 或 rsyslogd。

/var/log目录存储了Linux系统上的大部分日志。 /var 目录主要包含变量文件和目录,即必然会经常更改的数据。日志没有标准格式,但日志至少应包含时间戳和所记录活动的详细信息。

列出 syslog 管理的文件

系统上的所有常规日志都存储在基于 Debian 的 Linux 发行版上的 /var/log/syslog 文件中。其他发行版使用 /var/log/messages 文件来存储日志。

注意:不同的 Linux 发行版可能使用不同的文件来记录特定消息。例如,在基于 Debian 的 Linux 发行版上,/var/log/auth.log 文件包含身份验证日志,而 RedHat 系统则使用 /var/log/secure 文件来存储此类日志。

要了解有关负责存储日志的所有文件的更多信息,您可以查看 /etc/rsyslog.d 目录,其中包含重要的 Syslog 配置文件。例如,要列出标准日志文件,您可以查看 /etc/rsyslog.d/50-default.conf 文件。

 cat /etc/rsyslog.d/50-default.conf

该文件显示系统应用程序的名称以及与其关联的相应日志文件。

如何检查日志文件

大多数日志文件都很长。因此,在 Linux 上检查日志文件的最重要命令之一是 less 命令,它在易于导航的部分中输出文件内容。

例如,要查看 /var/log/syslog 文件的内容,请使用 less 命令,如下所示。

 less /var/log/syslog 

使用F键盘键向前滚动,使用B键向后滚动。

syslog 文件包含一些最关键活动的日志,例如系统上的系统错误和服务活动。

如果您只想检查最新的日志,可以使用 tail 命令,默认情况下仅列出最后 10 条日志消息。

 tail /var/log/syslog

您还可以指定要使用 tail 实用程序查看的日志消息的数量。该命令采用以下格式 tail -n file-to-inspect,,其中 n 是您要查看的行数。例如,要查看 syslog 文件中的最后 7 条日志消息,可以使用以下命令。

 tail -7 /var/log/syslog

要实时查看最新日志,可以使用带有 -f 选项的 tail 命令,如下所示。

 tail -f /var/log/syslog

检查日志消息的另一个重要命令是 head 命令。与显示文件中最后一条日志消息的 tail 命令不同,head 命令显示文件中的第一行。默认情况下,该命令将仅输出前 10 行。

head /var/log/syslog

认证日志

如果您想查找有关系统上用户登录的信息,可以查看 /var/log/auth.log 文件。可以在此处找到与用户登录、登录失败以及所使用的身份验证方法相关的信息。

内核日志

当您的 Linux 系统启动时,有关内核环形缓冲区的重要数据会记录在 /var/log/dmesg 文件中。其他有关硬件驱动、内核、启动状态等信息都记录在这个文件中。

您可以使用 dmesg 查看这些日志文件,而不是使用 less 或 cat 命令检查引导日志消息。

 dmesg 

注意:每当系统启动时,/var/log/dmesg 文件中的日志消息都会重置。

与内核问题相关的另一个重要日志文件是/var/log/kern.log。

使用 logger 命令记录消息

除了查看系统应用程序或服务记录的日志消息之外,Linux 中的日志系统还允许您使用 logger 命令手动记录消息。默认情况下,用户可以将消息记录到 /var/log/syslog 文件中。例如,要记录简单的消息,您可以运行以下命令。

 logger hello world!

您现在可以使用 tail 命令查看最近记录的消息。

 tail -3 /var/log/syslog 

您甚至可以使用 logger 命令记录其他命令的输出,方法是将命令括在反勾号 (`) 字符内。

 logger `whoami` 

您还可以在脚本中使用 logger 命令来记录重要事件。使用手册页了解有关 logger 命令及其选项的更多信息。

 man logger 

管理日志文件

您可能已经注意到,Linux 计算机上会记录大量数据。因此,您需要有一个适当的系统来管理日志文件使用的磁盘空间。除此之外,拥有日志系统可确保您轻松找到所需的日志消息。 Linux 解决这个问题的方法是使用 logrotate 实用程序。

使用 logrotate 实用程序配置要保留的日志文件、要保留它们的时间、管理日志的邮件发送以及如何压缩旧的日志文件等。

您可以使用您选择的任何文本编辑器配置 logrotate 实用程序。 logrotate 的配置文件可以在 /etc/logrotate.conf 中找到。

通过日志保持系统的稳健性

Linux 中的系统日志是深入了解系统上发生的主要活动的好方法,这些活动可能影响系统的安全性和整体稳定性。了解如何查看和分析服务器或 PC 上的日志消息对于帮助您保持系统稳健大有帮助。

有时,由于系统资源的可用性较低,用户发现很难在系统上使用某些应用程序。在这种情况下,终止无响应的程序可以释放系统主内存上的空间。

©2015-2025 艾丽卡 support@alaica.com