基本介绍
Linux备份和恢复有两种方式:
1. 把需要的文件(分区)使用tar指令打包,下次需要恢复的时候,再解压打开。
2.使用dump和restore命令,本文章主要介绍dump和restore。
安装dump和restore
如果Linux上没有dump和restore
可以输入dump指令来检测是否安装
可以使用
yum install dump来安装
使用dump来完成备份
dump支持分卷和增量备份
增量备份:指的是再上次备份的基础上,再备份修改/增加的文件单独到一个备份文件中去。
语法:
dump [-cu] [-f <备份后文件名>] [-T <日期>] [目录或文件系统]
dump -w/W
-c : 创建新的归档文件,c可以是【0123456789】中的任意一个值。
而【0123456789】代表备份的层级。
0为第一级备份,也就是最完整的备份,备份整个文件/文件夹/分区。
1-9代表第一到第九级备份,每次在前一级备份文件的基础上,备份新的增加/修改文件。
-j: 调用bzlib库压缩备份文件,使得压缩文件成为bz2格式,使压缩文件更小。
-T<日期>: 指定开始备份的时间和日期
-u :备份完毕后,在/etc/dumpares中记录备份的文件系统,层级,日期与时间等。
-t: 指定文件名,若该文件已存在备份文件中,则列出名称
-W:显示需要备份的文件及其最后一次备份的层级,时间,日期
-w:仅显示需要备份的文件
应用实例
将/boot分区所有内容被分到/opt/boot.bak0.bz2文件中,备份层级为0,注意:此时备份的是一整个分区!!
dump -0uj -f /opt/boot.bak0.bz2 /boot
在/boot目录下增加一个新文件之后,进行增量备份,备份层级为1,备份文件名字为boot.bak1.bz2
dump -1uj -f /opt/boot.bak1.bz2 /boot
dump -W:显示结果如下
查看备份时间文件
cat /etc/dumpdates
特别注意
dump备份文件或者目录的时候
不支持增量备份
不支持增量备份
不支持增量备份
例如备份/home文件夹到root目录下,文件名为mybak0.bz2
只能使用dump -j -f /root/mybak0.bz2 /home
此处,不能加u,也不能加【-0123456789】因为,文件和目录不支持增量备份!
使用restore恢复
restore命令可以恢复已备份的文件,可以从dump生成的备份文件中恢复原文件。
语法:
restore [模式选项] [选项]
模式选项:
以下四个模式选项不能混用,在一次命令中,只能指定一种。
-C:使用对比模式,将备份的文件和已存在的文件进行相互比较,并且显示出不一样的地方。
-i:使用交互模式,在进行还原操作时,restore指令将依次询问用户该备份文件中的子文件是否需要还原。
-r:进行还原模式,注意是依次还原从0开始,一直到最新的地方为止。
比如现在有bak0,bak1,bak2,那么还原的时候,只能从bak0,bak1,bak2这个顺序依次还原,不能直接跳过bak0还原bak1。
-t:查看模式,看看备份文件有哪些文件。
选项:
-f <备份设备>:从指定的文件中读取备份数据,进行还原操作。
实例
restore -C /boot.bak1.bz2
查看备份文件和现在文件的不同
restore -r -f /opt/boot.bak0.bz2
注意:这条指令用来恢复boot.bak0.bz2这个备份文件,而复原的位置在当前工作目录下!!!
可以使用【pwd】指令来查看当前工作目录。