在使用PXE安装Debian时,使用preseed.cfg文件时遇到了问题。
我的网卡需要debian内核的firmware-bnx2软件包。
在PXE启动过程中,制造商允许系统设置其networking接口并访问initrd和内核,并开始安装。 在这个initrd中,我已经把考虑到的pressed的.fg文件。 但是在我安装这个bnx2软件包之前,安装不能自动完成。
我不知道如何在启动过程中安装bnx2软件包。 我认为这是可能的,通过指示
di hw-detect/load_firmware boolean true
文件说
# If non-free firmware is needed for the network or other hardware, you can # configure the installer to always try to load it, without prompting. Or # change to false to disable asking.
但是我不知道在哪里设置这个软件包以及如何安装它。
任何人都可以帮我吗?
非常感谢!
您可能想要将缺less的固件添加到debian-installer文件系统。 以下是如何继续。
首先是一些上下文:让我们承认我们已经configuration了PXEconfiguration为使用/ tftpboot作为TFTP根,并使用下面的“菜单”,而不是在pxelinux.cfg默认:
默认安装标签安装
菜单标签^安装
菜单默认
内核debian-installer / amd64 / linux
append vga = 788 initrd = debian-installer / amd64 / initrd.gz auto = true interface = auto priority = critical url = http://192.0.2.5 preseed / url = http://192.0.2.5/my-custom-preseed .cfg console = ttyS1,115200n8
所以从那里:
cd / tftpboot / debian-installer / amd64 /
cp initrd.gz initrd.gz.orig
mkdir -p tmp / initrd; cd tmp / initrd
zcat ../../inirt.gz | cpio -iv
apt-get install - 只下载固件-bnx2 firmware-bnx2x
cd / tftpboot / debian-installer / amd64 / tmp / initrd
dpkg-deb -x /var/cache/apt/archives/firmware-bnx2_*.deb ../
dpkg-deb -x /var/cache/apt/archives/firmware-bnx2x_*.deb ../
cp -a ../lib/firmware lib / firmware
cd / tftpboot / debian-installer / amd64 / tmp / initrd
找 。 -print0 | cpio -0 -H newc -ov | gzip -c> ../../initrd.gz
你完成了,试试看。
这可能是有点偏离的path,但我已经在iPXE作为实际的引导装载程序运气好。 除了其他的优势之外,它还有一个机制来和你的initrd一起加载一个内核模块。 查看http://ipxe.org/cmd/imgfetch?redirect=1作为例子。