Networking

無法從 PXE GRUB 菜單引導 ISO 文件

  • February 19, 2021

哎呀朋友們。今天我使用 dnsmasq 作為 DHCP 代理以及 tftp 伺服器來設置我的 PXE 伺服器。我想設置一個 grub 菜單,以便能夠在 EFI 和 Legacy 模式下執行 Windows ISO 文件,具體取決於客戶端。所以我使用以下方法設置了我的 grub pxe 文件夾:

grub-mknetdir

我使用以下命令為 EFI 和舊版引導創建了 grub 映像

grub-mkimage -d /usr/lib/grub/i386-pc/ -O i386-pc-pxe -o ./booti386 -p ‘/var/lib/tftpboot/boot/grub’ pxe tftp

grub-mkimage -d /usr/lib/grub/x86_64-efi/ -O x86_64-efi -o ./bootx64.efi -p ‘/var/lib/tftpboot/boot/grub’ efinet tftp

現在我已經從 /boot/grub 複製了 grub.cfg 文件

$$ .. $$我的伺服器,它就像所有 linux 發行版的預設 grub 載入器一樣工作。為了檢查它是如何工作的,我在 Virtualbox 上設置了一個通用系統來找出問題所在。 現在我使用選項 l) 進行 PXE 引導

現在我使用選項 l) 進行 PXE 引導

Grub loader 出現,一切正常,尚未修改。

Grub loader 出現,一切正常,尚未修改。

在此處輸入圖像描述

我嘗試選擇一些東西,例如 Clonezilla 或 Debian Netinst 不幸的是,我只得到黑屏和伺服器上的以下 tftp syslog。

10 月 13 日 17:45:05 millenium-fbe48 dnsmasq-tftp

$$ 4797 $$:無法將 /var/lib/tftpboot/iso/clonezilla/clonezilla-live-20191009-eoan-amd64.iso 發送到 192.168.2.89 “無法將 iso 發送到 192.168.2.89”

在此處輸入圖像描述

我必須做些什麼才能載入iso文件嗎?我使用循環方式讓它們執行,但是有沒有類似超時或其他的東西?

//編輯:現在差不多 5 分鐘後,我得到了以下輸出。有什麼辦法可以提高速度嗎? 在此處輸入圖像描述

grub.cfg 中是否有類似 pxe-nfs-loop-iso 語法的東西用於 pxegrub?

感謝所有的答复。我能夠擺脫 nfs 問題,但現在我陷入了困境。nfs 部分執行良好,我還可以掛載 squashfs 文件。不幸的是我得到這個核心恐慌,有人知道問題可能是什麼嗎?

在此處輸入圖像描述

//編輯!哎呀朋友們。我能夠讓它執行。我是那麼快樂的朋友,你無法相信。查看我目前的 grub.cfg 配置。

   menuentry "Netroot" {
  echo 'Trying to boot via nfs ...'
  load_video
  insmod gzio
  if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
  insmod part_msdos
  insmod ext2
  echo 'Loading Linux ...'
  linux /programs/clonezilla/live/vmlinuz root=/dev/nfs ip=dhcp rw netboot=nfs fetch=tftp://192.168.2.55/programs/clonezilla/live/filesystem.squashfs nfsroot=192.168.2.55:/var/lib/tftpboot/programs/clonezilla/live/ rw boot=live username=user union=overlay config components noswap edd=on nomodeset nodmraid locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch=no net.ifnames=0 nosplash noprompt 
  echo 'Loading initial ramdisk ...'
  initrd /var/lib/tftpboot/programs/clonezilla/live/initrd.img
}

這樣它執行良好,但不幸的是非常慢。有什麼辦法可以提高數據速率?

在此處輸入圖像描述

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