您的位置:首页 > 运维架构 > Linux

linux系统进行增量备份实例

2011-10-11 17:26 330 查看
关于在linux系统进行增量备份的方法

1. dump/restore 进行增量备份 注意,这种方法只能进行整个分区备份

# mount /dev/sdb1 /mnt/sdb 新建一个硬盘将其挂载到/mnt/sdb

# ls /mnt/sdb

123 456 aaa.zip f1

里面有4个文件 f1为目录

现在可以备份原始镜像

#dump -0u /dev/sdb1 -f /backup/sdb1_0u_110210.dump

DUMP: Date of this level 0 dump: Thu Feb 10 23:21:40 2011

DUMP: Dumping /dev/sdb1 (/mnt/sdb) to /backup/sdb_0u_110210.dump

DUMP: Label: none

.....中间省略

DUMP: Average transfer rate: 5687 kB/s

DUMP: DUMP IS DONE

备份完成

dump -0u : 0代表镜像备份(完整备份) 1-9 分别代表在前一个级别基础上的增量备份

下面进行增量备份:

首先 将123那个文件删除,新增一个文件kkk 并输入hello man!

[root@mysql1 sdb]# ls

456 aaa.zip f1 kkk

开始增量备份:

[root@mysql1 sdb]# dump -1u /dev/sdb1 -f /backup/sdb1_1u_110210.dump

DUMP: Average transfer rate: 0 kB/s

DUMP: DUMP IS DONE

现在/backup下有两个备份了。

[root@mysql1 sdb]# ls /backup

sdb1_0u_110210.dump sdb1_1u_110210.dump

为了更好了解我们在增加一个备份,备份之前我们再改变以下分区里面的文件

修改 456 内容为456 modifiy 删除aaa.zip

[root@mysql1 sdb]# ls

456 f1 kkk

备份第二个增量,这里用3u 只要比前面大就可以了,建议备份都用2u 4u 6u 这样备份,不然你所有数字都用上,123456 如果想重新再2u的基础上再备份就不行了,因为3已经用了,你只能在6后面备份

[root@mysql1 sdb]# dump -3u /dev/sdb1 -f /backup/sdb1_3u_110210.dump

备份完毕 就删除里面的所有记录

然后现在开始恢复

[root@mysql1 sdb]# restore -r -f /backup/sdb1_0u_110210.dump 先恢复0u

[root@mysql1 sdb]# ls

123 456 aaa.zip f1 restoresymtable

这时候把第一备份都还原出来了,然后一个一个还原

# restore -r -f /backup/sdb1_1u_110210.dump

# restore -r -f /backup/sdb1_3u_110210.dump

# ls

456 f1 kkk restoresymtable

和最后一次备份一样了

查看备份镜像里面的内容

# restore -t -f /backup/sdb1_1u_110210.dump

Dump date: Thu Feb 10 23:28:38 2011

Dumped from: Thu Feb 10 23:21:40 2011

Level 1 dump of /mnt/sdb on mysql1.dog.com:/dev/sdb1

Label: none

2 .

16 ./kkk

提取镜像里的文件

[root@mysql1 sdb]# restore -if /backup/sdb1_3u_110210.dump

restore > ls

.:

3 f1/ lost+found/ restoresymtable

456 kkk newfile

restore > add kkk

restore > extract

You have not read any volumes yet.

Unless you know which volume your file(s) are on you should start

with the last volume and work towards the first.

Specify next volume # (none if no more volumes): 1

set owner/mode for '.'? [yn] n

restore > quit

关于定期备份的方案:

先做一个完整的备份

#dump -0u /dev/sdb1 -f /backup/sdb1_0u_110210.dump

周一:#dump -2u /dev/sdb1 -f /backup/sdb1_1u_110210.dump

周二:
#dump -2u /dev/sdb1 -f /backup/sdb1_2u_110210.dump

周三:#dump -2u /dev/sdb1 -f /backup/sdb1_3u_110210.dump

。。。。。

--------------------------------------------------------------------------------------------------------------------

下面这方法比较灵活,直接用tar备份



# cd /test/t1

# ls

aaa.zip file1 file2 file3

有三个文件

首先执行完整备份

# tar -g snapshot -zcf backupp_full.tar.gz /test/t1

然后修改文件,增加一个文件

进行增量备份:

# tar -g snapshot -zcf backupp_incremental_1.tar.gz /test/t1

修改

再次增量备份

# tar -g snapshot -zcf backupp_incremental_2.tar.gz /test/t1

还原

tar zxf backup_full.tar.gz -C /

tar zxf backup_incremental_1.tar.gz -C /

tar zxf backup_incremental_2.tar.gz -C /

注意,修改的文件以后面增量备份为准,删除的文件这个种备份方法是不会跟着删除的,恢复的时候之前删除的文件也会恢复

另一种tar 备份 用-u参数进行增量备份,同样删除的文件不会同步

备份资料

tar zcf backup.tar /test/t1

查看 内容

tar ztf backup.tar

file1 file2 file3

在/test/t1下新增一个文件

增量备份

tar uf backup.tar /test/t1

还原备份其实就是直接解压

tar zxf backup.tar

如果你需要压缩增量备份的时候需要先将原来那个解压然后再备份在压缩 (-u 参数不会自动压缩)

gunzip backup.tar.gz

tar uf backup.tar test

gzip backup.tar
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: