Ubuntu 备份系统为ISO镜像 & 解决ISO限制4GB大小 & Clone当前系统到其余电脑

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

 

Ubuntu 备份系统为ISO镜像

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

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

好比 dd命令linux

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

rsync 命令git

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

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

还有其余备份软件session

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

可是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

DBGLEV=3 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的问题

mkdir sblive
tar -xf /home/systemback_live_2018-08-23.sblive -C sblive

2:重命名 syslinux 至 isolinux

mv sblive/syslinux/syslinux.cfg sblive/syslinux/isolinux.cfg
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 命令:

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

4: 生成iso文件:

/opt/schily/bin/mkisofs -iso-level 3 -r -V sblive -cache-inodes -J -l -b isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -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. 解压命令:

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

相关文章
相关标签/搜索