Linux文件系统

inode与block概述

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

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

3.block(块):连续八个扇区组成一个block

                          一个块是4K大小,是文件存取的最小单位。

                          操作系统读取硬盘的时候,是一次性连续读取多个扇区,即一个块一个块的读取的。

4.inode(索引节点):用于存储文件元信息

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

                                     一个文件必须占用一个inode,并且至少占用一个block

                                     inode不包含文件名。文件名是存放在目录文件夹当中的

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

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

如何查看inode号?

1.ls  -i

 

 

2.stat

 

 如何查看每个硬盘分区的inode总数和已经使用的数量?

df  -i 命令

 

 如何批量创建用户?

echo  user{1..10}  |xargs  n1  useradd

 

 cat  /etc/passwd可查看已创建的用户

 

 

删除文件空间不释放

1.cp /dev/zero /boot/xhx

2.df -h(查看)

3.rm -rf xhx

4.df -h或者 lsof |grep delete查看

 

 

 

 

文件恢复extundelete

删除一个文件,实际上并不清除 inode 节点和 block 的数据,只是在这个文件的父目录 里面的 block 中,删除这个文件的名字。Linux 是通过 Link 的数量来控制文件删除的,只有 当一个文件不存在任何 Link 的时候,这个文件才会被删除。在 Linux 系统运维工作中,经常会遇到因操作不慎、操作错误等导致文件数据丢失的情 况,尤其对于客户企业中一些新手。当然,这里所指的是彻底删除,即已经不能通过“回收 站”找回的情况,比如使用“rm -rf”来删除数据。针对 Linux 下的 EXT 文件系统,可用的恢复 工具有 debugfs、ext3grep、extundelete 等。 其中 extundelete 是一个开源的 Linux 数据 恢复工具,支持 ext3 文件系统。

1.安装依赖软件

yum -y install e2fsprogs-devel e2fsprogs-libs

2.新建分区

fdisk /dev/sdb

3.格式化分区

mkfs.ext3 /dev/sdb1

4.挂载

mount /dev/sdb1 /data

5.解压软件

 tar -jxvf extundelete-0.2.4.tar.bz2 -C /opt

6.切换到目录下

cd /opt/extundelete-0.2.4

7.编译安装

 ./configure
make -j2 && make install
8.查看该分区下的文件

extundelete /dev/sdb1 --inode 2

9.模拟删除
rm -rf 文件名

10.恢复文件

extundelete /dev/sdb1 --restore-all

实操:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xfs类型文件备份与恢复

xfsdump 的命令格式为:

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

常用的备份参数

-f:指定备份文件目录

-L:指定标签 session label

-M:指定设备标签 media label

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

 

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

1.不支持没有挂载的文件系统备份,所以只能备份已挂载的;

2.必须使用 root 的权限才能操作;

3.只能备份 XFS 文件系统;

4.备份下来的数据只能让 xfsrestore 解析;

5.不能备份两个具有相同 UUID 的文件系统(可使用blkid查看)。

过程:

1.新建分区

fdisk /dev/sdb

2.格式化分区

mkfs.xfs /dev/sdb1

3.挂载

mount /dev/sdb1 /xhx

4.导入内容

cp /etc/passwd /xhx

5.安装

yum install xfsdump

6.使用 xfsdump 命令备份整个分区 并打上标记

xfsdump -f /opt/dump_sdb1 /dev/sdb1

7.模拟数据丢失后恢复

cd /xhx

fm -rf *

8.恢复

xfsrestore -f /opt/dump_1 /xhx

 

实操:

 

 

 

 

 

 

 

 

 

 

 

posted @ 2022-03-12 00:21  xhx18061794934  阅读(121)  评论(0)    收藏  举报