序言

这里我主要介绍Linux文件系统与日志分析

文件系统与日志分析

  • 序言
  • 一.inode与block
    • 1. 概述
      • ①inode的内容
      • ②inode号码
      • ③文件存储
      • ④inode的大小
      • ⑤inode的特殊作用
  • 二.硬链接与软链接
  • 三.恢复误删除的文件
    • 1.恢复EXT类型的文件
    • 2.恢复XFS类型的文件
  • 四.分析日志文件
    • 1.日志文件
  • 总结

一.inode与block

1. 概述

■文件数据包括元信息与实际数据

■文件存储在硬盘上,硬盘最小存储单位是“扇区”,每个扇区存储512字节

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

■inode(索引节点)
用于存储文件元信息(文件的创建者、创建日期、文件大小、文件权限等)

先调用文件名匹配inode号码,再根据号码调用inode信息内的文件属性(包括文件大小、时间等)

ls -i 文件名 #查看节点号
stat 文件名 #查看节点号

一个文件必须占用一个inode,但至少占用一个(4k)block

①inode的内容

inode包含文件的元信息
文件的字节数、文件拥有者User ID、文件的Group ID、文件的读写执行权限、文件的时间戳

■用stat命令可以查看某个文件的inode信息
stat aa.txt

Linux系统文件三个主要的时间属性
ctime 最后一次改变文件或目录(属性)的时间
atime 最后一次访问文件或目录的时间
mtime 最后一次修改文件或目录(内容)的时间

■目录文件结构
目录也是一种文件
目录文件的结构,每一行称为一个目录项

■每一个inode都有一个号码,操作系统用inode号码来识别不同的文件

■Linux系统内部不使用文件名,而使用inode号码来识别文件

■对于用户,文件名只是inode号码便于识别的名称

②inode号码

■用户通过文件名打开文件时,系统内部的过程
系统找到这个文件名对应的inode号码
通过inode号码,获取inode信息
根据inode信息,找到文件数据所在的block,读出数据

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

③文件存储

■硬盘分区后的结构
文件名➔目录项➔目录块
元信息➔inode➔inode表区块
数据➔block➔block数据块

访问文件的简单流程
用户访问文件➔系统查看文件对应的inode➔判断用户是否具备访问权限(是➔指向对应的数据block,否➔返回Permission denied)

④inode的大小

■inode也会消耗硬盘空间
每个inode的大小,一般是128字节或256字节
■格式化文件系统时确定inode的总数
使用df -i(df -iTh)命令可以查看每个硬盘分区的inode总数和已经使用的数量

⑤inode的特殊作用

■由于inode号码与文件名分离,导致一些Unix/Linux系统具有以下现象
当文件名包含特殊字符,可能无法正常删除文件,直接删除inode,也可以删除文件
移动或重命名文件时,只改变文件名,不影响inode号码
打开一个文件后,系统通过inode号码来识别该文件,不再考虑文件名
文件数据被修改保存后,会生成一个新的inode号码

删除包含特殊字符文件方法:find ./ inum xxxxx(inode号) -exec rm -i {} ;
find ./ inum xxxxx(inode号) -delete

二.硬链接与软链接

符号链接(软硬链接)
硬链接:ln 源文件 目标文件
软链接:ln -s 源文件或目录 … 链接文件或目录位置

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

三.恢复误删除的文件

1.恢复EXT类型的文件

■编译安装extundelete软件包
安装依赖包:
e2fsprogs-libs-1.41.12-18.el6.x86_rpm
e2fsprogs-devel-1.41.12-18.el6.x86_rpm
配置、编译及安装:
extundelete-0.2.4.tar.bz2

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

2.恢复XFS类型的文件

■xfsdump -f 备份存放位置 要备份的路径或设备文件

■xfsdump备份级别(默认为0)
0:完全备份
1-9:增量备份

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

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

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

四.分析日志文件

1.日志文件

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

■分类:
内核及系统日志(由系统服务rsyslog统一进行管理,日志格式基本相似)
用户日志(记录系统用户登录及退出系统的相关信息)
程序日志(由各种应用程序独立管理的日志文件,记录格式不统一)

■保存
默认保存在/var/log目录下

总结

.

【AWSL】之Linux文件系统与日志分析(inode、恢复EXT类型的文件、恢复XFS类型的文件)相关推荐

  1. Linux文件系统与日志分析 ------ inode、block及日志

    文件系统与日志分析 inode 与 block 介绍 inode的内容 inode 的号码 inode 的大小 inode的特殊作用 硬链接与软链接 软链接 硬链接 日志分析 日志的功能 日志文件的分 ...

  2. Linux文件系统与日志分析(inode、inode节点耗尽故障处理、文件备份和恢复、日志文件管理)

    Linux文件系统与日志分析 一.inode和block概述 1.文件和扇区 2.块(block) 3.文件数据 二.inode(索引节点) 1.inode的内容 2.inode的号码 3.inode ...

  3. linux文件系统和日志分析!

    linux文件系统和日志分析 一.inode和block block(块) inode(索引节点) inode的元信息 简述文件的读取过程 inode的特殊作用 stat命令 二.硬链接与软链接 硬链 ...

  4. Linux文件系统与日志分析(inode、文件备份和恢复、日志文件管理)

    文章目录 一 . inode和block 1.文件和扇区 2.块(block) 3.文件数据 二 . inode(索引节点) 1.inode的内容 2. inode的号码 3.inode的大小 4.i ...

  5. Linux 文件系统与日志分析

    文章目录 1.前言 2.深入理解 Linux 文件系统 2.1 inode 与 block 详解 (1) inode 和 block 概述 (2) inode 内容 (3) 查看文件的 inode 号 ...

  6. Linux/Centos7系统管理之深入理解Linux文件系统与日志分析

    前言:inode(文件节点)与block(数据块)硬链接与软连接恢复误删除的文件 (即rm-rf 的操作,可以先进行备份的操作,然后可以进行恢复ext4和xfs文件系统皆可)日志文件的分类用户日志与程 ...

  7. 理论:深入理解Linux文件系统与日志分析

    前言: inode(文件节点)与block(数据块) 硬链接与软连接 恢复误删除的文件 (即rm-rf 的操作,可以先进行备份的操作,然后可以进行恢复ext4和xfs文件系统皆可) 日志文件的分类 用 ...

  8. Linux文件系统与日志分析

    文章目录 引言 一.inode和block 1.inode和block概述 2.inode的内容 2.1 inode包含文件的元信息(文件属性) 2.2 用stat命令查看某个文件的inode信息 2 ...

  9. Linux——(渗透理解)文件系统与日志分析

    文件系统与日志分析超简单 一.Linux系统中的 inode 与 block 1.1 inode 和 block 1.2 查找文件对应的inode(内容) 1.3 inode的大小 inode总结 二 ...

最新文章

  1. 使用 IDEA 解决 Java8 的数据流问题,用过的都说好!!!
  2. python使用matplotlib可视化堆叠的直方图(stacked histogram plot)、多个类别的数据在直方图区间层面累积堆叠起来
  3. python提交spark_带有python入口点的sparksubmit
  4. C++ QT中的QSound使用方法
  5. Android ANR详解
  6. 【风控建模】风控分类模型种类(决策、排序)比较与模型评估体系(ROC/gini/KS/lift)
  7. 面试中常见的查找与排序
  8. CodeForces 1396E Distance Matching(构造+树的重心+dfs+set)
  9. OSPF的高级应用之地址汇总与虚链路的配置
  10. 2017.4.1 kth_number 思考记录
  11. java 异常哪个包,这个提示包不存在的异常是咋回事
  12. 除了定时器,真的没法在Simulation Node 类型的CAPL节点中实现延时了吗?
  13. ir2110s驱动工作原理
  14. Excel查看多列重复项
  15. this的三种用法 详解
  16. 【一次过】左旋转字符串
  17. 如何判断/获取屏幕的状态(亮屏已解锁,亮屏未解锁,黑屏)
  18. ug钣金冲压成型--混合折弯
  19. 解决本地新建项目推送到码云失败的问题
  20. 如何看电脑支持最大多少内存条?仅需一个命令

热门文章

  1. 汽车租赁php参考文献,求租赁或者汽车租赁的英文参考文献
  2. python3 安装pyinstaller_python3.7 打包(.exe)神器——pyinstaller 安装及用法
  3. java反射的编译过程_Java反射机制小结和实际操作
  4. 的union_C语言“隐秘的角落”——union没那么简单
  5. 浙江师范计算机考研怎么样,浙江师范大学考研难吗?一般要什么水平才可以进入?...
  6. 合肥中学计算机老师招聘,2019年合肥北城中学教师招聘公告
  7. php求平均值的函数_国二常用函数(二)
  8. 解决linux系统CentOS下调整home和根分区大小的方法
  9. 重磅!微软发布 vscode.dev,把 VSCode 带入浏览器!
  10. VIP到131970年过期就离谱~