什么是日志文件

news2024/11/28 22:48:40

文章目录

  • 什么是日志文件
    • Centos 7 日志文件简易说明
      • 日志文件的重要性
      • Linux常见的日志文件文件名
        • /var/log/boot.log
        • /var/log/cron
        • /var/log/dmesg
        • /var/log/lastlog
        • /var/log/maillog或 /var/log/mail/*
        • /var/log/messages
        • /var/log/secure
        • /var/log/wtmp、/var/log/faillog
        • /var/log/httpd/ *、/var/log/samba/ *
      • 日志文件所需相关服务(daemon)与程序
      • Centos 7.x 使用systemd提供的journalctl日志管理
    • 日志文件内容的一般格式

什么是日志文件

【仔细而确实地分析以及备份系统的日志文件】是一个系统管理员应该要进行的任务之一。那么是是日志文件呢?简单来说,就是记录系统活动信息的几个文件,例如:何时、何地(来源 IP)、何人(什么服务名称)、做什么什么操作(信息登录)。

Centos 7 日志文件简易说明

要知道的是,我们的Linux主机在后台有相当多的daemons同时在工作,这些工作中的进程总是会显示一些信息,这些显示的信息最终会被记录到日志文件中。也就是是说,记录这些系统的重要信息就是日志文件的工作。

日志文件的重要性

为什么说日志文件很重要,重要到系统管理员需要随时要注意它?我们可以这么说:

日志文件是记录系统运行过程中发生的事件和错误的文件。系统管理员需要随时注意它,因为通过查询日志文件,可以解决系统错误、网络服务问题以及了解过往事件的记录。比如,如果系统出现问题,管理员可以查询日志文件了解具体原因;如果网络服务无法启动,管理员可以查询特定的日志文件解决问题;而且日志文件还可以记录系统中的重要事件,例如网络攻击等。因此,日志文件对于系统管理员来说,是非常重要的工具。

Linux常见的日志文件文件名

日志文件可以帮助我们了解很多系统重要的事件,包括登录者的部分信息,因此日志文件的权限通常是仅设置为仅有root能够读取而已。而由于日志文件可以记录系统这么多的详细信息,所以,一个有经验的主机管理员会随时地查看自己的日志文件,以随时掌握系统的最新动态。

常见的日志文件有如下几个:

/var/log/boot.log

/var/log/boot.log 是Linux系统在引导时记录的日志文件,它包含了系统启动期间所有的启动信息和错误信息。在系统启动过程中,Linux会执行一系列的启动脚本,包括加载内核、初始化硬件、挂载文件系统、启动服务等。这些启动过程中的信息会被记录到/var/log/boot.log文件中,方便系统管理员在系统启动时分析和解决问题。通常,这个文件会在每次系统启动时被更新。
/var/log/boot.log文件中的信息通常是以时间戳和进程ID(PID)为标识进行记录的,方便系统管理员进行问题定位和分析。在这个文件中,可以找到很多有用的信息,例如硬件检测信息、文件系统挂载信息、网络配置信息、启动服务信息以及错误信息等。通常情况下,这些信息可以帮助系统管理员快速识别系统启动过程中的问题,并加以解决。

/var/log/cron

/var/log/cron日志文件是Linux系统中记录cron作业执行情况的日志文件。cron是一个Linux系统中用于定时执行任务的工具,它可以让用户在指定的时间和频率自动执行一些操作,例如备份数据、执行脚本等。当cron作业执行时,它会将执行结果写入/var/log/cron文件中,方便用户查看作业执行情况以及排查问题。
/var/log/cron日志文件中记录了每个cron作业的执行时间、执行结果以及执行命令等信息。每条记录通常包括以下几个字段:

  1. 时间戳:记录作业执行时间的时间戳。
  2. 主机名:执行作业的主机名。
  3. cron作业执行用户:执行作业的用户。
  4. 执行命令:执行的命令或脚本。
  5. 执行结果:执行命令的结果,包括标准输出和错误输出。
    /var/log/cron日志文件可以帮助系统管理员追踪cron作业的执行情况,当作业无法正常执行或者出现错误时,管理员可以通过查看日志文件来定位问题并进行排查。此外,管理员还可以通过配置logrotate等工具来定期轮换/var/log/cron日志文件,以免日志文件过大影响系统性能。

/var/log/dmesg

/var/log/dmesg是Linux系统中记录内核启动信息的日志文件。在Linux系统引导时,内核会执行一系列的操作,例如检测硬件、加载驱动程序、初始化系统等。在这个过程中,内核会输出一些信息,包括硬件信息、驱动程序信息、系统参数等。这些信息会被记录到/var/log/dmesg文件中,以便管理员进行查看和分析。
/var/log/dmesg文件中的信息通常是内核输出的最新信息,包括一些重要的信息,例如内核版本、CPU信息、内存信息、硬盘信息、设备驱动信息、系统参数等。这些信息对于系统管理员来说是非常有用的,可以帮助管理员快速了解系统的硬件配置和系统参数,以及在系统启动过程中出现的问题。
需要注意的是,/var/log/dmesg文件通常只记录内核启动时的信息。如果需要查看完整的系统日志,应该查看其他日志文件,例如/var/log/messages/var/log/syslog等。同时,/var/log/dmesg文件的大小是有限制的,当文件大小达到一定值时,系统会自动清除旧的记录,以腾出空间记录新的日志信息。

/var/log/lastlog

/var/log/lastlog 日志文件是一个系统日志文件,用于记录用户最后一次登录的相关信息。它记录了每个用户最后一次登录系统的时间、来源IP地址和登录方式等信息。
当一个用户成功登录到系统时,系统会记录该用户的登录信息到 /var/log/lastlog 日志文件中。如果该用户之前从未登录过系统,那么 /var/log/lastlog 文件中将没有该用户的记录。
需要注意的是,/var/log/lastlog 日志文件只能由 root 用户或者有权限的用户才能访问和查看。同时,该文件的格式是二进制格式,无法直接查看。如果需要查看该文件的内容,需要使用特定的工具,如 lastlog 命令。
/var/log/lastlog 日志文件对于系统管理员来说非常有用,可以帮助他们追踪用户的登录历史和行为,进一步保障系统的安全性。

/var/log/maillog或 /var/log/mail/*

/var/log/maillog/var/log/mail/* 日志文件是用于记录邮件系统的日志文件。邮件系统通常包括邮件服务器、邮件代理、邮件客户端等组件,这些组件会在邮件的发送、接收和传递过程中产生大量的日志信息。
/var/log/maillog 文件是一个主要的邮件系统日志文件,它记录了邮件系统的各种操作事件,如邮件的发送、接收、投递、转发、垃圾邮件过滤等等。该文件中的日志信息可以帮助系统管理员了解邮件系统的运行状况、排查邮件系统的故障以及监控邮件的安全性。
/var/log/mail/* 目录包含了一些其他的邮件系统日志文件,如 mail.errmail.infomail.warn 等。这些文件包含了不同级别的邮件系统日志信息,可以根据需要进行查看。例如,mail.err 文件记录了邮件系统的错误信息,而 mail.info 文件记录了一般的信息。
需要注意的是,邮件系统日志文件可能会非常庞大,因此系统管理员需要定期对其进行清理和归档,以避免占用过多的磁盘空间。同时,为了保障邮件系统的安全性,这些日志文件只能由 root 用户或者有权限的用户才能访问和查看。

/var/log/messages

/var/log/messages 日志文件是一个系统日志文件,用于记录系统各个组件的日志信息,如内核、系统服务、应用程序等。它包含了系统的各种操作事件,如启动、关机、用户登录、系统错误等等。
/var/log/messages 文件中的日志信息非常丰富,可以帮助系统管理员了解系统的运行状况和问题。例如,该文件中的错误信息可以帮助管理员快速定位系统故障,而登录信息可以帮助管理员追踪用户的登录历史和行为。
需要注意的是,/var/log/messages 文件是一个非常重要的系统日志文件,因此需要定期备份和归档,以避免日志文件过大导致系统性能下降。同时,为了保障系统的安全性,该文件只能由 root 用户或者有权限的用户才能访问和查看。
除了 /var/log/messages 文件之外,不同的 Linux 发行版还可能有其他的系统日志文件,如 Red Hat 系统中的 /var/log/secure 文件用于记录安全相关的日志信息。系统管理员需要根据实际情况选择查看不同的系统日志文件来了解系统的运行状况。

/var/log/secure

/var/log/secure 日志文件是一个系统日志文件,主要用于记录与系统安全相关的信息,如用户登录、认证、授权、sudo 使用等等。该日志文件包含了系统的安全事件,可以帮助系统管理员了解系统的安全状况和监控系统的安全性。
/var/log/secure 文件通常包含了以下类型的安全事件信息:

  • 用户登录和注销事件,包括登录方式、来源 IP 地址、登录时间等信息;
  • 用户密码认证事件,包括密码认证成功或失败、认证方式、用户名称等信息;
  • sudo 使用事件,包括执行的命令、执行用户、执行时间等信息;
  • PAM 认证事件,包括 PAM 模块名称、认证结果等信息;
  • SELinux 安全事件,包括 SELinux 策略的执行结果等信息。
    需要注意的是,/var/log/secure 文件是一个非常重要的系统日志文件,其中的安全事件信息可以帮助管理员了解系统的安全状况并及时发现潜在的安全威胁。因此,该日志文件只能由 root 用户或者有权限的用户才能访问和查看。

/var/log/wtmp、/var/log/faillog

/var/log/wtmp 日志文件是一个系统日志文件,用于记录系统中所有用户的登录和注销事件。该日志文件包含了用户登录和注销的时间、源 IP 地址、登录方式等信息,可以帮助系统管理员追踪用户的登录历史和行为,以及监控系统的安全状况。
/var/log/wtmp 文件通常包含了以下类型的登录事件信息:

  • 用户登录和注销事件,包括登录方式、来源 IP 地址、登录时间等信息;
  • 远程登录事件,包括 SSH、telnet 等远程登录方式的登录事件信息;
  • 控制台登录事件,包括本地终端登录方式的登录事件信息。
    需要注意的是,/var/log/wtmp 文件是一个非常重要的系统日志文件,其中包含了非常敏感的用户登录信息,因此只能由 root 用户或者有权限的用户才能访问和查看。
    /var/log/faillog 日志文件是一个系统日志文件,用于记录系统中用户登录认证失败的事件。该日志文件包含了用户登录失败的次数、时间、来源 IP 地址等信息,可以帮助系统管理员了解系统的安全状况和监控用户的登录行为。
    /var/log/faillog 文件通常包含了以下类型的登录失败事件信息:
  • 用户密码认证失败事件,包括密码认证失败的次数、时间、来源 IP 地址等信息;
  • PAM 认证失败事件,包括 PAM 模块名称、认证结果等信息;
  • SSH 登录失败事件,包括 SSH 认证失败的次数、时间、来源 IP 地址等信息。
    需要注意的是,/var/log/faillog 文件是一个非常重要的系统日志文件,其中包含了用户的登录认证失败信息,可以帮助管理员发现潜在的安全威胁和密码暴力破解行为。因此,该日志文件只能由 root 用户或者有权限的用户才能访问和查看。

/var/log/httpd/ *、/var/log/samba/ *

/var/log/httpd/* 日志文件是一个系统日志文件,用于记录 Apache HTTP 服务器的访问日志和错误日志信息。该日志文件包含了 HTTP 请求的详细信息、响应代码、来源 IP 地址等信息,可以帮助系统管理员了解服务器的访问情况,以及排查 HTTP 请求的问题和错误。

/var/log/samba/* 日志文件是一个系统日志文件,用于记录 Samba 服务器的访问日志和错误日志信息。该日志文件包含了 Samba 服务器的访问情况、用户登录信息、文件和目录操作信息等,可以帮助管理员了解 Samba 服务器的使用情况和排查访问问题。

日志文件所需相关服务(daemon)与程序

产生日志文件的方式有两种,一种是软件开发商自行定义写入的日志文件,另一种是由Linux发行版提供的日志文件管理服务。Centos提供了rsyslog.service服务来统一管理日志文件。

如果任由日志文件持续记录,将会导致日志文件容量变大,影响大文件读写效率。因此,需要对日志文件进行备份和更新。可以使用logrotate工具来自动化处理日志文件容量和更新的问题。logrotate会将旧的日志文件更改名称并建立一个新的空日志文件,达到轮替的目的。同时,如果旧的记录保存了一段时间没有问题,系统会自动删除旧的日志文件,以免占用过多磁盘空间。

总结一下,针对日志文件所需的功能,我们需要的服务与程序有:

  • systemd-journald.service:最主要的信息记录者,由systemd提供
  • rsyslog.service:主要收集登录系统与网络等服务的信息。
  • logrotate:主要在进行日志文件的轮循功能。

Centos 7.x 使用systemd提供的journalctl日志管理

systemd-journald.servicesystemd 系统日志管理服务。它负责收集、存储和管理系统日志信息,可以将日志信息写入二进制文件或者提供一个日志消息总线,使得其他进程或者用户可以获取和使用这些日志信息。与传统的日志文件不同,systemd-journald.service 采用了二进制日志文件格式,能够提供更高效、更完整的日志记录和查询功能。此外,systemd-journald.service 还可以实时监控系统日志信息,支持日志信息的自动转发、压缩、加密和签名等功能,可以更好地保护系统安全和稳定。通过使用journalctl命令,我们可以很方便地查看系统日志信息,而不必手动打开和搜索传统的日志文件。

日志文件内容的一般格式

一般来说,系统产生的信息并记录下来的内容中,每条信息均会记录下面几个重要内容:

  • 事件发生的日期与时间

  • 发生此事件的主机名

  • 启动此事件的服务名称(如 systemd、cron等)或命令与函数名称(如 su、login…)

  • 该信息的实际内容

    当然这些信息【详细度】是可以修改的,而且这些信息可以作为系统除错之用。我们来拿登录时一定会记录账户信息的 /var/log/secure为例:

    使用cat /var/log/secure

image-20230516164832684

我们拿第一条数据(共两行)来说明,该数据是说:【在5月16日 的14:26分左右,在名为localhost主机登录,由login这个程序产生的信息,内容显示root 在tty1登录了,而相关的权限设置是通过pam_unix模块处理(共两行内容)】后面的信息说明可以自行翻译一下

其实还有很多的信息值得查看,尤其是/var/log/messages的内容。记得常常去【巡视】日志文件的内容。尤其是下面几种情况

  • 当你觉得系统似乎不太正常时
  • 某个daemon老是无法正常启动时
  • 某个用户老是无法登录时
  • 某个daemon执行过程老是不顺畅时

还有很多,反正觉得系统不太正常,就得要查询查询日志文件了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/532967.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Netty实战(二)

第一个Netty程序 一、环境准备二、Netty 客户端/服务器概览三、编写 Echo 服务器3.1 ChannelHandler 和业务逻辑3.2 引导服务器 四、编写 Echo 客户端4.1 通过 ChannelHandler 实现客户端逻辑4.2 引导客户端 五、构建和运行 Echo 服务器和客户端 一、环境准备 Netty需要的运行…

U盘怎么加密?最简单的U盘加密方法

说起U盘,相信每个人都不会感到陌生,它是最常用的移动存储设备。那么,你会加密U盘吗?相信不少人并不知道这个问题的答案。下面小编就来教大家自己动手制作加密U盘。 首先,我们需要提前做好准备工作,一个可以…

04-数组和字符串

概述 同一个数组所有的成员都是相同的数据类型,同时所有的成员在内存中的地址是连续的。 一维数组 全局数组若不初始化,编译器将其初始化为零。局部数组若不初始化,内容为随机值。 int a[10] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };//定义一…

瑞吉外卖 - 员工信息分页查询功能(7)

某马瑞吉外卖单体架构项目完整开发文档,基于 Spring Boot 2.7.11 JDK 11。预计 5 月 20 日前更新完成,有需要的胖友记得一键三连,关注主页 “瑞吉外卖” 专栏获取最新文章。 相关资料:https://pan.baidu.com/s/1rO1Vytcp67mcw-PD…

NodeJs之调试

关于调试 当我们只专注于前端的时候,我们习惯性F12,这会给我们带来安全与舒心的感觉。 但是当我们使用NodeJs来开发后台的时候,我想噩梦来了。 但是也别泰国担心,NodeJs的调试是很不方便!这是肯定的。 但是还好&…

Spring MVC优雅处理业务异常

本文中,我会描述如何在应用程序的不同层次,优雅地处理业务异常。 异常定义 BusinessException基类定义如下,注意异常中携带业务错误码,方便前端处理异常: public class BusinessException extends RuntimeException…

哪些云渲染服务用于多GPU渲染?

众所周知,GPU渲染 可以使用显卡代替CPU进行渲染,可以显着加快渲染速度,因为GPU主要是为快速图像渲染而量身定制的。GPU的诞生是为了应对图形密集型应用程序,这些应用程序会给CPU带来负担并阻碍计算性能。GPU渲染的原理是在多个数据…

信创办公–基于WPS的EXCEL最佳实践系列 (图表)

信创办公–基于WPS的EXCEL最佳实践系列 (图表) 目录 应用背景操作步骤1、创建图表和图形2、添加其他数据序列3、在源数据的行与列之间切换4、添加图例5、调整图表和图形的大小6、修改图表和图形参数7、应用图表布局和样式8、设置图表和图形的位置9、插入…

4面都过了,最后要价10K,HR说我不尊重华为....

在不知道一个公司的普遍薪资水平的时候,很多面试者不敢盲目的开价,但就因为这样可能使得面试官怀疑你的能力。一位网友就在网上诉说了自己的经历,男子是一位测试员,已经有九年的工作经历了,能力自己觉得还不错。 因为…

单片机课设 - 液晶显示屏显示时间(实验板实现)

目录 前言:本代码涉及的主要知识:代码(实验板实现代码): 前言: 设计本代码的主要目的是为了完成期末作业,即在液晶显示屏上显示、时间、日期、温度,以及用按键控制时间、温度的显示。…

Leetcode50. Pow(x, n)

Every day a Leetcode 题目来源&#xff1a;50. Pow(x, n) 解法1&#xff1a;递归 代码&#xff1a; /** lc appleetcode.cn id50 langcpp** [50] Pow(x, n)*/// lc codestart class Solution { public:double myPow(double x, int n){if (n 0)return 1.0;if (n < 0)re…

华为OD机试真题 Java 实现【获取最大软件版本号】【2023Q1 100分】

一、题目描述 Maven版本号定义,<主版本>.<次版本><增量版本>-<里程碑版本> 举例3.1.4-beta 其中,主版本和次版本都是必须的,主版本,次版本,增量版本由多位数字组成,可能包含前导零,里程碑版本由字符串组成。 <主版本>.<次版本>增…

纯代码的3D玫瑰花,有个这个还怕女朋友不开心?

先上效果图&#xff1a; 再上代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><style>import url("https://fonts.googleapis.com/css2?familyNico…

Anicube NFT 作品集

Anicube 是韩国娱乐公司 Cube Entertainment 和区块链公司 Animoca Brands 的合资公司 Anicube Entertainment 推出的 IP 空间。其主题是音乐元宇宙&#xff0c;各种基于 K-pop 的表演和推广活动将在主舞台和音乐家星球上举行。 此外&#xff0c;这个系列的购买者还将获得特别奖…

web自动化测试:selenium怎么实现关键字驱动

要做 ui 自动化测试&#xff0c;使用关键字驱动可以说是必须会的一种测试方式&#xff0c;它既可以在纯代码的自动化程序中运行&#xff0c;也可以在测试平台中使用。 使用纯代码方式时&#xff0c;自动化工程师先写好一个通用的程序&#xff0c;其他手工测试人员只需要把执行…

gitlab的CICD

大体步骤4步 1.购买阿里云服务器centos 7.6 2.在服务器上安装gitlab-ce 3.在服务器上安装gitlab-runner 4.在gitlab创建一个项目&#xff0c;拉到本地修改后再提交&#xff0c;触发自动部署 视频教程 看不懂文章的&#xff0c;可以看这个视频&#xff0c;超详细gitlab-cicd-…

国产信创适配-东方通TongWeb安装,使用记录

之前项目使用的tomcat容器,需适配东方通 tongweb容器,记录下在国产麒麟ky10.aarch64 服务器下安装东方通容器的过程(对于麒麟内核服务器操作起来和centos7大致一样) 东方通容器是商业的,没有免费版本,企业级安装是公司和东方通联系给了lisence 经过实际测试发现,东方通提…

深度学习技巧应用15-自动机器学习Autogluon的应用技巧

大家好,我是微学AI,今天给大家介绍一下深度学习技巧应用15-自动机器学习Autogluon的应用技巧,Autogluon是一个开源的自动化机器学习工具包,Autogluon的开发目标是为机器学习从业者提供一个高效、易用、可扩展的自动化机器学习工具,让机器学习变得更加简单快捷。本文采用儿…

绘制混淆矩阵(MatLab/Python)

本文主要简单介绍如何绘制混淆矩阵 首先混淆矩阵是机器学习中总结分类模型预测结果的情形分析表&#xff0c;以矩阵形式将数据集中的记录按照真实的类别与分类模型预测的类别判断两个标准进行汇总。 其实混淆矩阵就是用来判断我们的算法的分类准确度的一个可视化矩阵 1…

得物AI平台-KubeAI推理训练引擎设计和实践

1.KubeAI介绍 KubeAI是得物AI平台&#xff0c;是我们在容器化过程中&#xff0c;逐步收集和挖掘公司各业务域在AI模型研究和生产迭代过程中的需求&#xff0c;逐步建设而成的一个云原生AI平台。KubeAI以模型为主线提供了从模型开发&#xff0c;到模型训练&#xff0c;再到推理…