歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 制作自己的Ubuntu安裝光盤

制作自己的Ubuntu安裝光盤

日期:2017/2/28 16:18:38   编辑:Linux教程

使用Ubuntu有些年數了,感覺ubuntu做的還是可以的,但是有一個問題比較困難,就是裝系統。裝系統,裝軟件很多人都會,但是很麻煩,系統要裝,驅動要裝,軟件要裝,插件要裝。熟練的話可能也要忙活半天。linux本身會用的人就不多,裝起來又這麼麻煩,嚴重影響linux的推廣。ubuntu在易用性上已經做的不錯了,但是完全不夠。下面將要介紹一種基於ubuntu9.04的克隆安裝方法,當然不局限於9.04,只是個人唯獨喜歡9.04,之後的版本被改的很不和本人的品味了。方法研究的很透徹了,所以介紹給大家,幫大家避免一些不必要的麻煩。

安裝必要的工具:

sudo aptitude install squashfs-tools genisoimage獲取官方的系統:Download an official Desktop CD from http://releases.ubuntu.com/

UCloner 是針對 Ubuntu Linux 編寫的一個系統備份、恢復、克隆、批量部署工具;

可將 ubuntu 系統備份為 squashfs 映像文件,也可從映像文件中恢復系統,與 GHOST 類似;

可以直接將系統克隆到其它硬盤分區;

可用來制作 Live 系統;

同時具有命令行和圖形界面,以滿足不同用戶需求;

UCloner 是開源軟件,遵循 GPL v2 協議。項目主頁: http://code.google.com/p/ucloner/

這裡使用3.3.7的版本來完成,個人對其並不完全滿意,所以對其進行略微的修改:

文件ubuntu-cloner-main.sh中:

target_file_0="$target_dir/ubuntu-cloner-$(date +%Y%m%d%H%M%S)"

會把系統備份為一個跟時間相關的文檔,改一下讓它備份為固定文件名:

target_file_0="$target_dir/systembak"

文件中的:
newhostname="$oldhostname-$(date +%Y%m%d%H%M%S)"

會把還原後系統的hostname改為一個時間相關的名字,我希望保留原來的主機名:

newhostname="$oldhostname"

下面介紹具體的操作步驟,要用到的東西還有ubuntu-9.04-desktop-amd64.iso,就是ubuntu的live CD。自己根據自己使用的版本進行調整。在下面的步驟中,用戶名為kangho,Ubuntu cloner修改後的文件被放在/home/kangho/Public/clone/。

(1)在主機上安裝ubuntu,這裡安裝的用戶名為kangho。安裝驅動,軟件,進行系統配置。

(2)清理系統垃圾,系統最近文檔記錄,浏覽器臨時文件等,並用janitor清理多余的包。

(3)使用ubuntu cloner備份系統。這裡備份為/home/kangho/Public/systembak.tar或者/home/kangho/Public/systembak.squashfs。

備份命令為:

www.linuxidc.com@linuxidc-desktop:~$ cd /home/kangho/clone/

www.linuxidc.com@linuxidc-desktop:~$ history -c && rm /home/kangho/.bash_history && sudo ./ubuntu-cloner-gui.py

這個命令目的是清除bash的歷史記錄並啟動ubuntu-cloner。

(4)制作自定義的安裝光盤。

<1>把ubuntu-9.04-desktop-amd64.iso拷貝到/home/kangho/。

<2>掛載iso

www.linuxidc.com@linuxidc-desktop:~$ mkdir mnt
www.linuxidc.com@linuxidc-desktop:~$ sudo mount -o loop ubuntu-9.04-desktop-amd64.iso mnt/
<3>同步光盤內容(/casper/filesystem.squashfs被排除在外)

www.linuxidc.com@linuxidc-desktop:~$ mkdir extract-cd
www.linuxidc.com@linuxidc-desktop:~$ rsync --exclude=/casper/filesystem.squashfs -a mnt/ extract-cd

<4>解壓/casper/filesystem.squashfs

www.linuxidc.com@linuxidc-desktop:~$ sudo unsquashfs mnt/casper/filesystem.squashfs

www.linuxidc.com@linuxidc-desktop:~$ sudo mv squashfs-root edit

<5>在要生成新的/casper/filesystem.squashfs 的文件夾edit中添加文件夾/home/kangho/Public/clone

www.linuxidc.com@linuxidc-desktop:~$ sudo mv Public/clone/ edit
<6>生成新的/casper/filesystem.squashfs

www.linuxidc.com@linuxidc-desktop:~$ sudo mksquashfs edit extract-cd/casper/filesystem.squashfs -nolzma
<7>更新光盤md5文件

www.linuxidc.com@linuxidc-desktop:~$ cd extract-cd/
www.linuxidc.com@linuxidc-desktop:~/extract-cd$ sudo rm md5sum.txt
www.linuxidc.com@linuxidc-desktop:~/extract-cd$ find -type f -print0 | sudo xargs -0 md5sum | grep -v ./isolinux/ | grep -v ./md5sum.txt | sudo tee md5sum.txt

<8>生成新的iso

www.linuxidc.com@linuxidc-desktop:~/extract-cd$ sudo mkisofs -D -r -V "$IMAGE_NAME" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../ubuntu-9.04-desktop-amd-custom.iso .

<9>使用虛擬機(如virtualbox)測試iso文件。主要測試其光盤的完整性自校驗是否正確,以及能否正常安裝。

<10>刻錄iso

(5)關於光盤使用。

<1>從光盤啟動選擇試用ubuntu。

<2>若原來硬盤沒有分區則ubuntu啟動後要適用system->administration->Partition Editor進行分區。建立一個主分區(ext3...)來安裝文件系統,建立一個擴展分區來添加一個swap分區(更多關於分區的知識自己搜索一下)。

<3>分區後打開一個終端

cd /clone

sudo ./ubuntu-cloner-gui.py啟動ubuntu cloner進行安裝。如果要保留原來/home(包含桌面)中的文件在安裝過程中選擇使用原來文件系統不格式化。

一份關於光盤制作的終端記錄如下:

ubuntu clone command line

http://www.linuxidc.com/Linux/2011-04/34098p2.htm

需要對光盤做更多修改請參考下文

How to Customise the Ubuntu Desktop CD

https://help.ubuntu.com/community/LiveCDCustomization

本文重點講述制作光盤的過程,其它不明白的可以自己查詢一下。此方法在不影響原來live cd功能的前提下為光盤添加系統克隆功能。

此方法的產生要感謝debian ,ubuntu ,ubuntu cloner的所有開發人員。

部分截圖解如下:

Copyright © Linux教程網 All Rights Reserved