Linux中“EXT 类型文件恢复与xfs 类型文件备份和恢复”

内容预知

 实验一EXT 类型文件恢复

 1. 实验目的

2.实验前的准备 

 3. 实验操作

 3.2 删除ext3文件系统中的文件

  3.3   恢复删除ext3文件系统中的文件

 实验二xfs 类型文件备份和恢复

1. 实验目的

 2. 实验前了解xfsdump的用法

3. 实验过程 

 3.1创建xfs系统文件环境

 3.2备份整个分区

3.3 模拟数据丢失 

3.4 恢复操作 

 总结


 实验一EXT 类型文件恢复

 1. 实验目的

extundelete 是一个开源的 Linux 数据恢复工具,支持 ext3、ext4文件系统。(ext4只能在centos6版本恢复),本实验模拟ext3文件系统损坏,借助extundelete,修复文件数据

 

 

2.实验前的准备 

该工具下载网站:

wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2  

所需依赖包: yum -y install e2fsprogs-devel e2fsprogs-libs

该软件涉及到c++,所以安装一个c++编译工具: yum install -y gcc gcc-c++ make

 准备一台centos 的虚拟机,新添加一块硬盘,开辟出一块主分区,建立ext3文件系统。(本次实验是要centos7运行)

 fdisk /dev/sdb
    mkfs.ext3 /dev/sdb1
     mkdir /test
    mount /dev/sdb1  /test
    lsblk

 

 

 

 3. 实验操作

 3.1 安装extundelete 以及涉及到的工具

yum -y install e2fsprogs-devel e2fsprogs-libs

 

 

  cd /test
     wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2

 

tar  xf extundelete-0.2.4.tar.bz2 
    cd extundelete-0.2.4/
    yum install -y gcc gcc-c++ make

 

   ./configure --prefix=/usr/local/extundelete && make && make install
    ln -s /usr/local/extundelete/bin/* /usr/bin/

 

 3.2 删除ext3文件系统中的文件

echo 123>a.txt
 echo 123>b.txt   //创建两个文件 ab  ,写入数据

 

 

extundelete /dev/sdb1 --inode 2
//查看文件系统/dev/sdc1下存在哪些文件,i 节点是从 2 开始的,2 代表该文件系统最开始的目录。

 

rm -rf a.txt
rm -rf b.txt        //将两个ext3文件删除

  3.3   恢复删除ext3文件系统中的文件

 umount /test
  extundelete /dev/sdb1 --restore-all
 

 

 结果验证:

   ls
    ls RECOVERED_FILES/

 实验结论: 以上实验来看,文件最后并没有恢复成功,这个工具也连续用了几次,都是概率性的恢复文件,无法确保文件的百分百恢复。所以对文件做备份,一定是最优的选择

 

 实验二xfs 类型文件备份和恢复

1. 实验目的

 CentOS 7 系统默认采用 xfs类型的文件,xfs 类型的文件可使用 xfsdump 与 xfsrestore 工具进行备份恢复,目前市面上并没有开源的xfs文件恢复工具,但是利用备份恢复依旧是最优的选择方案。本次实验就是模拟对重要的xfs文件进行备份,在误删后,进行恢复

 

 2. 实验前了解xfsdump的用法

 

 xfsdump的使用限制:

  • 只能备份已挂载的文件系统
  • 必须使用root的权限才能操作
  • 只能备份XFS文件系统
  • 备份后的数据只能让xfsrestore解析
  • 不能备份两个具有相同UUID的文件系统(可用 blkid命令查看)

 

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

常用选项:
 -f:指定备份文件目录

-L:指定标签 session label

-M:指定设备标签 media label

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

3. 实验过程 

 3.1创建xfs系统文件环境

#使用fdisk创建分区/dev/sdb1,格式化xfs文件系统
fdisk /dev/sdb
partprobe /dev/sdb
mkfs.xfs [-f] /dev/sdb1
mkdir /date
mount /dev/sdb1 /date/
cd /data
cp /etc/passwd ./
mkdir test
touch test/a

 3.2备份整个分区

#使用 xfsdump 命令备份整个分区

xfsdump -f /opt/dump_sdb1 /dev/sdb1 [-L dump_sdb1 -M sdb1]

#如果没有xfsdump 
rpm -qa | grep xfsdump
yum install -y xfsdump

3.3 模拟数据丢失 

#模拟数据丢失并使用 xfsrestore 命令恢复文件
cd /data/
rm -rf ./*
ls

 

 

3.4 恢复操作 

xfsrestore -f /opt/dump_sdb1 /date/

 实验总结:

对创建好的文件系统进行一整个分区的备份,存放在足够的空间中。当该分区中的重要文件被误删后,可以利用备份分区,进行数据还原。

 

 总结

两个实验都展示了重要数据丢失后的恢复手段,但是第二个实验比第一个完成的更加顺利,数据保存的更加完整。在运维环境中,一定要本着数据无价的态度来进行工作,对重要的数据文件进行好备份处理 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值