(这是我的第一篇文章,希望我能正确地格式化它)。我已经添加了尽可能多的信息,而不是TL:博士。
我的基本问题是,在尝试对NFS服务器(CentOS 6.7或CentOS 7)进行PXE无盘引导时,我碰到了一些问题。我尝试过各种各样的东西,但我似乎无法复制我最初使用CentOS7服务器和客户端所取得的成功。每次我跟着我的笔记走,我就一事无成。
我得到的最常见的错误(取决于我使用的initrd.img文件或initramfs*.img )是
A ticker of *** that shows a text-based progress bar and the message
A start job is running for dev-nfs.device (xx s / 1min 30s)然后它超时,然后说
Timed out waiting for device dev-nfs.device
Dependency failed for File System Check on /dev/nfs
Dependency failed for /sysroot
Dependency failed for Initrd Root File System
Dependency failed for Reload Configuration from the Real Root当我将initramfs-3.10..img从/boot/复制到PXE映像位置时,会发生上述错误。
如果我试图从dracut生成一个新的initramfs图像文件,它也会引发上述错误。
dracut initramfsnew.img可能是我不知道如何生成适当的initramfs,或者我真的不了解initrd.img和initramfs函数。我认为之所以会出现超时,是因为NFS驱动程序还没有在引导过程的那个阶段加载,因此客户机无法正确地挂载NFS共享。我认为这是因为我已经将完全相同的PXE客户端引导到它的本地操作系统中,并手动挂载NFS共享,并且它工作了100%,所以NFS共享是活动的,并且可以工作。我相信我对initrd.img和initramfs*.img的工作原理有错误的理解。
如果我从一个initrd.img镜像站点下载CentOS,我可以得到90%的路径,然后错误将更改为
No /sbin/init trying fallback我现在处于一个(因为缺少一个更好的、半加载的) shell,它为我提供了NFS共享的基本导航。我可以访问/home/disklessuser/甚至写入NFS或从NFS读取新文件(服务器和客户端都测试了简单的“触摸”命令)。似乎缺少的主要是这个实例中的登录选项,以及目录的适当边界(即,在引导过程的此时,我似乎以root身份登录)。
基本配置是相当标准的AFAIK:
/var/lib/tftpboot/pxelinux.cfg/default包含(我省略了已知的工作位- PXE工作并指向正确的映像等):
menu label ^1) CentOS 7
kernel /images/centos7/vmlinuz
append root=/dev/nfs initrd=/images/centos7/initrd.img nfsroot=10.10.10.10:/srv/nfs/diskless/images/centos7/root rw selinux=0我尝试过以上的变体,比如用initrd.img (位于服务器的/boot/中的各种版本)替换initramfs3.10*.img,并尝试添加以下参数
ip=dhcp因为dracut文档表明,这将告诉它从DHCP而不是PXE菜单中获取nfsroot路径。
目前,我的DHCP配置如下:
subnet 10.10.10.0 netmask 255.255.255.0 {
option broadcast-address 10.10.10.255;
option routers 10.10.10.1;
range 10.10.10.100 10.10.10.150;
next-server 10.10.10.10;
option root-path "10.10.10.10:/var/lib/tftpboot";
filename "pxelinux.0";
}这可能与PXE菜单中规定的NFS份额相冲突吗?
无论如何,我希望得到任何指导--也许对我来说,最有针对性的是如何处理initrd或initramfs。我猜想两者并没有太大的不同,但是如何生成一个应该(希望)包含基本网络驱动程序以允许NFS装入的新驱动程序呢?
其次,当我使用存储在/os/x86_64/isolinux下的initrd.img镜像目录时,为什么/sbin/init会丢失?
发布于 2019-04-28 16:56:55
根据您的信息,很难确定是什么导致了超时。以下几点建议:
关于启动实例的几句话:
https://serverfault.com/questions/763806
复制相似问题