ubuntu系統(tǒng)遷移與備份

Ubuntu系統(tǒng)遷移

環(huán)境

Machine OS
Origin Machine1 ubuntu1
Target Machine2 ubuntu2

遷移方向:Origin --> Target

引導(dǎo)方式:UEFI + GPT

前話

  1. 因為ubuntu一切皆文件, 故遷移系統(tǒng)就是將ubuntu2的系統(tǒng)文件(/目錄下所有文件)完全替換成ubuntu1间影。
  2. 系統(tǒng)遷移和備份是同一個原理——都是拷貝復(fù)制OS文件医寿, 但兩者的環(huán)境略有不同。
    • 系統(tǒng)備份:它是在本電腦上恢復(fù)OS文件,硬盤分區(qū)和引導(dǎo)位置都未改變查近;
    • 系統(tǒng)遷移:既然是遷移,那么就是不同電腦之間的操作诞吱,硬件環(huán)境一定發(fā)生了變化寻定,只講OS文件替換進(jìn)去是不行的,還要配置環(huán)境蔚携。

UEFI + GPT 系統(tǒng)引導(dǎo)程序那些事兒

  1. ubuntu系統(tǒng)就是/目錄下的所有文件希太,它存放于硬盤GPT分區(qū)的某個位置上。電腦開機的時候酝蜒,不會智能到自動找到該OS文件并執(zhí)行的地步誊辉,需要引導(dǎo)程序告訴計算機在什么位置尋找OS,故引導(dǎo)程序?qū)嶋H就是一道橋梁的作用亡脑。

  2. 對于一個在UEFI模式下安裝的ubuntu系統(tǒng)堕澄,在安裝時,某硬盤(本文是sda)一定有如下兩個分區(qū):

    • /dev/sda1--->OS System:此分區(qū)存放Ubuntu的系統(tǒng)文件霉咨,其中包含:

      • /etc/fstab, /etc/fstab.d(可能沒有):啟動文件
      • /boot/grub/grub.cfg:分區(qū)文件

      注:在fstab啟動文件中蛙紫,可以看到里面根據(jù)分區(qū)的UUID綁定了/dev/sda1給/,將/dev/sda2綁定到/boot/efi中躯护,這里也是啟動的關(guān)鍵惊来。如果UUID不正確,就無法找到引導(dǎo)程序和OS文件棺滞,系統(tǒng)恢復(fù)后無法正常開機裁蚁。

    • /dev/sda2 ---> EFI System:此分區(qū)是在EFI下安裝Ubuntu必要的,里面應(yīng)該存放了引導(dǎo)程序继准。

  3. 系統(tǒng)備份與遷移

    • 系統(tǒng)備份:因為備份恢復(fù)前后枉证,電腦的分區(qū)不會改變,而且備份恢復(fù)改變的只是OS所在分區(qū)移必,不會影響到/dev/sda2的EFI System室谚。所以就算換了OS文件,系統(tǒng)還是能正常引導(dǎo)修復(fù)。因此秒赤,系統(tǒng)備份沒有系統(tǒng)遷移復(fù)雜猪瞬,只需要復(fù)制拷貝OS文件即可。

    • 系統(tǒng)遷移:因為是將系統(tǒng)從一臺電腦移動到另外一臺電腦入篮,硬盤分區(qū)會變陈瘦,EFI文件也會改變。所以對于系統(tǒng)遷移潮售,建議:

      在machine2上先重裝系統(tǒng)痊项,新系統(tǒng)中EFI System、fstab啟動文件以及grub.cfg分區(qū)文件都是匹配的酥诽。即鞍泉,新系統(tǒng)下一切正常,只需要刪除ubuntu2然后移入ubuntu1即可肮帐,其他不變咖驮。

系統(tǒng)遷移正文

事先準(zhǔn)備一個ubuntu啟動盤

系統(tǒng)備份In Machine1

  1. Machine1 ---> U盤啟動 ---> Try Ubuntu進(jìn)入livecd模式: 開終端,進(jìn)入管理員權(quán)限泪姨。

  2. 掛載ubuntu1所在分區(qū)和移動硬盤

    • mkdir data:在/目錄下游沿,創(chuàng)建data。
    • mount /dev/sda1 /mnt:假設(shè)ubuntu1在Machine1的sda1上肮砾,將其掛載到mnt上
    • mount /dev/sdb1 /data:假設(shè)移動硬盤在Machine1的sdb1上诀黍,將其掛載到data上
  3. 備份ubuntu1至移動硬盤

    • 方法一:tar備份
    tar -cvpzf /data/ubuntu.backup --exclude=/mnt/proc --exclude=/mnt/lost+found --exclude=/mnt/tmp --exclude=/mnt/run --exclude=/mnt/media --exclude=/mnt/mnt
    

    參數(shù):
    -c: 新建一個備份文檔
    -v: 顯示詳細(xì)信息
    -p: 保存權(quán)限,并應(yīng)用到所有文件
    -z: 用gzip壓縮備份文檔仗处,減小空間
    -f: 指定備份文件的路徑
    –exclude: 排除指定目錄眯勾,不進(jìn)行備

    排除如下文件:
    /proc:一個虛擬文件系統(tǒng),系統(tǒng)運行的每一個進(jìn)程都會自動在這個目錄下面創(chuàng)建一個進(jìn)程目錄婆誓。既然是系統(tǒng)自動創(chuàng)建吃环,也就沒必要備份的必要了。
    /tmp:一個臨時文件夾洋幻,系統(tǒng)的一些臨時文件會放在這里郁轻。
    /lost+found:系統(tǒng)發(fā)生錯誤時(比如非法關(guān)機),可以在這里找回一些丟失文件文留。
    /media:多媒體掛載點好唯,像u盤、移動硬盤燥翅、windons分區(qū)等都會自動掛載到這個目錄下骑篙。
    /mnt:臨時掛載點,你可以自己掛載一些文件系統(tǒng)到這里森书。
    /run:系統(tǒng)從啟動以來產(chǎn)生的一些信息文件靶端。

    • 方法二谎势,mksquashfs(如果用tar備份和恢復(fù)時出錯,就用該方式)

      mksquashfs /mnt/data/ubuntu.sfs:備份系統(tǒng)

      sync:讓系統(tǒng)保存下數(shù)據(jù)

  4. 解除綁定:

    umont /data

    umount /mnt

系統(tǒng)恢復(fù) In Machine2

  1. 使用啟動u盤在Machine2上以EFI模式安裝ubuntu2系統(tǒng)杨名,本文分區(qū)如下:
  • sda1 --> ubuntu
  • sda2 --> EFI System
  1. 安裝新系統(tǒng)之后脏榆,依然從U盤啟動,Try Ubuntu進(jìn)入livecd模式: 開終端台谍,進(jìn)入管理員權(quán)限姐霍。

  2. 掛載:

    • mkdir data:在/目錄下,創(chuàng)建data用以掛載移動硬盤
    • mount /dev/sda1 /mnt:將ubuntu2掛載到mnt
    • mount /dev/sdc1 /data:將移動硬盤掛載到/data
  3. 保留原ubuntu2的啟動文件和分區(qū)文件:(如果是本地系統(tǒng)備份的話典唇,可略此步)

    因為這兩個文件記錄了machine2上ubuntu2上的啟動信息和分區(qū)信息,而系統(tǒng)備份中的文件是machine1的胯府,放在新環(huán)境下介衔,配置一定出錯,所以要用本土的配置文件骂因,只需換個系統(tǒng)文件即可炎咖。

    • cp /mnt/etc/fstab(若有fstab.d,就一并復(fù)制) /data:保留原啟動文件
    • cp /mnt/boot/grub/grub.cfg /data:保留原分區(qū)文件
  4. 系統(tǒng)恢復(fù)

    • 方法一: tar

      rm -rf /mnt/*:將掛載到/mnt上的原系統(tǒng)徹底刪除(可能此命令有誤寒波,可用其他命令)

      tar -xvpzf /data/ubuntu.backup /mnt:將備份系統(tǒng)恢復(fù)到掛載到/mnt上的ubuntu

      cp /data/fstab(fstab.d) /mnt/etc:恢復(fù)啟動文件(本地備份恢復(fù)不需要此步

      cp /data/grub.cfg /mnt/boot/grub:恢復(fù)分區(qū)文件(本地備份恢復(fù)不需要此步

    • 方法二:mksquashfs

      mkdir /rescovery/mnt

      mount -o loop /data/ubuntu.sfs /rescovery/mnt:將備份文件恢復(fù)至/rescovery/mnt中

      cp -a /rescovery/mnt/* /mnt:將備份文件完整地拷貝至ubuntu2掛載的/mnt中

      cp /data/fstab(fstab.d) /mnt/etc:恢復(fù)啟動文件(本地備份恢復(fù)不需要此步

      cp /data/grub.cfg /mnt/boot/grub:恢復(fù)分區(qū)文件(本地備份恢復(fù)不需要此步

    注:如果只是本地備份恢復(fù)到此即可結(jié)束(僅僅拷貝粘貼系統(tǒng)文件即可)乘盼,如果是遷移系統(tǒng),還需要有如下步驟俄烁!第6步绸栅,在系統(tǒng)遷移時試過了,但在系統(tǒng)啟動時還是會出錯页屠;第7步粹胯,應(yīng)該可行,但sudo add-apt-repository ppa:yannubuntu/boot-repair添加失敗辰企,來者需要特別注意风纠。

  5. 引導(dǎo)修復(fù)1

    • 從try ubuntu中為ubuntu2掛載虛擬文件系統(tǒng),為引導(dǎo)修復(fù)做準(zhǔn)備:

      mount -o bind /dev /mnt/dev

      mount -o bind /proc /mnt/proc

      mount -o bind /sys /mnt/sys

    • chroot /mnt:進(jìn)入ubuntu2

    • 對比UUID

      • 在try ubuntu中新建一個終端牢贸,輸入blkid查看硬盤分區(qū)UUID

      • 在上面chroot /mnt過的終端中竹观,使用vim /etc/fstab查看啟動文件中的信息。對照/sda1(mount point為/)和/sda2(mount point為/boot/efi)綁定的兩個UUID是否和/dev/sda1和/dev/sda2相吻合潜索。(因為是拷貝的原ubuntu2系統(tǒng)中的文件臭增,應(yīng)該不會有錯誤,有錯誤的話帮辟,就需要修改速址。)

      • grub-install /dev/sda
        update-grub
        
      • 退出并卸載掛載

        exit
        umount /mnt/dev
        umount /mnt/sys
        umount /mnt/proc
        umount /data
        umount /mnt
        sync
        
      • 重啟

  6. 引導(dǎo)修復(fù)2

    • 從u盤啟動,進(jìn)入try ubuntu由驹,安裝boot-repair

      sudo add-apt-repository ppa:yannubuntu/boot-repair        添加源
      sudo apt-get update
      sudo apt-get install -y boot-repair  安裝boot-repair
      
    • 進(jìn)入boot-repair使用Recommended repair進(jìn)行修復(fù)芍锚。

參考文獻(xiàn)

  1. https://blog.csdn.net/sunny0660/article/details/79274642
  2. https://blog.csdn.net/mbytes/article/details/100165856
  3. https://blog.csdn.net/qq_35523593/article/details/78545530
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末昔园,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子并炮,更是在濱河造成了極大的恐慌默刚,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件逃魄,死亡現(xiàn)場離奇詭異荤西,居然都是意外死亡,警方通過查閱死者的電腦和手機伍俘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進(jìn)店門邪锌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人癌瘾,你說我怎么就攤上這事觅丰。” “怎么了妨退?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵妇萄,是天一觀的道長。 經(jīng)常有香客問我咬荷,道長冠句,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任幸乒,我火速辦了婚禮懦底,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘逝变。我一直安慰自己基茵,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布壳影。 她就那樣靜靜地躺著拱层,像睡著了一般。 火紅的嫁衣襯著肌膚如雪宴咧。 梳的紋絲不亂的頭發(fā)上根灯,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天,我揣著相機與錄音掺栅,去河邊找鬼烙肺。 笑死,一個胖子當(dāng)著我的面吹牛氧卧,可吹牛的內(nèi)容都是我干的桃笙。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼沙绝,長吁一口氣:“原來是場噩夢啊……” “哼搏明!你這毒婦竟也來了鼠锈?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤星著,失蹤者是張志新(化名)和其女友劉穎购笆,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體虚循,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡同欠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了横缔。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片铺遂。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖茎刚,靈堂內(nèi)的尸體忽然破棺而出娃循,到底是詐尸還是另有隱情,我是刑警寧澤斗蒋,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站笛质,受9級特大地震影響泉沾,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜妇押,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一跷究、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧敲霍,春花似錦俊马、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至扩然,卻和暖如春艘儒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背夫偶。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工界睁, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人兵拢。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓翻斟,卻偏偏與公主長得像,于是被迫代替她去往敵國和親说铃。 傳聞我的和親對象是個殘疾皇子访惜,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容