Linux文件系统和日志分析

一、inode表结构

  1. inode表

    inode号在同一个设备上是唯一的。

    inode号是有限资源,它的大小和磁盘大小有关。

    访问文件的基本流程

      根据文件夹的文件名和inode号的关系找到对应的inode表,再根据inode表(属主 属组)当中的指针找到磁盘上的真实数据。

二、日志

  内核及系统日志由系统服务 rsyslog 统一管理,根据其主配置文件 /etc/rsyslog.conf

  Linux 操作系统本身和大部分服务器程序的日志文件都默认放在目录/var/log/

  2.1 常见的一些日志文件

日志文件位置日志文件说明
/var/log/messages(内核和公共日志)它是核心系统日志文件,其中包含了系统启动时的引导信息,以及系统运行时的其他状态消息
/var/log/cron(计划任务日志)记录与系统定时任务相关的曰志
/var/log/dmesg(系统引导日志)记录了系统在开机时内核自检的信息,也可以使用dmesg命令直接查看内核自检信息
/var/log/maillog(邮件日志)记录邮件信息的日志
用户日志
/var/log/lastlog记录用户最后一次登陆的信息可以使用lastlog命令查看
/var/log/secure记录验证和授权方面的信息,只要涉及账户和密码的程序都会记录
/var/log/wtmp永久记录所有用户的登陆、注销信息,同时记录系统的启动、重启、关机事件可以使用lastlog命令查看
/var/log/ulmp记录当前已经登陆的用户信息

    日志文件的格式:

      事件产生的时间

      产生时间的服务器的主机名

      产生时间的服务器或程序名

      时间的具体信息

  2.2 内核和公共文件

    日志的基本配置文件在/etc/rsyslog.conf

    信息的重要程度

       在 Linux 内核中,根据日志消息的重要程度不同,将其分为不同 的优先级别(数字等级越小,优先级越高,消息越重要)。

信号日志消息说明
0EMERG(紧急)会导致主机系统不可用的情况
1ALERT(警告)必须马上采取措施解决的问题
2CRIT(严重)比较严重的情况
3ERR(错误)运行出现错误
4WARNING(提醒)可能影响系统功能,需要提醒用户的重要事件
5NOTICE(注意)不会影响正常功能,但是需要注意的事件
6INFO(信息)一般信息
7DEBUG(调试)程序或系统调试信息等

  2.3 用户日志

    在 wtmp、btmp、lastlog 等日志文件中,保存了系统用户登录、退出等相关的事件消息。但是这些文件都是二进制的数据文件,需要使用 who、w、users、last 和 lastb 等用户查询命令来获取日志信息。

  2.3.1 查看当前登录的用户情况

    users

      users 命令只是简单地输出当前登录的用户名称,每个显示的用户名对应一个登录会话。

    who

      who命令用于报告当前登录到系统中的每个用户的信息。

  

    w

       w 命令用于显示当前系统中的每个用户及其所运行的进程信息

  2.3.2 查看用户登录的历史纪录

    last

      last 命令用于查询成功登录到系统的用户记录

  lastb

     lastb 命令用于查询登录失败的用户记录

 

三、实验

  将日志文件全部放在日志文件服务器上

四、系统日志管理

   4.1 rsyslog管理

    自定义日志文件的位置

      该软件要支持rsyslog

  日志等级

五、实验

  将ssh服务的日志单独设置

六、实验

  网络日志(远程日志功能) 

七、日志文件

  /var/log/secure:系统安全日志(用户登录),文本格式,应周期性分析

  /var/log/btmp:当前系统上,用户的失败尝试登录相关的日志信息,二进制格式,lastb命令进行查看

  /var/log/wtmp:当前系统上,用户正常登录系统的相关日志信息,二进制格式,last命令可以查看

  /var/log/lastlog:每一个用户最近一次的登录信息,二进制格式,lastlog命令可以查看

  /var/log/dmesg:CentOS7 之前版本系统引导过程中的日志信息,文本格式,开机后的硬件变化不再记录专用命令dmesg查看,可持续记录硬件变化的情况

  /var/log/boot.log:系统服务启动的相关信息,文本格式

  /var/log/messages:系统中大部分的信息

  /var/log/anaconda:anaconda的日志操作系统安装时安装的软件信息

  7.1 日志管理工具journalctl

    日志的配置文件:/etc/systemd/journald.conf

    journalctl的格式:journalctl [选项...] [匹配项...]

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

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

相关文章

基于STM32和MPU6050的自平衡小车设计与实现

基于STM32和MPU6050的自平衡小车设计和实现是一个有趣而具有挑战性的项目。在本文中,我们将介绍如何利用STM32微控制器和MPU6050传感器实现自平衡小车,并提供相应的代码示例。 1. 硬件设计 自平衡小车的核心硬件包括STM32微控制器、MPU6050传感器以及电…

【Spring 篇】深入浅出:用Spring注解开发的奇妙之旅

在编程的世界里,Spring框架如同一位慈祥的导师,为我们打开了无尽可能性的大门。而在Spring的广袤领域中,注解是我们最亲密的伙伴之一。本篇博客将深入浅出地介绍使用Spring注解进行开发的奇妙之旅,为你解开注解的神秘面纱。 前奏…

【读书笔记】《白帽子讲web安全》跨站脚本攻击

目录 前言: 第二篇 客户端脚本安全 第3章 跨站脚本攻击(XSS) 3.1XSS简介 3.2XSS攻击进阶 3.2.1初探XSS Payload 3.2.2强大的XSS Payload 3.2.2.1 构造GET与POST请求 3.2.2.2XSS钓鱼 3.2.2.3识别用户浏览器 3.2.2.4识别用户安装的软…

Qt 使用WINDOWS API读取SMBIOS信息,并通过CMD命令打印相关信息,参考DumpSMBIOS项目

在获取PE系统中的CPU、主板、内存信息时,发现使用WMI部分信息无法获取,通过gitGub上的DumpSMBIOS完全解决了这个问题,并单独做成了个案例,以下示例和代码都是参考DumpSMBIOS项目 SMBIOS这个数据还是用到的比较少。但是DumpSMBIOS项…

01.初识Python

初识Python Python简介 Python的历史 1989年圣诞节:Guido von Rossum开始写Python语言的编译器。1991年2月:第一个Python编译器(同时也是解释器)诞生,它是用C语言实现的(后面),可…

【代码片段】【C++】C++11线程安全单例模式

项目中最常用的设计模式还属【单例模式】,C11之后可以实现线程安全的单例模式,不用再通过加锁等操作实现线程安全。并且不用使用指针等容易引起异常的危险操作。 记录下此种线程安全单例模式的写法,以后直接拿来用,只需要修改下类…

【科技素养题】少儿编程 蓝桥杯青少组科技素养题真题及解析第22套

少儿编程 蓝桥杯青少组科技素养题真题及解析第22套 1、植物的叶子多为绿色,这主要是因为它们含有 A、绿色色素 B、叶绿素 C、花青素 D、细胞 答案:B 考点分析:主要考查小朋友们生物知识的储备;叶绿素是植物叶子中的一种色素,它可以吸收太阳光中的能量并转化为植物所…

原子操作类原理剖析

UC包提供了一系列的原子性操作类,这些类都是使用非阻塞算法CAS实现的,相比使用锁实现原子性操作这在性能上有很大提高。 由于原子性操作类的原理都大致相同,所以只讲解最简单的AtomicLong类的实现原理以及JDK8中新增的LongAdder和LongAccumu…

师傅带练|大数据人工智能在线实习项目特色

大数据人工智能八大在线实习项目: 某实习网站招聘信息采集与分析 股票价格形态聚类与收益分析 某平台网络入侵用户自动识别 某平台广东省区采购数据分析 产品订单的数据分析与需求预测 基于注意力机制的评论者满意度分析 基于锅炉工况实现…

理论U3 决策树

文章目录 一、决策树算法1、基本思想2、构成1)节点3)有向边/分支 3、分类步骤1)第1步-决策树生成/学习、训练2)第2步-分类/测试 4、算法关键 二、信息论基础1、概念2、信息量3、信息熵: 二、ID3 (Iterative Dichotomis…

[论文阅读]4DRadarSLAM: A 4D Imaging Radar SLAM System for Large-scale Environments

目录 1.摘要和引言: 2. 系统框架: 2.1 前端: 2.2 回环检测: 2.3 后端: 3.实验和分析: 4.结论 1.摘要和引言: 这篇论文介绍了一种名为“4DRadarSLAM”的新型4D成像雷达SLAM系统&#xff0…

若依CRUD搬砖开始,Java小白入门(十)

背景 经过囫囵吞枣的学习若依框架,对于ruoyi-framework,common,安全,代码生成等模块都看了一圈,剩余的调度模块,这个暂时不深入,剩余的是ruoyi-system,就是用mybatis完成的&#xf…

linux usb 驱动之urb

linux 内核中的 USB 代码和所有的 USB 设备通讯使用称为 urb 的东西( USB request block). 这个请求块用 struct urb 结构描述并且可在 include/linux/usb.h 中找到. 一个 urb 用来发送或接受数据到或者从一个特定 USB 设备上的特定的 USB 端点, 以一 种异步的方式. 它用起来非…

063:vue中一维数组与三维数组联动,类似购物车增减

第063个 查看专栏目录: VUE ------ element UI 专栏目标 在vue和element UI联合技术栈的操控下,本专栏提供行之有效的源代码示例和信息点介绍,做到灵活运用。 (1)提供vue2的一些基本操作:安装、引用,模板使用,computed,watch,生命周期(beforeCreate,created,beforeM…

04MyBatis核心配置文件

mybatis-config.xml <?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration><enviro…

服务发现Discovery

对于注册进eureka里面的微服务&#xff0c;可以通过服务发现来获得该服务的信息 1、 修改cloud-provider-payment8001的controller import com.my.springcloud.utils.RestResponse; import com.my.springcloud.entities.Payment; import com.my.springcloud.service.PaymentSe…

【深入学习Java虚拟机】

1.类的加载&#xff0c;连接&#xff08;验证、准备、解析&#xff09;与初始化。 类的加载指的是将类的 .class 文件中的耳机子数据读入到内存中&#xff0c;将其放在运行时数据去的方法区内&#xff0c;然后再兑取创建一个java.lang.Class 对象&#xff0c;用来封装类在方法…

K8S API访问控制之RBAC利用

前言 K8S对于API的访问安全提供了访问控制&#xff0c;主要为4个阶段&#xff0c;本文为第二个阶段——鉴权的RBAC。RBAC是基于角色的访问控制&#xff0c;使用kubeadm安装集群1.6版本以上的都默认开启了RBAC。本文主要研究集群可能存在的利用点及相对应的利用手法。 API访问…

【JAVA】final、finally、finalize 有什么区别?

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a; JAVA ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言 正文 final&#xff1a; finally&#xff1a; finalize&#xff1a; 结语 我的其他博客 前言 在Java中&#xff0c;final、f…

【网络工程师】三层交换机与HSRP

一、三层交换机 1、三层交换机 三层路由器 二层交换机 2、三层路由引擎是可以关闭或开启的 conf t ip routing 开启三层路由功能 no ip routing 关闭 3、三层交换机的优点 与单臂路由相比&#xff1a; 1&#xff09;解决了网络瓶颈的问题 2&#xff09;解决了单点故障&a…