深入理解Linux文件系统与日志文件,快来看!

一、inode与block

1.1 inode和block概述

■ 文件数据包括原信息与实际数据
■ 文件存储在硬盘上,硬盘最小存储单位是“扇区”,每个扇区存储512字节

■ block(块)

  • 连续的八个扇区组成一个block
  • 是文件存取的最小单位

■ inode(索引节点)

  • 中文译名为“索引节点”,也叫i节点
  • 用于存储文件元信息

1.2 inode的内容 1-1

■ inode包含文件的元信息

  • 文件的字节数
  • 文件拥有者的User ID(不包含文件名)
  • 文件的Group ID
  • 文件的读、写、执行权限
  • 文件的时间戳

■ 用stata命令可以查看某个文件的inode信息

  • 示例:stat aa.txt‘’

1.3 inode的内容 1-2

■ Linux系统文件三个主要的时间属性

  • ctime(change time)
    • 最后一次改变文件或目录(属性)的时间
  • atime(access time)
    • 最后一次访问文件或目录的时间
  • mtime(modif time)
    • 最后一次修改文件或目录(内容)的时间

1.4 inode的内容 1-3

■ 目录文件的结构

  • 目录也是一种文件
  • 目录文件的结构
文件名1inode号码1
文件名2inode号码1

每一行称为一个目录项
■ 每个inode都有一个号码,操作系统用inode号码来识别不同的文件
■ Linux系统内部不使用文件名,而使用inode号码来识别文件
■ 对于用户,文件名只是inode号码便于识别的别称

1.5 inode的号码

■ 用户通过文件名打开文件时,系统内部的过程

  1. 系统找到这个文件名对应的inode号码
  2. 用过inode号码,获取inode信息
  3. 根据inode信息,找到文件数数据所在的block1,读出数据

■ 查看iodine号码的方法

  • ls -i命令:查看文件名对应的inode号码
    ls -i aa.txt
  • stat命令:查看文件inode信息中的inode号码
    stata aa.txt

1.6 文件存储小结

■ 硬盘分区后的结构
在这里插入图片描述
■ 访问文件的简单流程
在这里插入图片描述

1.7 inode的大小

■ inode也会消耗硬盘空间

  • 每个inode的大小
  • 一般是128字节或

■ 格式化文件系统时确定inode的总数
■ 使用df -i命令可以查看每个硬盘分区的inode总数和已使用的数量

1.8 inode的特殊作用

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

  • 当文件包含特殊字符,可能无法正常删除文件,直接删除inode,也可以删除文件
  • 移动或重命名文件时,只改变文件名,不影响inode号码
  • 打开一个文件后,系统通过inode号码来识别该文件,不在考虑文件名

二、硬链接与软链接

2.1 链接文件 1-1

■ 为文件或目录建立连接文件
■ 链接文件分类

软链接硬链接
使用范围失效仍旧可用
保存范围与原始文件可以位于不同的文件系统中必须与原始文件在同一个文件系统(如一个Linux分区)内

2.2 链接文件 1-2

■ 为文件或目标建立链接文件
■ 链接文件分类

  • 硬链接
    ln 源文件 目标位置
  • 软链接
  • ln -s 源文件或目录...链接文件或目标位置

三、恢复误删除的文件

3.1 恢复EXT类型的文件

■ 编译安装extundelete软件包

  • 安装依赖包
    • e2fsprogs-libs-1.41.12-18.el6.x86_64.rpm
    • e2fsprogs-devel-1.41.12-18.el6.x86_64.rpm

■ 模拟删除并执行恢复操作

3.2 恢复XFS类型的文件

■ xfsdumo命令格式
xfsdump -f 备份存放位置 要备份的路径或设备文件

■ xfsdump 备份级别(默认为0)

  • 0:安全备份
  • 1-9:增量备份

■ xfsdump 常用选项:-f 、-L、-M、-s

■ xfsdump 命令格式
xfsdump -f 恢复文件的位置 存放恢复后文件的位置

■ 模拟删除并执行恢复操作

3.3 xfsdump使用限制

■ 只能备份已挂载的文件系统
■ 必须使用root的权限才能操作
■ 只能备份CFS文件系统
■ 备份后的数据只能让xfsrestore解析
■ 不能备份两个具有相同UUID的文件系统

四、分析日志文件

4.1 日志文件 4-1

■ 日志的功能

  • 用于记录系统、程序运行中发生的各种事情
  • 通过阅读日志,有助于诊断和解决系统故障

■ 日志问价你的分类

  • 内核及系统日志

    • 由系统服务rsyslog 统一进行管理,日志格式基本相似
  • 用户日志

    • 记录系统用户登录及退出系统的相关信息
  • 程序日志

    • 由各种应用程序独立管理的日志文件,记录格式不统一

4.2 日志文件 4-2

■ 日志保存位置

  • 默认位于:/var/log 目录下

■ 主要日志文件介绍
在这里插入图片描述

4.3 内核及系统日志 4-3

■ 由系统服务rsyslog 统一管理

  • 软件包:rsyslog-7.4.7-16.el7.x86_64
  • 主要程序:/sbin/rsyslogd
  • 配置文件:/etc/rsyslog.conf

4.4 内核及系统日志 4-4

■ 日志消息的级别

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

4.5 内核及系统日志 4-5

■ 日志记录的一般格式
在这里插入图片描述

4.6 用户日志分析

■ 保存了用户登录、退出系统等相关信息

  • /var/log/lastlog:最近的用户登录事件
  • /var/log/wtmp:用户登录,注销及系统开,关机事件
  • /var/log/utmp:当前登录的每个用户的详细信息
  • /var/log/secure:与用户验证相关的安全性事件

■ 分析工具
- users、who、w、last、lastb

4.7 程序日志分析

■ 由相应的应用程序独立进行管理

  • Web服务:/var/log/httpd/
    access_log、error_log
  • 代理服务:/var/log/squid/
    access_log、cache_log
  • FTP服务:/var/log/xferlog

■ 分析工具

  • 文本查看,grep过滤检索,Webmin管理套件中查看
  • awk、sed 等文本过滤、格式化编辑工具
  • Webalizer、Awstats等专用日志分析工具

4.8 日志管理策略

■ 及时作好备份和归档
■ 延长日志保存期限
■ 控制日志访问权限

  • 日志中可能会包含各类敏感信息,如账户、口令等

■ 集中管理日志

  • 将服务器的日志文件发到统一的日志文件服务器
  • 便于日志信息的统一收集、整理和分析
  • 杜绝日志信息的意外丢失、恶意篡改或删除
©️2020 CSDN 皮肤主题: 黑客帝国 设计师:上身试试 返回首页