深入理解Linux文件系统与日志分析

一、block的作用:用来存真正的数据内容的

    我们每个扇区(sector)的大小规定是512B,系统在读取硬盘数据时,并不会一个个扇区去读,而是一次性连续读取多个扇区,

即一次性读取一个块(block),这种由多个扇区组成的块,是文件存取的最小单位,块的大小,最常见的是4kb,即连续8个

sector组成一个block

二、inode的作用:用来存数据的元信息的,所谓元信息指的就是该数据的一些属性特征

   那我们的inode可以记录的信息有哪些呢?可以是文件权限(rwx)的记录,文件的属主、属组、文件大小、时间戳等。

这种存储文件无信息的区域就叫做inode,中文译名为“牵引节点”,也叫i节点,因此,一个文件必须占用一个inode,但至少占用一个block

   注:inode中并不包括文件名,其实文件名是存放在目录当中的,Linux系统中一切皆文件,因此目录也是一种文件,即查看目录中的文件,

cd转目录后通过ls列目录可以查看文件名,而我们每个inode都有一个号码,系统用inode号码识别不同的文件,系统内部不使用文件名,

而使用inode号码来识别文件

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

1、ime(change time)

  • 最后一次改变文件或目录(属性)的时间

2、atime(access time)

  • 最后一次访问文件或目录的时间

3、mtime(modify time)

  • 最后一次修改文件或目录(内容)的时间

四、inode号码

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

   1、系统找到这个文件名对应的inode号码

2、通过inode号码,获取inode信息

3、根据inode信息,找到文件数据所在的block,读出数据

   查看文件的inode大小:ls  -i  a.txt

   查看详细信息:stat  a.txt

五、inode的大小

   1、inode也会消耗硬盘空间

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

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

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

六、inode的特殊作用

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

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

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

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

七、删除乱码文件

   方法一:
[root@server1 ~]#  touch  a.txt

[root@server1 ~]# ls  -I  a.txt
1543511  a.txt
[root@server1 ~]#  find  .  –inum  1543511  –exec  rm  –i  {}  \;

      这条命令的意思是find找到的内容作为后面rm删除的对象,语法结构分析:

      -exec参数后面跟的是命令,它的终止是以;为结束标志的,{}代表前面find找出来的文件名,\代表换行的是立即执行的意思

方法二:

[root@server1 ~]# find  .  –inum  1543511  |  xargs  rm  -f
Xargs这个参数就是强力的意思,如果前面的输出结果包含空格或制表符也会被强力执行

八、恢复XFS类型的文件

   1、extundelete工具仅可以恢复EXT类型文件,无法恢复CentOS7系统默认采用xfs类型的文件,针对xfs文件系统目前也

没有比肩成熟的文件恢复工具,提前做好数据备份,以防数据丢失

2、xfs类型的文件可使用xfsdump与xfsrestore工具进行备份恢复,若系统总未安装xfsdump与xfsrestore工具,可以通过

yum -y install xfsdump命令安装,xfsdump按照inode顺序备份一个xfs文件系统,xfsdump的备份级别有两种:0表示完全备份,

1-9表示增量备份。Xfsdump的备份默认为0,xfsdump的命令常用的参数包括以下几种

-f 指定备份文件或目录

-L 指定标签session label

-M 指定设备标签media label

-s 备份单个文件,-s后不能直接跟路径

xfsdump恢复工具实验步骤:

1、初始化磁盘(分区、格式化及挂载)

[root@server1 ~]# fdisk /dev/sdb
[root@server1 ~]# mkdir /data
[root@server1 ~]# mount /dev/sdb1 /data

2、准备测试文件

[root@server1 ~]# cd /data
[root@server1 data]# touch a
[root@server1 data]# touch b
[root@server1 data]# touch c
[root@server1 data]# touch d

3、使用xfsdump命令备份整个分区

[root@server1 data]# xfsdump  -f  /opt/dump.sdb1  /dev/sdb1

→dump.sdb1  指定备份会话标签,自己设的

→sdb1        指定设备标签,自己设的

xfsdump  -I  查看备份信息与内容

使用xfsdump时,需要注意以下的几个限制:

xfsdump不支持有挂载的文件系统备份,所以只能备份已挂载

xfsdump必须使用root的权限才能操作

xfsdump只能备份XFS文件系统

xfsdump备份下来的数据只能用xfsrestore解析

xfsdump是透过文件系统的UUID来分辨各个备份档的,因此不能备份两个具 有相同的UUID的文件系统
4、删除之前创建的内容

[root@server1 data]# rm -fr *

5、恢复文件

[root@server1 ~]# xfsrestore -f /opt/dump_sdb1 /data

extundelete恢复工具实验步骤:(在CentOS6系统中做)

1、初始化磁盘(分区、格式化及挂载)

[root@server1 ~]# fdisk /dev/sda sdb
[root@server1 ~]# mkfs.ext4 /dev/sdb1
[root@server1 ~]# mkdir /data
[root@server1 ~]# mount /dev/sdb1 /data

2、安装环境

[root@server1 ~]# yum -y install gcc gcc-c++ make e2fsprogs-libs e2fsprogs-devel

3、导入数据包
4、解压数据包

[root@server1 ~]# tar jxvf extundelete-0.2.4.tar.bz2
[root@server1 ~]# cd extundelete-0.2.4
[root@server1 extundelete-0.2.4]# ./configure
[root@server1 extundelete-0.2.4]# make && make install

5、在/data下创建文件,备份并删除/data下部分文件

[root@server1 extundelete-0.2.4]# cd /data
[root@server1 data]# extundelete /dev/sdb1

6、恢复文件,要先卸载挂载点,空文件或空目录备份不了

[root@server1 ~]# umount /data

xfsdump和extundelete区别:

1、extundelete需要额外去安装,而xfsdump默认系统自带

2、extundelete恢复时需要解挂载,而xfsdump需要挂载点在线时使用

3、xfsdump使用时必须是root账户才能用

4、extundelate只能恢复ext4的文件系统格式(必须是CentOS6系统),xfsdump只能恢复xfs的文件系统格式(CentOS7中默认是xfs文件系统格式)、

九、日志文件

   日志的功能

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

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

   日志文件的分类

   1、内核级系统日志

   2、用户日志

   3、程序日志

十、日志保存位置

   默认位于/var/log目录下

   主要日志文件介绍

   内核及公共信息日志:/var/log/messages

   计划任务日志:/var/log/cron

   系统引导日志:/var/log/dmesg

   邮件系统日志:/var/log/maillog

   记录每个用户靠近的登录事件:/var/log/lastlog

   记录用户认证相关的安全事件消息:/var/log/secure

   记录每个用户登录、注销及系统启动和停机消息:/var/log/wtmp

   记录失败的,错误的登录尝试及验证事件:/var/log/btmp

十一、日志消息的级别

在这里插入图片描述
查询用户登录失败的用户记录

   last:查看成功登录到系统的用户记录

   lastb:查看登录失败的用户记录

十二、日志记录的一般格式

在这里插入图片描述

十三、日志的管理策略

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值