VMWare中如何对Linux系统进行备份

VMWare中如何对Linux系统进行备份,第1张

我们使用VMWare *** 作Linux系统的时候,需要经常对系统进行备份以防止出现意外。那么如何在VMWare中备份Linux系统呢?下面我给大家分享一下。

工具/材料

VMWare

快照方式备份01

点击顶部的虚拟机菜单,选择快照下面的拍摄快照选项,如下图所示

02

在d出的拍摄快照界面中给快照起一个名称,然后点击拍摄快照按钮,如下图所示

03

接下来如果想用的时候只需要点击虚拟机菜单,然后选择快照下面的快照管理器,如下图所示

04

在快照管理器中选择要恢复的快照,然后点击转到按钮即可,如下图所示

克隆方式备份01

首先将虚拟机关机,然后右键选择要备份的虚拟机,选择管理下面的克隆,如下图所示

02

在d出的克隆向导界面中选择虚拟机中的当前状态选项,如下图所示

03

然后进入克隆类型选择界面,这里选择创建完整克隆选项,如下图所示

04

接下来需要设置一下克隆的位置并给克隆备份的系统起一个名称,如下图所示

05

最后我们就可以看到克隆进度条出现了,我们等到进度条走完,就可以得到备份的系统了,如下图所示

做法是:

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

由于Linux系统本身的优越性,系统的备份和还原还是比较容易的。主要表现在以下方面:

1.Linux系统所有的数据都以文件的形式存在,所以备份就是直接拷贝文件;硬盘分区也被当成文件,所以可以直接克隆硬盘数据。

2.Lnux系统自带很多实用工具,比如tar、dd、rsync等,备份还原系统不需要购买或下载第三方软件。

3.Lnux系统在运行时其硬盘上的文件可以直接被覆盖,所以还原系统的时候不需要另外的引导盘。(当然,系统完全挂掉到无法启动这种情况还是需要另外的引导盘的。)

备份Linux系统的策略有很多,比如使用dd命令直接克隆硬盘分区:

复制代码

代码如下:

sudo dd if=/dev/sda1 of=/dev/sdb1

或者,使用tar将硬盘上的文件打包:

复制代码

代码如下:

cd /sudo tar cvpzf backup.tgz --exclude=/proc --exclude=/mnt --exclude=/sys --exclude=/backup.tgz /

还原系统的命令是:

复制代码

代码如下:

sudo dd if=/dev/sdb1 of=/dev/sda1或tar xvpfz backup.tgz -C /

但是我最终选择的是rsync命令。rsync是一个非常优秀的文件同步工具,从它的名字可以看出,它支持远程同步。当然,在备份我的桌面系统时,只需要用到它的本地同步功能就行了。之所以选择rsync,是因为它具有如下优点:

在备份还原过程中,可以保存文件原有的时间、权限、软硬链接等信息;

首次备份时,需要复制所有文件,但是再次备份或还原系统时,只需要复制修改过的文件。

关于rsync的使用方法,其主要参考文档是man rsync,另外,rsync也可以作为守护进程运行用来建立文件备份服务器,可以参考文档man rsyncd.conf。

桌面系统备份实战

对于我的桌面系统,我选择的备份策略是使用rsync命令将硬盘上的所有文件(当然要排除/proc和/sys目录下的内容)复制到U盘上。首先使用df -lh命令查看一下我电脑的系统占多大空间,如下图:

从上图可以看出,根目录所在的分区占用了14G,而/boot目录所在的分区才占用100多M。其实Linux系统本来不用这么臃肿,只是因为我安装了太多的软件包,比如一整套的texlive啊什么的,才占用了这么多的空间。不过这都不是事儿,反正现在U盘也便宜,所以找个32G的USB 3.0的U盘来备份我这个系统,肯定是很轻松愉快的。

新U盘插到电脑上会被自动识别,使用不带参数的mount命令可以查看U盘的设备文件和挂载路径,使用fdisk命令了解U盘的大小和分区情况。如下图:

整个U盘分成一个区我没什么意见,不过我不喜欢它的vfat文件系统,万一碰到超过4G的巨型文件怎么办?so,先umount它,然后使用mkfs.ext3为它重新建立一个文件系统,如下图:

再把U盘mount起来,挂载的路径为/media/youxia/usb。如下图:

然后,可以开始备份了,我备份的命令是:

复制代码

代码如下:

sudo rsync -Pa / /media/youxia/usb/backup_20141216 --exclude=/media/* --exclude=/sys/* --exclude=/proc/* --exclude=/mnt/* --exclude=/tmp/*

如下图:

下图是备份完成后的效果,可以看到整个备份过程花了59分多钟,U盘被占用15G,如下图:

如果哪天系统再崩溃了的话,只需要使用sudo rsync -Pa /media/youxia/usb/backup_20141216 /即可恢复系统。


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

原文地址:https://54852.com/yw/7146162.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存