如何正确配置 pxelinux.cfg/default 以便从网络安装 Ubuntu?

如何正确配置 pxelinux.cfg/default 以便从网络安装 Ubuntu?

我正在尝试设置 PXE,以便通过本地网络安装 Ubuntu 13.10 Server x64。到目前为止,我可以通过 PXE 启动,并且当使用pxelinux.cfg/default默认提供的 PXE 时,可以通过从镜像下载来安装 Ubuntu。

我希望能够从 NFS 安装 Ubuntu。我进行了pxelinux.cfg/default如下编辑:

1  # D-I config version 2.0
2  default ubuntu-installer/amd64/boot-screens/vesamenu.c32
3  menu title Ubuntu setup
4  label ubuntu-13.10-server-amd64
5          menu label ubuntu-13.10-server-amd64
6          kernel 3.11.0.18-generic
7          append netboot=nfs initrd=install/initrd.gz nfsroot=192.168.1.75:/↵
   exports/ubuntu-13.10-server-amd64 ip=dhcp rw
  • 192.168.1.75 是我用于 DHCP、DNS 和 NFS 的服务器的 IP,
  • 3.11.0.18-generic我通过运行获取了内核uname -r
  • showmount -e 192.168.1.75给出:

    Export list for 192.168.1.75:
    /exports/ubuntu-13.10-server-amd64 192.168.1.0/24

    该目录包含原始 ubuntu-13.10-server-amd64 映像的内容。

从 PXE 启动时,我得到了原始屏幕(见下面的屏幕截图),然后是另一个屏幕。按下Tab显示命令:

3.11.0.18-generic netboot=nfs initrd=install/initrd.gz nfsroot=192.168.1.↵ 75:/exports/ubuntu-13.10-server-amd64 ip=dhcp rw

按下Enter无反应。

我想象我的更改有些错误pxelinux.cfg/default

它出什么问题了?

是否有关于要设置的选项的全面文档?

是否有日志可以帮助了解问题所在?

在此处输入图片描述

在此处输入图片描述

答案1

听起来你的内核和 init 没有加载(因此挂起)。你确定你的路径正确吗?另外,检查你的文件名——我不确定你从哪里得到 3.11.0.18-generic,我的 14.04 服务器 DVD 网络启动内核是一个名为“linux”的文件。

这一行:

6          kernel 3.11.0.18-generic

表示3.11.0.18-genericTFTP 服务器的根目录中存在一个名为 的文件,例如\tftpboot\3.11.0.18-generic\var\lib\tftp\3.11.0.18-generic。我们将其称为 TFTPROOT。同样,对于install/initrd.gz- 是否有文件TFTPROOT/install/initrd.gz

第 2 行 ( ) 上的路径default ubuntu-installer/amd64/boot-screens/vesamenu.c32表示您已将 DVDISO/install/netboot 的内容复制到 TFTP 服务器根目录中。例如,您可能有一个名为 的文件夹TFTPROOT/ubuntu-installer。但是,对于我来说,用于网络启动的正确内核和初始化文件包含在 DVDISO/install/netboot/ubuntu-installer/amd64 中。因此您的路径应该kernel ubuntu-installer/amd64/linuxappend initrd=ubuntu-installer/amd64/initrd.gz ...

答案2

我遇到了这个问题,在更改内核和 inird 的文件权限后就可以按回车键。

尝试设置chmod 777 3.11.0.18-generic

相关内容