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

相關文章
相關標籤/搜索