天天看點

ISO定制

ISO定制

定制ISO制作教程

# 定制ISO

1,環境準備

拷貝到指定目錄或者挂載系統鏡像

mkdir kylinos (存放鏡像的所有檔案)

建立自己的工作目錄

mkdir iso

把鏡像所有的檔案都拷貝到工作目錄

scp -r /root/kylinos * /root/iso

2,内部檔案分析

.discinfo此檔案包含安裝盤的識别資訊,缺少此檔案,則安裝時找不到CD光牒

.treeinfo記錄不同的安裝方式下,安裝程式所在的目錄結構

images/啟動檔案和驅動盤映像檔案目錄,最重要的是第二階段的引導映像

Packages/二進制的RPM安裝包目錄

repodata/RPM安裝包的描述檔案,如依賴關系,包含檔案,校驗資訊

isolinux/isolinux.bin 非模拟模式下的啟動引導程式,當使用mkisofs指令時,-b參數需要指向它

isolinux/isolinux.cfg啟動菜單(Boot Menu)配置檔案

3,修改XML檔案

修改comps.xml檔案

vi comps.xml 格式如下

Virtu-node

Virtu-node

node

false

false

ovirt-engine

。。。

Virtu-server

Virtu server

**

core

在修改完**comps.xml檔案後我們需要了解以下指令:

createrepo -g

createrepo 指令用于建立yum源(軟體倉庫),即為存放于本地特定位置的衆多rpm包建立索引,描述各包所需依賴資訊,并形成中繼資料。

-g --groupfile

指定本地軟體倉庫的組劃分,範例如下:

createrepo -g comps.xml /path/to/rpms

注意:組檔案需要和rpm包放置于同一路徑下。(可自行百度具體了解一下使用方法)

mkisofs指令

Linux mkisofs指令用于建立ISO 9660映像檔案。

mkisofs可将指定的目錄與檔案做成ISO 9660格式的映像檔案,以供刻錄CD光牒。

文法:

ISO定制

參數比較多建議了解 使用時可複制

mkisofs -v -U -J -R -T -m repoview -m boot.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e images/efiboot.img -no-emul-boot -V Kylin-Server-10(x86_64) -o ~/Kylin-Server-v6.test.iso //root/iso/

使用指令注意事項

createrepo -g 時把修改完的檔案和PackageSec先移走

mv comps.xml ~/

删除原來的repodata/檔案夾

rm -rf repodata

複制comps.xml到iso工作目錄中

cp comps.xml /root/iso

最後執行

createrepo -g comps.xml ./ 生成repodata/

mkisofs 生成iso時需要注意:

如果在執行createrpo -g 時 沒有把PackageSec檔案夾移走 mkisofs生成的ISO安裝時會安裝報錯。

生成ISO檔案:

mkisofs -v -U -J -R -T -m repoview -m boot.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e images/efiboot.img -no-emul-boot -V **-o ~/Centos-Server-v6.test.iso //root/iso/

最後會在我們的~目錄看到我們生成的iso檔案