linux 如何把一个装好的系统做成镜像(文件备份)

 我来答

举报浏览 11851 次
来自电脑网络类芝麻团 2016-01-19

案例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 上
除了用 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
用 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等字样,刻录成功之后,在另外的机器上试着还原,有四个命令供你选择,一般选择第一个自动恢复(如果你不需要重新分区什么的)。

然后就是等待,十几分钟基本就搞定。

linux 如何把一个装好的系统做成镜像(文件备份)的更多相关文章

  1. 把当前ubuntu系统做成镜像

    把当前ubuntu系统做成镜像 2018年06月19日 15:24:51 还需要再学习一个 阅读数:9720 原文地址: http://community.bwbot.org/topic/167/%E ...

  2. Linux下一个简单的日志系统的设计及其C代码实现

    1.概述 在大型软件系统中,为了监测软件运行状况及排查软件故障,一般都会要求软件程序在运行的过程中产生日志文件.在日志文件中存放程序流程中的一些重要信息, 包括:变量名称及其值.消息结构定义.函数返回 ...

  3. Cola:一个分布式爬虫框架 - 系统架构 - Python4cn(news, jobs)

    Cola:一个分布式爬虫框架 - 系统架构 - Python4cn(news, jobs) Cola:一个分布式爬虫框架 发布时间:2013-06-17 14:58:27, 关注:+2034, 赞美: ...

  4. 【转载】在Linux下,一个文件也有三种时间,分别是:访问时间、修改时间、状态改动时间

    在windows下,一个文件有:创建时间.修改时间.访问时间.而在Linux下,一个文件也有三种时间,分别是:访问时间.修改时间.状态改动时间. 两者有此不同,在Linux下没有创建时间的概念,也就是 ...

  5. 这可能是史上最全的windows10装ubuntu双系统教程

    一. 先搞清楚自己电脑的类型: A  MBR传统bios+单硬盘 B  MBR传统bios+双硬盘(SSD固态硬盘+机械硬盘) C  UEFI新式bios+单硬盘 D  UEFI新式bios+双硬盘( ...

  6. Linux学习日记之磁盘与档案系统

    主要定义 磁盘的物理组成磁盘主要由圆形磁盘(多张).机械手臂.磁头等组成.每张磁盘都有不同的磁道,半径相同的磁道组成了磁柱,沿着中心划线可将磁盘分成若干扇区,每个扇区的大小是512Bytes. 磁盘分 ...

  7. linux内核分析作业6:分析Linux内核创建一个新进程的过程

    task_struct结构: struct task_struct {   volatile long state;进程状态  void *stack; 堆栈  pid_t pid; 进程标识符  u ...

  8. Linux内核创建一个新进程

    张雨梅   原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-10000 创建新进程 如果同一个程序被多 ...

  9. 在 Linux 上配置一个 syslog 服务器

    syslog服务器可以用作一个网络中的日志监控中心,所有能够通过网络来发送日志的设施(包含了Linux或Windows服务器,路由器,交换机以及其他主机)都可以把日志发送给它. 通过设置一个syslo ...

随机推荐

  1. TextBox各种设置

    前台: <StackPanel> <TextBlock Margin=" TextWrapping="Wrap"> TextBlock with ...

  2. axios reponse请求拦截以及token过期跳转问题

    前两天项目中遇到了token拦截,需要在请求的header头里放置token,需要用到response拦截,调试过程中遇到了拿不到token的问题 我用的axios实例 let token = sto ...

  3. 用最复杂的方式学会数组(Python实现动态数组)

    Python序列类型 在本博客中,我们将学习探讨Python的各种"序列"类,内置的三大常用数据结构--列表类(list).元组类(tuple)和字符串类(str). 不知道你发现 ...

  4. background-origin背景图片定位

    语法 background-origin: padding-box|border-box|content-box; background-Origin属性指定background-position属性 ...

  5. Modbus协议笔记

    读线圈:就是说读开关量输出的状态,看看开关量输出的到底是开着的还是关着的,这样说有点不专业,但是好明白.比如要在上位机显示开关量输出的当状态,就得用这个功能码. 写线圈:就是说读开关量输入的状态,开关 ...

  6. Token refresh的实现

    实现原理: 在access_token里加入refresh_token标识,给access_token设置短时间的期限(例如一天),给refresh_token设置长时间的期限(例如七天).当活动用户 ...

  7. 【MySQL】MySQL使用正确密码却认证失败问题解决方法

    前言:笔者根据 #MySQL忘记密码,重置密码方法 ,修改密码后.使用修改后的正确密码怎么也登录不上数据库,然后经过以下方法,重新登录数据库. 1.确认MySQL安装目录下没有data(Data)文件 ...

  8. .Net Core DevOps - 四步实现Vue项目持续集成

    众所周知,现在国内最火的前端框架非Vue莫属了,作为一个.net程序员,早就想体验一下了,但是无奈微软的项目模板不提供Vue的Spa模板,但是我们还是想用怎么办呢?下面来看下我的解决方案 目录 用vu ...

  9. python中小整数对象池及intern机制

    小整数对象池: Python为了优化速度,使用了小整数对象池,避免为整数频繁申请和销毁 Python 对小整数的定义是 [-5, 256] 这些整数对象是提前建立好的,不会被垃圾回收,所有位于这个范围 ...

  10. 【翻译】Prometheus 2.12.0 新特性

    Prometheus 2.12.0 现在(2019.08.17)已经发布,在上个月的 2.11.0 之后又进行了一些修正和改进. 在当前的 6 周发布周期中,每一个 Prometheus 版本都有比较 ...