Linux

在 CentOS 上創建自定義 ISO 會導致 dracut-initqueue 超時

  • June 30, 2020

我可以將庫存 CentOS 7.7 ISO 啟動到虛擬機(和 USB 驅動器上)就好了,但是當我嘗試直接從庫存 ISO 製作自定義 ISO 時,我遇到了障礙。

在最初選擇 to 之後Install CentOS,系統掛起Starting dracut initqueue hook...,然後重複initqueue[696]: Warning: dracut-initqueue timeout - starting timeout scripts,直到它最後說Could not boot.然後/dev/root does not exist,然後它轉到 Dracut 緊急外殼。

我正在按照我見過的步驟進行操作:

sudo mkdir -p /media/mydrive
sudo mount -o loop ~user/CentOS-7-x86_64-DVD-1908.iso /media/mydrive
mkdir ~/customiso
sudo rsync -av /media/mydrive ~/customiso
cd ~/customiso
sudo genisoimage -o ../centoscustom.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -v -T -V 'centos custom' .

(也使用 mkisofs 代替 genisoimage,不滿意)

選擇安裝後,它總是在同一點失敗。我什至弄亂了 isolinux.cfg 以使該append行與文件名匹配,所以

append inird=inird.img inst.stage2=hd:LABEL=centoscustom quiet

我正在嘗試將一些 kickstart 操作放入 CentOS 7.7 的自定義 ISO 中。我最初認為我與 USB 製作或 ks.cfg 文件有關,但我已經回歸到只是試圖讓股票 ISO 的直接副本首先工作。

我剛剛想通了。genisoimage命令和isolinux.cfg文件中需要相互匹配的兩件事如下THISNEEDSTOMATCH

genisoimage -o ../centoscustom.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -v -T -V 'THISNEEDSTOMATCH' .

append inird=inird.img inst.stage2=hd:LABEL=THISNEEDSTOMATCH quiet

我只是在這個問題上苦苦掙扎(或者說,同樣的症狀)。原來我實際上忘記包括整個images/install.img其中,驚喜,驚喜,意味著安裝程序無法找到 stage2。

mkisofs/genisoimage 只是盲目地包含“暫存區”目錄中的任何內容。

簡而言之,你需要 isolinux 和 install.img 才能成功。我解決問題的方法是循環安裝庫存圖像並檢查它。

作為參考,整個事情是這樣的(自己替換合適的鏡子。)

mkdir iso
rsync -av rsync://mirrors.dotsrc.org/centos/8.2.2004/BaseOS/x86_64/os/isolinux ./iso/
rsync -av rsync://mirrors.dotsrc.org/centos/8.2.2004/BaseOS/x86_64/os/images/*.img ./iso/images/
cp my_custom_isolinux.cfg iso/isolinux/isolinux.cfg #Optional
cp my_custom_splash.png iso/isolinux/splash.png #Optional
cd iso && mkisofs -o ../qeyeboot8.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "CentOS-8-2-2004-x86_64-dvd" -R -J -v -T .
isohybrid ../qeyeboot8.iso #Optional, allows the image to also be booted from USB

引用自:https://unix.stackexchange.com/questions/554878