linux 如何把一个装好的系统做成镜像(文件备份)
linux 如何把一个装好的系统做成镜像(文件备份)
来自电脑网络类芝麻团 2016-01-19
案例1(命令式操作)
1.像'ghost'那些备份系统,系统出了问题就恢复系统,还要把系统备份文件作成'iso'文件
应不知道你是如何分区的,举例说明吧,假如分区如下:
/dev/sda1 是你的 /boot 分区 ext3 文件系统
/dev/sda2 是你的 / 分区 ext3 文件系统
/dev/sda3 是你的 /home 分区 ext3 文件系统
/dev/sda5 是你的 windows 分区 ntfs 文件系统,假设就是用来放备份文件的
挂载系统备份文件存放的分区:
# mkdir /media/sda5 建个挂 sda5 分区的目录,用来挂载 sda5 分区
# mount -t ntfs-3g /dev/sda5 /media/sda5/ 挂载 sda5 分区
系统备份:
# partimage -b -d save /dev/sda1 /media/sda5/sda1 备份 sda1 分区到 sda1.000 文件中
# partimage -b -d save /dev/sda2 /media/sda5/sda2 备份 sda2 分区到 sda2.000 文件中
系统恢复:
# partimage -b -d restore /dev/sda1 /media/sda5/sda1.000 还原 sda1.000 到 sda1 上
# partimage -b -d restore /dev/sda2 /media/sda5/sda2.000 还原 sda2.000 到 sda2 上
2.除了用 ghost 就只会用 partimage 了;
若不加 -b 参数,会有界面的,以前我还用界面的,现在连界面都不想用了,直接命令备份/还原了;
关于 partimage 的参数网上有它的资料
制作'ISO'文件:
# cd /media/sda5/
# genisoimage -o linux-system-backup-2011-02-22.iso -J -r -v -V "Linux System Backup" sda1.000 sda2.000
3.用 debian 6.0 版的时候,找死都找不到 mkisofs 命令了,网上一查才知道把 mkisofs 命令删除了用genisoimage代替了,参数都一样。
最后,把刻片的命令也给你说了,刻 DVD 光盘:
# growisofs -dvd-compat -Z /dev/dvd=/media/sda5/linux-system-backup-2011-02-22.iso
其实,都没必要刻盘了,备份文件放硬盘上就行了,系统启动不了了,用个 linux live cd 启动后,恢复就行了!
把分区信息也备份了:
# fdisk -l > fdisk-l-2011.02.22.txt
注意:不要把 fdisk-l-2011.02.22.txt 放备份的硬盘上,放别的介质上,或者写下来,打印出来都行;
若把 fdisk -l 的信息放硬盘上的某个分区中了,结果在想看当初备份分区表的那个文件都不行了。
若分区表不小心弄坏了,到时用 linux live cd 启动后照着 fdisk-l-2011.02.22.txt 上面的分区信息,用 fdisk 再分下就行了。
fdisk 只是改分区表,并非格式化分区,只要不格式化分区,分区上的东本都在(硬盘坏掉情况除外);
若引导启动不了,重新安装下 grub 引导程序就行了。
案例2(图像化操作)
一、下载安装包
可以根据你的系统类型自行去官网下载,由于会有很多依赖关系,条件允许建议者通过网络yum的形式安装(具体操作很多教程有)。
当然如果你是redhat6版本,那么可以直接在http://download.csdn.net/detail/u012209894/9669034下载,我已经上传了,
里面的包已经全部囊括其中,安装命令,有依赖关系的先安装好依赖关系。
二、使用工具备份成镜像
root用户下输入mondoarchive,然后就都是图形操作了,鉴于要截图,所以使用的是远程连接工具,实际图的界面没这么丑。
[root@TIANCOM ~]# mondoarchive
See /var/log/mondoarchive.log for details of backup run.
Checking sanity of your Linux distribution
选择标记的存放在服务器本地硬盘里面就可以了,点击回车下一步出现让你选择存放路径,直接默认即可,回车下一步。
一般选择gzip作为压缩条件就可以了,随你自行选择吧,回车下一步。
压缩标准,最大压缩率,最小压缩率,一般压缩率,其实选择一般就可以了,最小的话用时会比较久点,这个也根据自己实际情况选择吧,如果你系统需要备份的太多,那么你最好选择最小,因为如果压缩不超出范围,会生成两个盘,相对来说就不好刻录还原了,回车下一步。
这里让你选择镜像文件的大小,一般直接默认dvd的4480M就好了,选择Ok回车下一步。
替你的镜像命名,随意命名即可,如果有多个镜像工具会在后面自行标记1-9来区分,ok下一步。
选择你要备份的目录,一般默认根目录即可,直接下一步。
选择你要排除的文件,一般镜像存放目录肯定排除不需要备份,还有根目录下的临时文件,或者一些其他不用的,具体根据实际情况和网上一些备份情况斟酌,注意在还原的时候你建立这些没有备份的文件。
默认选择下一步。
同上。
问你是否备份并且检测,点击yes下一步。
选择你的系统内核,redhat内核不要改动,其他系统有些需要改动,不用改的直接下一步。
选择yes就进去备份界面了。
详细说明:
----------------------------
该版本存在一个问题(从官网上来看估计是工具的bug),在你备份完系统之后(最好将系统所有软件都停止运行),通过genisoimage命令制作镜像时会报错。
经过查看/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文件即可。
至此你linux制作镜像就算成功了。
通过软通牒在win上刻录好光盘(如果你有两个iso文件当然刻录两个啦),能刻录的光驱会标记有DVD_RM等字样,刻录成功之后,在另外的机器上试着还原,有四个命令供你选择,一般选择第一个自动恢复(如果你不需要重新分区什么的)。
然后就是等待,十几分钟基本就搞定。