Linux中inode号与日志分析

一.inode号

1.inode表结构

元信息:每个文件的属性信息,比如:文件的大小,时间,类型,权限等,称为文件的元数据(meta data 元信息 )

元数据是存放在inode(index node)表中。inode 表中有很多条记录组成,第一条记录对应的存放了一个文件的元数据信息。

每一个inode表记录对应的保存了以下信息:

  • inode number 节点号

  • 文件类型

  • 权限

  • UID

  • GID

  • 链接数(指向这个文件名路径名称个数)

  • 该文件的大小和不同的时间戳

  • 指向磁盘上文件的数据块指针

  • 有关文件的其他数据

inode  是有限资源,如果消耗完毕,无法继续新建文件     解决方法:删除空文件,无用的文件

inode  号在同一设备中是唯一的

在不同设备中inode号是可以相同的

2.如何查看inode号
ls -i
stat
atime:访问文件时间,需要打开文件时间才会变化
mtime:最近更改时间,文件内容发生改变,时间才会变化
ctime:最近改动时间,文件的元信息发生改变,时间才会改动  属主 属组 大小

1.文件是存储在硬盘上的,硬盘的最小存储单位叫做“扇区”(sector),每个扇区存储512字节。

2.一般连续八个扇区组成一个"块”(block),一个块是4K大小,是文件存取的最小单位。操作系统读取硬盘的时候,是一次性连续读取多个扇区,即一个块一个块的读取的。4k一读,8个扇区一读

3.文件数据包括实际数据与元信息(类似文件属性)。文件数据存储在“块"中,存储文件元信息(比如文件的创建者、创建日期、文件大小、文件权限等)的区域就叫做inode表。 因此,一个文件必须占用一个inode,并且至少占用一个block。du 显示

4.inode不包含文件名。文件名是存放在目录文件夹当中的。Linux 系统中一切皆文件,因此目录也是一种文件。

5.每个inode都有一个号码,操作系统用inode号码来识别不同的文件。Linux系统内部不使用文件名,而使用inode号码来识别文件。对于系统来说,文件名只是inode号码便于识别的别称,文件名和inode号码是一一对应关系,每个inode号码对应一个或多个文件名。

唯一 同一文件系统() 不同的文件

6.所以,当用户在Linux系统中试图访问一个文件时,系统会先根据文件名去查找它对应的inode号码:通过inode号码,获取inode信息;根据inode信息,看该用户是否具有访问这个文件的权限;如果有,就指向相对应的数据block,并读取数据。

硬盘上最小的存储单位为扇区(512字节)

文件存储的最小单位为块8个扇区组成为4k

目录文件的结构非常简单,就是一系列目录项(dirent)的列表。每个目录项,由两部分组成:所包含文件的文件名,以及该文件名对应的inode号码。

3.inode 的大小

inode 消耗磁盘空间

1.每个inode的大小

2.一般是128字节或256字节

格式化文件系统时确定inode的总数

使用df -i 命令可以查看每个硬盘分区的inode总数和已经使用的数量

示例:

4.inode的特殊作用

由于inode号码与文件名分离,导致一些Unix/Linux系统具有一下的现象

(1)当文件名包含特殊字符,可能无法正常删除文件,直接删除inode ,也可以删除文件

(2)移动或重命名文件时,只改变文件名,不影响inode号码

(3)打开一个文件后,系统通过inode号码来识别该文件,不再考虑文件名

二.日志

1.日志的介绍

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

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

2.日志的功能

(1)用于记录系统,程序运行中发生的各种事件

(2)通过阅读日志,有助于诊断和解决系统故障

3.常见的一些日志文件
日志文件位置日志文件说明
/var/log/messages内核和公共日志它是核心系统日志文件,其中包含了系统启动时的引导信息,以及系统运行时的其他状态消息。I/O 错误、网络错误和其他系统错误都会记录到此文件中。其他信息,比如某个人的身份切换为 root,已及用户自定义安装软件的日志,也会在这里列出。
/var/log/cron 计划任务日志记录与系统定时任务相关的曰志
/var/log/dmesg 系统引导日志记录了系统在开机时内核自检的信息,也可以使用dmesg命令直接查看内核自检信息
/var/log/maillog 邮件日志记录邮件信息的曰志
用户日志
/var/log/lastlog记录系统中所有用户最后一次的登录时间的曰志。这个文件也是二进制文件.不能直接用Vi 查看。而要使用lastlog命令查看
/var/log/secure记录验证和授权方面的倍息,只要涉及账户和密码的程序都会记录,比如系统的登录、ssh的登录、su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中
/var/log/wtmp永久记录所有用户的登陆、注销信息,同时记录系统的启动、重启、关机事件。同样,这个文件也是二进制文件.不能直接用Vi查看,而要使用last命令查看
/var/tun/ulmp记录当前已经登录的用户的信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息。同样,这个文件不能直接用Vi查看,而要使用w、who、users等命令查看

日志                   作用                         命令

btmp         查看登录失败的用户         lastb  

lastlog       查看最后一次登录情况     lastlog

wtmp         用户成功登录的日志         last

日志文件的格式包含以下 4 列:

  • 事件产生的时间。

  • 产生事件的服务器的主机名。

  • 产生事件的服务名或程序名。

  • 事件的具体信息。

4.日志的级别

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

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

系统安全日志

文件位置:/var/log/secure

文件格式:文本文件

示例:登录失败的信息

远程登录192.168.240.11

使用 lastb 命令查询 登录失败的日志

6.rsyslog配置文件

/etc/rsyslog.conf配置文件格式由三部分组成

(1)MODULES:相关模块配置

(2)GLOBAL  DIRECTIVES:全局配置

(3)RULES:日志记录相关的规划配置

RULES配置格式:

facility.priority;
#分类     日志的级别*:所有级别
none:没有级别,即不记录
PRIORITY:指定级别(含以上的所有级别)
=PRIORITY:仅记录指定级别的日志信息文件路径:通常在/var/log/,文件路径前的 “-”表示异步写入
异步写入:内存中记录一段时间后再存入磁盘用户:将日志事件通知给指定用户,* 表示所有用户
日志服务器:@host,把日志送往至指定的远程UDP日志服务器  @@host 将日志发送到远程TCP日志服务器
管道:|  COMMAND,转发给其他命令处理
7.实验

1.生成独立的日志文件

ssh是远程登陆的程序,软件默认的日志在 /var/log/secure ,利用rsyslog程序给ssh生成独立的日志文件,ssh配置文件/etc/ssh/sshd_config

(1)进入ssh配置文件和rsyslog配置文件并进行修改

(2)重新启动修改过的程序,并使用另一台机器远程连接

(3)使用tail  -f  命令实时查看可以看到zxy12远程登录的信息

2.搭建日志服务器

(1)进入到rsyslog 配置文件修改

(2)在messages增加一条,路径为c7-12的ip地址

(3)将程序重新启动,实时查看/var/log/messages 并模拟生成日志文件

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

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

相关文章

Spring Kafka—— KafkaListenerEndpointRegistry 隐式注册分析

由于我想在项目中实现基于 Spring kafka 动态连接 Kafka 服务,指定监听 Topic 并控制消费程序的启动和停止这样一个功能,所以就大概的了解了一下 Spring Kafka 的几个重要的类的概念,内容如下: ConsumerFactory 作用:…

Opencv_2_ 图像色彩空间转换

ColorInvert.h 内容如下&#xff1a; #pragma once #include <opencv.hpp> using namespace std; #include <opencv.hpp> using namespace cv; using namespace std; class ColorInvert{ public : void colorSpaceInvert(Mat&image); }; ColorInvert.cpp…

使用了Python语言和Flask框架。创建一个区块链网络,允许用户通过HTTP请求进行交互,如包括创建区块链、挖矿、验证区块链等功能。

目录 大概来说&#xff1a; 二、代码注释 1.添加交易方法&#xff08;add_transaction函数&#xff09; 2.添加新的节点&#xff08;add_node 函数&#xff09; 3、替换链的方法&#xff08;replace_chain函数&#xff09; 总结 大概来说&#xff1a; 定义了一个名为Blo…

1、初识Linux系统 shell 脚本

shell脚本组成介绍 1、shell脚本命名规则 必须以.sh文件结尾&#xff0c;类似.txt文件&#xff1b;例如创建一个test.sh文件 2、linux系统中shell脚本开头&#xff0c;必须以如下代码开头 test.sh内容如下&#xff1a; #!/bin/bash# 这是一个注释echo "Hello, World!&…

西安地区调频广播频率一览

FM89.6 陕西人民广播电台经济广播 FM91.6 陕西人民广播电台交通广播 FM93.1 西安人民广播电台音乐广播 FM95.5 中央人民广播电台音乐之声 FM96.4 中央人民广播电台中国之声 FM98.8 陕西人民广播电台音乐广播 FM101.1 陕西人民广播电台戏曲广播 FM101.8 陕西人民广播电台…

高效过滤器检漏方法选择指南及关键注意事项一览

在生物制药企业中&#xff0c;高效过滤器&#xff08;HEPA&#xff09;的检漏工作是确保洁净室能够达到并保持设计的洁净级别的关键步骤。这关系到产品的质量和安全&#xff0c;因此必须遵循相关法规标准和操作流程。 关于北京中邦兴业 北京中邦兴业科技有限公司是一家国家高新…

element中file-upload组件的提示‘按delete键可删除’,怎么去掉?

问题描述 element中file-upload组件会出现这种提示‘按delete键可删除’ 解决方案&#xff1a; 这是因为使用file-upload组件时自带的提示会盖住上传的文件名&#xff0c;修改一下自带的样式即可 ::v-deep .el-upload-list__item.is-success.focusing .el-icon-close-tip {d…

2.微服务技术

微服务技术对比 DubboSpringCloudSpringCloudAlibaba注册中心zookeeper&#xff0c;RedisEureka,ConsulNacos,Eureka服务远程调用Dubbo协议Feign(http协议)Dubbo,Feign配置中心SpringCloudConfigSpringCloudConfig,Nacos服务网关SpringCloudGateway,ZuulSpringCloudGateway,Zu…

css 设置div阴影样式

文章目录 问题描述解决方案代码示例设置阴影样式 问题描述 大家好&#xff01;我是夏小花&#xff0c;今天是2024年4月23日|农历三月十五&#xff0c;今天这篇文章主要以div或者是view添加阴影样式为主题 &#xff0c;详细代码如下 解决方案 这段是vue页面中的 代码&#xff0…

基于SpringBoot的宠物领养网站管理系统

基于SpringBootVue的宠物领养网站管理系统的设计与实现~ 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringBootMyBatis工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 主页 宠物领养 宠物救助站 宠物论坛 登录界面 管理员界面 摘要 基于Spr…

1.C++入门

目录 1.C关键字 2.命名空间 作用域方面的优化 a.命名空间定义 b.命名空间使用 3.C 输入&输出 1.C关键字 C有63个关键字&#xff0c;C语言有32个关键字&#xff0c;存在重叠如荧光笔标出 2.命名空间 作用域方面的优化 如果变量&#xff0c;函数和类的名称都存在于全…

vue-router学习4:嵌套路由

一些应用程序的 UI 由多层嵌套的组件组成。在这种情况下&#xff0c;URL 的片段通常对应于特定的嵌套组件结构。 定义子路由组件 首先&#xff0c;你需要为嵌套路由创建对应的子组件。这些组件将在父路由组件的 <router-view></router-view> 中被渲染。 <!-…

AI自动生成PPT文档 aippt的API介绍文档

官方链接直达&#xff01; 产品介绍​ 能力介绍​ AiPPT 是一款智能生成演示幻灯片的在线工具。专业设计团队打造海量模板资源&#xff0c;输入标题即可轻松生成完整的PPT。同时 AiPPT 支持导入多格式文档一键生成 PPT&#xff0c;让 PPT 创作更加高效。聚焦于内容&#xff0…

安装zabbix server

目录 1、实验环境 2、yum 安装zabbix server 2.1 解决权限问题和放行流量 2.2 安装zabbix-server 1、实验环境 操作系统rhel8zabbix6.0TLS数据库mysql8.0.30IP地址192.168.81.131时间配置NTP时间服务器同步 2、yum 安装zabbix server 如果通过yum源安装&#xff0c;操作系…

SysetmUI开机是否显示Keyguard的流程

KeyguardViewMediator的onSystemReady方法 没有启用keyguard时KeyguardViewMediator的log&#xff1a; onSystemReady 方法 doKeyguardLocked LockPatternUtils.isLockScreenDisabled 来判断是否启用 public final static String DISABLE_LOCKSCREEN_KEY "lockscreen.…

深度学习——Transformer的理解整理

一、答主1 机器翻译 transformer刚被提出的时候就是被用于处理机器翻译的。在transformer架构中的不同位置Q&#xff0c;K&#xff0c;V指代的变量是不一样的。 假设现在处理的是英文->德文的翻译任务。 在encoder的输入端&#xff0c;这里执行的是self-attention&#x…

说说redis的集群的原理吧

为什么redis集群这么牛&#xff1f;为什么其拥有那么多的优点了&#xff1f;为什么大厂用的都是redis集群&#xff1f; 因为其 1.高可用 2.高性能 3.数据容错性 4.数据持久化 5.线性扩展 6.客户端重定向 为什么有以上这么多优势了&#xff1f; 其实跟redis集群背后的原理有关&a…

信息化工作人员必备常识4——ping命令详解【不间断发包自定义发包的大小自定义发包次数】

信息化工作人员必备常识4——ping命令详解【不间断发包&自定义发包的大小&自定义发包次数】 前言回顾pingtelnetnslookup命令 ping 命令详解帮助手册不间断向目标 IP 发送数据包 -t定义发送数据包的大小 -l-t&-l 验证网络承载能力自定义发送数据包的次数统计响应时…

[BT]BUUCTF刷题第20天(4.22)

第20天 Web [GWCTF 2019]我有一个数据库 打开网站发现乱码信息&#xff08;查看其他题解发现显示的是&#xff1a;我有一个数据库&#xff0c;但里面什么也没有~ 不信你找&#xff09; 但也不是明显信息&#xff0c;通过dirsearch扫描得到robots.txt&#xff0c;然后在里面得…

51单片机数字温度报警器_DS18B20可调上下限(仿真+程序+原理图)

数字温度报警器 1 **主要功能&#xff1a;*****\*资料下载链接&#xff08;可点击&#xff09;&#xff1a;\**** 2 **仿真图&#xff1a;**3 **原理图&#xff1a;**4 **设计报告&#xff1a;**5 **程序设计&#xff1a;**主函数外部中断函数DS18B20驱动 6 讲解视频7 **资料清…