我一直使用 UEFI 选项通过网络 DHCP/TFTP 从 CentOS 7 PXE 服务器将裸机服务器镜像到 CentOS 7 和 8。我还想构建 Ubuntu 20.04 服务器。
我按照文档操作,从 Ubuntu ISO 的 casper 目录提取 vmlinuz 和 initrd,并将它们放在基本 tftpboot 目录中。一切顺利,ISO 下载到客户端,在进入 BusyBox 并启动 initramfs 后,它完成了 ISO 的加载,但随后停在“无法在网络上找到实时文件系统”处。问题是,我能够在客户端上导航并找到 ISO,我甚至可以挂载它并看到所有内容都在那里。
我使用了不同的 ISO(例如 Ubuntu 桌面版)。我已验证 ISO 的 SHA 总和。
这是我正在使用的 grub.cfg,精简了所有内容以隔离问题。
timeout=30
timeout_style=menu
menuentry 'Ubuntu 20.04.2' {
linuxefi /vmlinuz ip=dhcp url=http://10.10.10.1/ubuntu-20.04.2-live-server-amd64.iso
initrdefi /initrd
}
menuentry 'CentOS 7.8' {
linuxefi /centos/images/pxeboot/vmlinuz ip=dhcp inst.repo=http://10.10.10.1:/centos
initrdefi /centos/images/pxeboot/initrd.img
}
CentOS 安装工作正常(/centos 是 CentOS ISO 转储的路径)。
我是否遗漏了什么?