看标题,标题涵盖了3个部分,Ubuntu 备份系统为ISO镜像,  解决ISO限制4GB大小 ,  Clone当前系统到其他电脑  我们就从三个部分说起.

Ubuntu 备份系统为ISO镜像

在Windows系统中,我们一般使用Ghost一键备份系统,Ghost是相对成熟的系统备份软件,来自赛门铁克,傻瓜式操作,各种PE中,系统镜像中都是默认自带.

在Linux系统中,也有好几个系统备份工具.

比如 dd命令

参考:http://www.cnblogs.com/EasonJim/p/7442223.html

rsync 命令

参考: http://www.cnblogs.com/f-ck-need-u/p/7220009.html

不是人人都喜欢命令行下的备份与还原,大道至简, 同样一个功能,能简单实现为什么要复杂完成呢,除非你属于爱折腾里面的极品.

还有其他备份软件

remastersys 与Respin, remastersys 早已不再维护,取而代之的是Respin  官网:http://www.remastersys.org/

但是Respin 也是问题一大堆,至少我的Ubuntu是这样的,

一.只能备份系统目录,对于用户目录的数据无法备份

二.限制4GB大小,如果你也是一个爱折腾的人,4GB是容不下你的.所以你可能会收到 "The compressed filesystem is larger than genisoimage allows for a single file."

三.当我把系统精简后,的确打包成iso文件,问题是不管是虚拟机还是真机移植,4次移植两次失败,所以我认为Tespin不够稳定,好在Respin一直在更新,希望越做越好. gitlab地址 : https://gitlab.com/remastersys/LinuxRespin.git

介绍了其他,现在有请主角闪亮登场:

systemback  

systemback 下载地址: https://sourceforge.net/projects/systemback/    Systemback_Install_Pack_v1.8.402.tar.xz    (2016-05-16)

systemback功能很强大,可以创建还原点,恢复到还原点,可以系统复制,可以系统安装,可以创建live模式系统,可以包含用户目录数据.......

 liveCD模式

LiveCD是一种光盘上的可运行出系统的激光光碟,简单的说就是一个光盘上的系统,你可以通过光盘启动电脑,启动出一个系统(这个系统在使用上和安装到硬盘上的是一样的,就是启动时速度比较慢)。Linux Live CD就是一套在光盘上的Linux系统(和装出来的Linux时一样的)它也有图形界面,也有终端。这种Linux Live CD主要是用于修复Linux系统或用于学习Linux系统。 来自百科的翻译.

我们这里创建的备份系统就是liveCD模式镜像,通过U盘引导可直接开启LiveCD模式下的系统.

备份系统

我们不用从菜单-systemback中选择进入,因为备份的过程中可能出现错误,所以我们使用以下命令打开systemback

  1. DBGLEV= systemback-sustart

当我备份的时候,就通过上面调试命令查看到了报错的信息

一个是回收站Trash目录无法清空:

另一个是开启了LNMP服务,mysql.pid, nginx.pid 占用资源无法释放,还有加载了CD或挂载目录无法读取只读系统文件,打包就出错了。

所以备份之前一定要确定: .local/share/Trash 回收站为空, 关闭非系统的服务,不要使用专有驱动,建议使用开源驱动先备份,clone到新机子后在修改驱动.

进入systemback,选择 创建live系统,勾选包含用户数据文件

           

就这样等待十几分钟左右,就能创建.sblive完成, 等待的时间长短就要看你用户数据量的多少.

生成的.sblive到底有多大? ???

29.4GB到底有多大??? 因为你又不是iso文件,OK, 压缩.sblive的算法和.iso的算法差不多,也就是生成的.iso文件大小差不多的. 如何? 29.4GB那个系统有这么大,Ubuntu18.04也就2个GB大小, 一个企业版Windows10也就3.4GB.

为什么我的系统生成这么大的.sblive文件呢,因为......

    

用户目录下的一个子目录opt就将近42GB大小,其中大部分是VirtualBox安装虚拟系统的.vdi文件, Vbox目录大概39GB, 所以如果想减小生成iso文件的大小,就尽力把类似于虚拟系统这种占空间的文件放到非用户目录下.

解决ISO限制4GB大小

OK,现在已经生成.sblive文件了,可以选择选择转换为光盘镜像

看到了,为什么是灰色的,那是因为已经超过4GB大小了,只有小于4GB大小的才能通过systemback转换为iso文件.

那如何解决呢?

上链接:

解决systemback 无法生成超过4G的iso的问题

也就是 ISO9660标准最大文件大小限制不能超过4GB,

解决的办法就是采用udf文件系统.

UDF是统一光盘格式(Universal Disc Format)的缩写当数据写入光盘,需要写入的数据体积>2G 时,需要采用此种格式.

1:解压 .sblive 文件 (先su root)

  1. mkdir sblive
  2. tar -xf /home/systemback_live_2018--.sblive -C sblive

2:重命名 syslinux 至 isolinux

  1. mv sblive/syslinux/syslinux.cfg sblive/syslinux/isolinux.cfg
  2. mv sblive/syslinux sblive/isolinux

3:mkisofs 命令

发现了问题, Ubuntu自带mkisofs ,mkisofs命令用来将指定的目录与文件做成ISO9660格式的映像文件,但是自带的mkisofs命令貌似不支持4GB文件打包,

在来说下cdrecord, 也就是cdrtools, 一个增强版的CD/DVD刻录软件

下载地址: cdrtools-3.02a09.tar.gz   (2017-12-14)

安装的时候make && make install 选择本系统的时候可以选择Ubuntu16.04,(无Ubuntu18.04选项, 但也可以用)安装好之后,在/opt/schily/bin/mkisofs 貌似就是增强版mkisofs, 其中-UDF参数就能看出来 Generate UDF file system, 所以默认情况下,当大于4GB的时候默认启用-UDF参数

关于mkisofs 命令:

  1. -posix-H Follow sylinks encountered on command line
  2. -posix-L Follow all symlinks
  3. -posix-P Do not follow symlinks (default)
  4. -o FILE, -output FILE Set output file name
  5. -R, -rock Generate Rock Ridge directory information
  6. -r, -rational-rock Generate rationalized Rock Ridge directory info
  7. -J, -joliet Generate Joliet directory information
  8. -print-size Print estimated filesystem size and exit
  9. -UDF Generate UDF file system
  10. -dvd-audio Generate DVD-Audio compliant UDF file system
  11. -dvd-video Generate DVD-Video compliant UDF file system
  12. -dvd-hybrid Generate a hybrid (DVD-Audio/DVD-Video) compliant UDF file system
  13. -iso-level LEVEL Set ISO9660 level (..) or for ISO9660 v
  14. -V ID, -volid ID Set Volume ID
  15. -graft-points Allow to use graft points for filenames
  16. -M FILE, -prev-session FILE Set path to previous session to merge

4: 生成iso文件:

  1. /opt/schily/bin/mkisofs -iso-level -r -V sblive -cache-inodes -J -l -b isolinux/isolinux.bin -no-emul-boot -boot-load-size -boot-info-table -c isolinux/boot.cat -o sblive.iso sblive

在.sblive的同级目录下就生成了一个sblive.iso文件,大小和之前的.sblive文件差不多.

Clone当前系统到其他电脑

我们先打开这个sblive.iso可以看到casper目录下的filesystem.squashfs 文件, 这个文件大小几乎就是iso文件的大小,也就是说安装的系统文件数据肯定是在这个filesystem.squashfs文件中.

filesystem.squashfs查看

filesystem.squashfs文件都包含了那些内容,可以打开任何一个Ubuntu的iso文件 或者刚才解压的sblive文件就能看获取filesystem.squashfs. 解压命令:

  1. sudo unsquashfs filesystem.squashfs

可以看到filesystem.squashfs就是系统数据文件

参考:

Ubuntu误删系统文件修复办法

那貌似制作liveCD更简单了, 找到本系统安装时的镜像版本文件,比如Ubuntu-mate18.04-desktop-amd64.iso, 将生成的filesystem.squashfs替换为源镜像中的filesystem.squashfs就ok了! 前提是你的文件小于4GB.

可以通过systemback安装, 先通过U盘进入liveCD系统,安装systemback,选择系统安装-填写信息- 分区设置,勾选传递用户配置下一步安装

参考: https://blog.csdn.net/sinat_33188616/article/details/56685553

参考教程:

How to Create a Disk Image from a Linux System Using Systemback

Ubuntu 备份系统为ISO镜像 & 解决ISO限制4GB大小 & Clone当前系统到其他电脑的更多相关文章

  1. OpenStack挂载ISO镜像解决

    OpenStack挂载ISO镜像解决 Summary 本次在OpenStack平台上进行,基于kvm,挂载iso镜像到OpenStack虚拟机中. 1.针对linux: 上传所需要挂载的iso镜像(必 ...

  2. 【转载】在Linux系统下用dd命令制作ISO镜像U盘启动盘

    #### 将U盘插入USB接口 #umount /dev/sdb* #dd if=/iso存放路径/XXX.iso of=/dev/sdb bs=1M ##### [转载]在Linux系统下用dd命令 ...

  3. [小技巧] 打造属于 Dell XPS 13 (9350) 的专属 Windows 7 iso 镜像

    MacBook Air 13, Dell XPS 13 和 Thinkpad X1 Carbon 都是轻薄笔记本中设计优秀的典范,受到很多用户追捧. 不过对于 Windows 阵营的笔记本,最近有个坏 ...

  4. 自定义制作iso镜像

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

  5. 将当前的Ubuntu系统封装成为可以安装(发布)的iso镜像

    将当前的Ubuntu系统封装成为可以安装(发布)的iso镜像 在使用以上方法安装依赖的时候xresprobe 会找不到安装地址,采用下面的方式: Package xresprobe is not in ...

  6. Remastersys备份linux系统ISO镜像

    1. 安装Remastersys 利用Ubuntu Software Center安装,修改sources.list文件,在文件末尾加入下面三行,添加软件源, #Rsudo remastersys d ...

  7. Linux下载_Linux系统各种版本ISO镜像下载(redhat,centos,oracle,ubuntu,openSUSE)

    以下是风哥收集的Linux系统各种版本ISO镜像下载,包括redhat,centos,oracle,ubuntu等linux操作系统. Linux下载1:红帽RedHat Linux(RHEL5.RH ...

  8. debian及ubuntu挂载本地硬盘的ISO镜像文件

    1.定位Debian ISO镜像的位置,比如说sda3 fdisk -l 2.挂载: # mount -t auto /dev/sda3 /media/mnt 生成isodebian路径 /mnt# ...

  9. apt-get Ubuntu本地ISO镜像入源

    转自http://blog.csdn.net/binchel/article/details/21486999 在没有网络的情况下,本地镜像源不实为一个上等的权宜之计! 目前linux的两大主流包管理 ...

随机推荐

  1. 分享自己总结的PMP项目管理20个G的资料,本人去年过的pmp认证,过了5A

    版权归作者所有,任何形式转载请联系作者. 我在去年6月拿到的pmp证书,5A的,现在来分享下自己的资料. 这些资料是从我开始学习,到问了很多朋友.老人,到后来报班学习,再到之后做项目管理中总结的很多经 ...

  2. 金蝶K3 wise 插件二次开发与配置

    金蝶K3 wise 插件二次开发与配置 开发环境:K/3 Wise 13.0.K/3 Bos开发平台.Visual Basic 6.0 目录 一.二次开发插件编程二.代码演示三.配置插件四.测试插件五 ...

  3. 论decltype和auto的区别

    论decltype和auto的区别   decltype和auto的区别 ①对引用变量的不同之处:auto将引用变量赋给变量后,变量的类型为引用变量所对应的变量的类型.而decltype则是为引用类型 ...

  4. Ceph rdb

    Ceph 独一无二地用统一的系统提供了对象.块.和文件存储功能,它可靠性高.管理简便.并且是自由软件. Ceph 的强大足以改变公司的 IT 基础架构.和管理海量数据. Ceph 可提供极大的伸缩性— ...

  5. head里两个重要标签base和meta

    base标签 <base href="../"> 我们并不常用的一个标签,但是一旦用得不当会带来灾难性的影响. 它会影响到所有页面上的href和src属性相对路劲的定位 ...

  6. Windows10搭建FTP服务

    1.启用Windows10 Ftp服务 打开控制面板->程序和功能->启用或关闭windows功能然后如图: 2.配置FTP用户 我的电脑->右击点击管理->本地用户和组 在A ...

  7. O2O淘宝优惠券代码总结

    一.数据集预处理 1.数据读入 import pandas as pd import numpy as np import datetime as date import datetime as dt ...

  8. mysql将表数据导出为txt或csv文件

    语法:select 字段 from 表名 into outfile 路径 示例txt:select * from stu_class into outfile './stu_class.text'; ...

  9. package.json 里的 dependencies和devDependencies区别

    dependencies(依赖的意思): 通过 --save 安装,是需要发布到生产环境的.比如项目中使用react,那么没有这个包的依赖就会报错,因此把依赖写入dependencies devDep ...

  10. centos 7.2 安装mongodb 3.4.4免编译

    /根目录下: 获取命令: wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.4.tgz 解压命令: tar zvxf mon ...