linux数据的备份和恢复

简介

    实体机器没办法做快照,就必须做好备份和恢复工作。
1
2
3
4
yum -y install dump
# 检查有没有 dump 和 restore
dump # 增量备份
restore

dump

image-20220119144703676

增量备份

image-20220119144634863

案例:备份“分区”

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 查看分区
lsblk

dump -0uj -f /opt/fourth_division_backup.bak0.bz2 /fourth_division
# 把第四分区 备份为opt下的这个压缩文件。(这里我的第四分区是ext4格式的,如果是xfs格式听说要在前面加上xfs,大家可以试一试。)

# 修改第四分区内的文件

dump -1uj -f /opt/fourth_division_backup.bak1.bz2 /fourth_division
# 增量备份,选1,改动了-1选项和 bak1(用来区分文件)

# 将dump 脚本和 crontab 配合,可以实现无人值守定时备份。

cat /etc/dumpdates # 查看备份记录

案例:备份文件夹、文件

1
2
3
# 目录、文件不支持 增量备份,只能选择-0,因为唯一性,没有层级-u 这个选项。
dump -0j -f /opt/fourth_division_newonefiles_backup.bak0.bz2 /fourth_division/newone

restore

image-20220120104813784

案例:比较不同

1
2
3
4
5
6
7
8
9
10
# 修改文件夹newone下文件 hello.txt 
mv ./hello.txt ./byebye.txt

#比较模式 恢复 和原始文件对比
restore -C -f fourth_division_newonefiles_backup.bak0.bz2

# 显示
restore: unable to stat ./newone/hello.txt: No such file or directory
Some files were modified! 4 compare errors

案例:查看备份文件内部有什么

1
restore -t -f fourth_division_newonefiles_backup.bak0.bz2 

image-20220120110514816

案例:按顺序依次恢复

1
2
3
4
5
6
7
8
# 依次恢复后文件放在这个文件夹内
cd /opt
mkdir restore_tmp
cd restore_tmp
# 依次恢复
restore -r -f /opt/fourth.bak0.bz2
restore -r -f /opt/fourth.bak1.bz2
restore -r -f /opt/fourth.bak2.bz2