如何备份linux分区?

如何备份linux分区?,第1张

在《Linux *** 作系统备份之一:使用LVM快照实现Linux *** 作系统数据的在线备份》文章中,我们介绍了使用LVM快照实现 *** 作性系统在线备份的方法,LVM快照可以实现在线 *** 作系统数据的备份,在线的意思也就是说,不中断业务的条件下,完成 *** 作系统数据的备份。

今天我们介绍另外一种在线备份Linux *** 作系统的方法:通过tar拷贝 *** 作系统分区数据,完成 *** 作系统备份。

在继续往下面读之前,为了更好理解,请先阅读这篇文章:《Linux基础知识之Linux系统各个目录的作用》,这篇文章介绍了Linux的基础目录及其作用,下面的备份会说到这些目录。

一句话说明此方案原理:备份/boot(含grub),备份分区表,备份LVM卷信息(如果有)备份系统文件。

下面具体介绍:

1. 分区规划

在实施此方案之前,需要规划好分区,通过tar备份分区之前,先要规划好分区。

2. 备份数据定义

备份的目录和分区为:

/boot boot引导分区

/etc 系统核心配置文件

/var 系统运行目录

/home 用户主目录

/root root用户主目录

/opt 用户程序文件

/bin 系统可执行文件

/sbin 系统可执行文件

/usr 程序安装目录

无需备份的目录:

这些目录用途参考《Linux基础知识之Linux系统各个目录的作用》这个文章,这里就不重复介绍了。

/proc

/sys

/dev

/media

/swap

3. 备份

分区和目录都定义好了之后,开始执行备份,步骤为:

1)备份分区表。执行fdisk -l >/var/partition.cfg

2)备份LVM卷元数据。 vgcfgbackup -v ,命令会将卷信息导出到文件。

3)备份/boot分区。

4)使用tar命令,备份上面的所有分区和数据。

4. 恢复

备份完成后要恢复备份的数据,需要重新引导 *** 作系统。

你可以通过光盘引导 *** 作系统进入单用户模式,或者使用内存 *** 作系统进入单用户模式。使用光盘相对简单一些。

1)进入单用户模式后,将备份的数据挂接到 *** 作系统。

2)根据备份出来的分区表,创建分区。

3)解压/boot分区,通过grub-install命令,恢复grub。

4)恢复LVM卷。vgcgfrestore命令。

5)解压各个目录和分区。

5. 性能影响

通过tar命令压缩的方式备份 *** 作系统数据,对 *** 作系统运行还是有一定性能影响的。这个要根据数据大小而定,需要在实际环境测试。

本人每次对 *** 作系统更新后都做一次系统备份,我的做法是:

1、在保存备份文件的目录 xxx 下建立一个文件 backup.sh,其内容是:

tar -zcf bin.tar.gz /bin

tar -zcf boot.tar.gz /boot

tar -zcf dev.tar.gz /dev

tar -zcf etc.tar.gz /etc

tar -zcf lib32.tar.gz /lib32

tar -zcf lib64.tar.gz /lib64

tar -zcf lib.tar.gz /lib

tar -zcf opt.tar.gz /opt

tar -zcf sbin.tar.gz /sbin

tar -zcf selinux.tar.gz /selinux

tar -zcf srv.tar.gz /srv

tar -zcf var.tar.gz /var

tar -zcf usr.tar.gz /usr

2、在需要备份的时候进入到保存备份内容的目录执行一次命令: sh backup.sh

3、在保存备份文件的目录 xxx 下建立一个叫 restore.sh 的文件,其内容如下:

tar -zxf /mnt/xxx/bin.tar.gz

tar -zxf /mnt/xxx/boot.tar.gz

tar -zxf /mnt/xxx/dev.tar.gz

tar -zxf /mnt/xxx/etc.tar.gz

tar -zxf /mnt/xxx/lib32.tar.gz

tar -zxf /mnt/xxx/lib64.tar.gz

tar -zxf /mnt/xxx/lib.tar.gz

tar -zxf /mnt/xxx/opt.tar.gz

tar -zxf /mnt/xxx/sbin.tar.gz

tar -zxf /mnt/xxx/selinux.tar.gz

tar -zxf /mnt/xxx/srv.tar.gz

tar -zxf /mnt/xxx/var.tar.gz

tar -zxf /mnt/xxx/usr.tar.gz

4、如果需要系统恢复,我就用光盘启动,mount 原来的根目录为 yyy,接着 mount 保存备份文件的目录为 xxx,接着进入到 /mnt/yyy,并在此下达命令: sh /mnt/xxx/restore.sh

说明:

(1)、备份和恢复需要1个多小时,这个时间根据你电脑的CPU速度和硬盘转速会有所不同。

(2)、上面备份与恢复没有顾及 /home 目录和 /root 目录,因为我的系统主要是给学生做练习用的,那两个目录的内容没有意义。在实际工作中,可能这两个目录才是最重要的,你可以模仿着别的目录添加到 backup.sh 和 restore.sh 文件中去,甚至别的目录都不备份(以便节约备份时间)就备份这两个目录。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8405188.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-16
下一篇 2023-04-16

发表评论

登录后才能评论

评论列表(0条)

保存