Xenial 的 PXE 設定在 squashfs 路徑前面加上 /cdrom

Xenial 的 PXE 設定在 squashfs 路徑前面加上 /cdrom

我已經嘗試了我能想到的一切,但我一定錯過了一些東西。

我正在使用 PXE 設置,該設置從 Web 伺服器提取所有內容來安裝 16.04。

“預設”檔案包含:

LABEL Ubuntu 16.04 Desktop
MENU LABEL Xenial 16.04 Desktop
KERNEL 1604/ubuntu-installer/amd64/linux
append vga=normal ks=http://192.168.1.251/ks-1604-64-desktop.cfg initrd=1604/ubuntu-installer/amd64/initrd.gz biosdevname=0 hostname=desktop

那裡連結的 KERNEL 由 TFTP 提供,是來自 Ubuntu 網站的「網路安裝」映像的 rsync 映像。今天抓取了該鏡像和實際安裝的 iso 鏡像。

我的 Kickstart 檔案包括:

preseed --owner d-i live-installer/net-image string http://192.168.1.251/ubuntu-1604.amd64/install/filesystem.squashfs

但是,當它到達安裝程式中取得 filesystem.squashfs 的位置時,它就會終止並將其記錄在 syslog 中:

base-installer: info: Downloading /cdromhttp://192.168.1.251/ubuntu-1604.amd64/install/filesystem.squashfs to /tmp/live-installer/filesystem.squashfs

這當然會失敗,因為 url 不應該以「/cdrom」開頭。我可以看出它正在從 preseed 行讀取 squashfs 的路徑,但我的任何設定檔中都沒有“cdrom”一詞。

我還嘗試將路徑新增為附加選項,這對於我的 14.04 安裝非常有用,如下所示:

append vga=normal ks=http://192.168.1.251/ks-1404-64-desktop.cfg initrd=ubuntu-installer/amd64/initrd.gz live-installer/net-image=http://192.168.1.251/ubuntu.1404.amd64/install/filesystem.squashfs biosdevname=0 hostname=desktop

關於如何覆蓋 16.04 的 /cdrom 前綴的任何想法嗎?

答案1

我找到了一個解決方法。編輯 fetch-url 文件,修剪變數 url 中的 /cdrom 字串。然後重新打包initrd,一切看起來都很好。我剛剛測試過。很酷。感謝孟達和我一起調查。

相關內容