38 linux数据备份与恢复

来源:互联网 发布:网络直销怎么做 编辑:程序博客网 时间:2024/06/07 14:01

1、linux下经常需要备份的目录:

/root/目录、/home/目录、/etc/目录、/var/spool/mail/目录、其他目录(自己安装的服务,如apache、mysql)

apache需要备份的数据:配置文件、网页主目录、日志文件

mysql需要备份的数据:源码包安装的mysql:/usr/local/mysql/data、rpm包安装的msyql:/var/lib/mysql


2、备份策略

2.1 完全备份:把所有需要备份的数据全部备份,当然完全备份可以备份整块硬盘,整个分区或某个具体目录(备份慢,恢复方便)

2.2 增量备份:备份新增的数据,不需要全部重新备份(备份快,恢复比较麻烦,有多少增量备份就要恢复多少个)

2.3 差异备份:每一次备份都跟第一次完全备份比较,只备份完全备份中不存在的(比完全备份少一点,比增量备份恢复好一些,但现实还是完全备份与增量备份用的多)


3、dump(备份) 与  restore(恢复)命令:

【注】:虽然可以自己写脚本cp、mv、rm但是太麻烦,系统提供了这两个命令很方便

 查看dump与restore是否安装:rpm -qa |  grep dump(注意不是tcpdump,tcpdump是linux抓包命令)、rpm -qa |  grep restore

3.1 dump  [选项]  备份后的文件名   源文件或目录

选项:

-level:就是我们说的0-9十个备份级别,其中0就是完全备份,1就是第一次增量备份,2就是第二次增量备份。。,如“-0” 

-f文件名:指定备份之后的文件名

-u:备份成功之后,把备份时间记录在/etc/dumpdates文件中

-v:显示备份过程中更多的输出信息

-j:调用bzlib库压缩备份文件,其实就是把备份文件压缩为bz2格式

-W:显示允许被dump的分区的备份等级以及备份时间


eg1:备份分区

完全备份

dump  -0uj  -f  /root/boot.bak.bz2  /boot/             //执行一次完全备份,并压缩和更新备份时间

cat  /etc/dumpdates          //查看备份时间文件

增量备份

cp   /root/install.log   /boot   //复制install.log 日志文件到boot下,然后用来测试增量备份

dump -1uj -f  /root/boot.bak1.bz2   /boot/     //增量备份boot分区并压缩

dump  -W //查询分区的备份时间以及备份级别的


eg2:备份文件或者目录(无法使用增量备份,增量备份只有分区才能用,也不能加-u选项)

dump  -0j  -f   /root/etc.bak.bz2  /etc              //备份/etc目录


4、resore 恢复备份数据:restore [模式选项][选项]

模式选项:restore命令常用的模式有以下四种,这四个模式不能混用,只能选一个。

-C:比较备份数据和实际数据变化

-i:进入交互模式,手工选择需要回复的文件

-t:查看模式,用于查看备份文件中拥有哪些数据

-r:还原模式,用于数据还原

选项:

-f:制定备份文件的文件名

eg1:restore  -C  -f    /root/boot.bak.bz2              

mv /boot/vmlinuz-2.6.32-431.el6.x86_64    /boot/vmlinuz-2.6.32-431.el6.x86_64.bak    //为了测试-C作用,记住测试完成后一定要还原,否则下次无法启动了

eg2:restore  -t  -f    /root/boot.bak.bz2          //查看 /root/boot.bak.bz2都备份了哪些数据

eg3:还原 boot备份分区

 //先创建个目录,省得到时候恢复的到处都是

mkdir  boot.test              

cd  boot.test/

restore -r -f  /root/boot.bak.bz2     先还原完全备份数据

restore -r -f  /root/boot.bak1.bz2  在还原增量备份数据

eg4:还原目录也一样

mkdir  etc.test              

cd  etc.test              

restore -r -f  /root/etc.bak.bz2    



原创粉丝点击