[技术]使用Mondo Rescue进行Linux系统全备份(Ghost for Linux)

作者: hackliu 分类: 技术文章 发布时间: 2017-12-28 22:31

通过Mondo Rescue开源工具来实现linux系统的打包备份,如果你经常需要安装很多软件在服务器上,并且服务器较多,那么是否需要直接将你已安装好的系统打包成镜像文件,然后制作成你自己的系统,之后只需要直接安装就可以了。

那么mondo rescue这个工具绝对可以满足你的需求,更重要的是他是开源的,官网地址http://www.mondorescue.org/。

一、在RHEL/CentOS/Scientific Linux平台上安装MondoRescue

用于RHEL/CentOS/SL 6, 5, 4 – 32位平台

下载“/etc/yum.repos.d/”下的MondoRescue软件库,文件名为“mondorescue.repo”。请为你的Linux OS发行版本下载正确的软件库。

# cd /etc/yum.repos.d/

## On RHEL/CentOS/SL 6 - 32-Bit ##
# wget ftp://ftp.mondorescue.org/rhel/6/i386/mondorescue.repo

## On RHEL/CentOS/SL 5 - 32-Bit ##
# wget ftp://ftp.mondorescue.org/rhel/5/i386/mondorescue.repo

## On RHEL/CentOS/SL 4 - 32-Bit ##
# wget ftp://ftp.mondorescue.org/rhel/4/i386/mondorescue.repo

用于RHEL/CentOS/SL 6, 5, 4 – 64位平台

# cd /etc/yum.repos.d/

## On RHEL/CentOS/SL 6 - 64-Bit ##
# wget ftp://ftp.mondorescue.org/rhel/6/x86_64/mondorescue.repo

## On RHEL/CentOS/SL 5 - 64-Bit ##
# wget ftp://ftp.mondorescue.org/rhel/5/x86_64/mondorescue.repo

## On RHEL/CentOS/SL 4 - 64-Bit ##
# wget ftp://ftp.mondorescue.org/rhel/4/x86_64/mondorescue.repo

一旦你成功地添加了软件库,就可以使用“yum”命令安装最新的Mondo工具。

# yum install mondo

若报错:warning: rpmts_HdrFromFdno: Header V4 RSA/SHA512 Signature, key ID 20ebfb0e

执行

# yum install mondo --nogpgcheck

二、在Debian/Ubuntu/Linux Mint平台上安装MondoRescue

1. Debian平台

Debian用户可以使用“wget”命令抓取适用于Debian 6和Debian 5发行版的MondoRescue软件库。运行下列命令,添加“mondorescue.sources.list”到“/etc/apt/sources.list”文件中,以便于安装Mondo软件包。

## On Debian 6 ##
# wget ftp://ftp.mondorescue.org/debian/6.0/mondorescue.sources.list
# sh -c "cat mondorescue.sources.list >> /etc/apt/sources.list" 
# apt-get update 
# apt-get install mondo
## On Debian 5 ##
# wget ftp://ftp.mondorescue.org/debian/5.0/mondorescue.sources.list
# sh -c "cat mondorescue.sources.list >> /etc/apt/sources.list" 
# apt-get update 
# apt-get install mondo

2. Ubuntu/Linux Mint平台

想要在Ubuntu 12.10、12.04、11.10、11.04、10.10、10.04,或者Linux Mint 13中安装Mondo Rescue,请打开终端,然后在“/etc/apt/sources.list”文件中添加MondoRescue的软件库。运行下列的命令即可安装Mondo Rescue软件包。

# wget ftp://ftp.mondorescue.org/ubuntu/`lsb_release -r|awk '{print $2}'`/mondorescue.sources.list
# sh -c "cat mondorescue.sources.list >> /etc/apt/sources.list" 
# apt-get update 
# apt-get install mondo

三、创建系统/服务器的克隆或备份ISO镜像

安装Mondo之后,以“root”用户权限运行“mondoarchive”命令。下面的截图说明了如何创建一个完整系统的ISO备份镜像。

# mondoarchive

欢迎使用Mondo Rescue

1.png

选择标记的存放在服务器本地硬盘里面就可以了,点击回车下一步出现让你选择存放路径,直接默认即可,回车下一步

1.png

一般选择gzip作为压缩条件就可以了,随你自行选择吧,回车下一步

1.png

压缩标准,最大压缩率,最小压缩率,一般压缩率,其实选择一般就可以了,最小的话用时会比较久点,这个也根据自己实际情况选择吧,如果你系统需要备份的太多,那么你最好选择最小,因为如果压缩不超出范围,会生成两个盘,相对来说就不好刻录还原了,回车下一步

1.png这里让你选择镜像文件的大小,一般直接默认dvd的4480M就好了,选择Ok回车下一步

1.png

替你的镜像命名,随意命名即可,如果有多个镜像工具会在后面自行标记1-9来区分,ok下一步

1.png

选择你要备份的目录,一般默认根目录即可,直接下一步

1.png

选择你要排除的文件,一般镜像存放目录肯定排除不需要备份,还有根目录下的临时文件,或者一些其他不用的,具体根据实际情况和网上一些备份情况斟酌,注意在还原的时候你建立这些没有备份的文件。下一步

1.png

默认选择下一步:

1.png

同上:

1.png

问你是否备份并且检测,点击yes下一步

1.png

选择你的系统内核,redhat内核不要改动,其他系统有些需要改动,不用改的直接下一步

1.png

选择yes就进去备份界面了,

1.png

1.png

最后在默认iso生成目录:/var/cache/mondo 下得到iso

================================================

该版本存在一个问题(从官网上来看估计是工具的bug),在你备份完系统之后(最好将系统所有软件都停止运行),通过genisoimage命令制作镜像时会报错

genisoimage: Uh oh, I cant find the boot image 'isolinux.bin' !

经过查看/var/log/mondoarchive.log日志找到具体的genisoimage命令(通过mkisofs调用,二者之间的关系自行搜索 ),发现工具是想将/home/mondo.scrcath.xxfsca(各人最后的xxfsca不一样)制作成镜像的,但是isolinux.bin存在于/home/mondo.scrcath.xxfsca/syslinux下,由于genisoimage命令只会在它需要制作的目录/home/mondo.scrcath.xxfsca下搜索,自然找不到啦,那么解决就简单了,直接将syslinux下的文件使用cp命令复制出来即可,然后重试制作(接报错的步骤即可,不需要重头再开始),等待几分钟,系统就会提示你制作成功了,然后到默认路径下查看是否生成iso文件即可。

[root@TIANCOM home]# cd /var/cache/mondo
[root@TIANCOM mondo]# ls -l
总用量 3759816
-rw-r–r–. 1 root root         11 10月 31 13:38 difflevel.0
-rw-r–r–. 1 root root         11 10月 31 13:38 difflevel.0.aborted
-rw-r–r–. 1 root root 3850039296 10月 31 14:32 redhatora11g-1.iso

至此你linux制作镜像就算成功了。

通过软通牒在win上刻录好光盘(如果你有两个iso文件当然刻录两个啦),能刻录的光驱会标记有DVD_RM等字样,刻录成功之后,在另外的机器上试着还原,有四个命令供你选择,一般选择第一个自动恢复(如果你不需要重新分区什么的)

================================================

另注安装过程中出现 GPG error错误

处理方法如下:

原文链接:http://blog.chinaunix.net/uid-16938570-id-2841664.html

当使用非官方debian源的时候,会出现gpg error的问题:

W: GPG error: http://ftp.sjtu.edu.cn ./ Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 73E6B0FAA42A6CF5
W: You may want to run apt-get update to correct these problems

(1)倒数第二行的73E6B0FAA42A6CF5即为缺失的公钥,使用如下命令获得公钥:
gpg –keyserver pgp.mit.edu –recv-keys 73E6B0FAA42A6CF5
公钥服务器可更换为其他,如wwwkeys.eu.pgp.net,视自己的网络状况决定。
获得公钥后的输出如下:
Juno:/etc/apt# gpg –keyserver pgp.mit.edu –recv-keys 73E6B0FAA42A6CF5
gpg: requesting key A42A6CF5 from hkp server pgp.mit.edu
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key A42A6CF5: public key "shame (beryl repository) " imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1

(2)将公钥导入apt
gpg –armor –export A42A6CF5 | apt-key add –

(3)再次运行apt-get update


如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

3条评论
  • piner

    2019年11月29日 10:34

    还原后root账号不能登录,请问是什么原因

    1. hackliu

      2020年1月8日 09:59

      1.先确认输入密码是否正确
      2.可通过passwd 和 showd文件进行对比密码是否有变化

  • 2019年1月23日 18:09

    请问只做了多个ISO怎么在虚拟机上还原

发表评论

邮箱地址不会被公开。 必填项已用*标注