AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-306936

kRYOoX's questions

Martin Hope
kRYOoX
Asked: 2016-09-23 08:22:56 +0800 CST

UEFI iPXE 引导到 debian 会导致 grub shell

  • 3

对于一些上下文,我是一名系统管理员学生,试图扩展我的网络知识,因为这不是我的强项。

目前,我正在试验 PXE。几天前,我设置了几台 ESXi 虚拟机,一台是 DHCP 和 TFTP 服务器,另外两台是 BIOS 和 UEFI 客户端。我设法在 BIOS 和 UEFI 机器上通过 PXE 启动 debian。

我听说了 iPXE 以及它带来的可能性(例如在 HTTP、iSCSI 上启动……)并决定试一试。目前,我仍在尝试启动我的本地 debian netboot 安装程序,我想我会在确保安装正确后测试远程文件。


在这一点上,这就是我的 DHCP conf 的样子(减去不真正感兴趣的东西):

option arch code 93 = unsigned integer 16;
class "pxe-clients" {
    match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
    option tftp-server-name "192.168.0.5";
    next-server 192.168.0.5;
    if option arch = 00:00 {
        if exists user-class and option user-class = "iPXE" {
            filename = "pxelinux.0";
        } else {
            filename = "undionly.kpxe";
        }
    } elsif option arch = 00:02 or option arch = 00:06 or option arch = 00:07 or option arch = 00:08 or option arch = 00:09 {
        if exists user-class and option user-class = "iPXE" {
            filename = "bootnetx64.efi";
        } else {
            filename = "ipxe.efi";
        }
    } else {
        filename = "UNKNOWN_VCI";
    }
}

192.168.0.5是 DHCP/TFTP 服务器的 LAN IP。

至于我的 TFTP 服务器的根目录:

root@vmpxe:/srv/tftp# ls -l
total 968
lrwxrwxrwx 1 root root   37 Sep 22 14:01 bootnetx64.efi -> debian-installer/amd64/bootnetx64.efi
drwxrwxr-x 3 root root 4.0K Sep 22 00:21 debian-installer
-rw-r--r-- 1 root root 896K Sep 22 16:00 ipxe.efi
lrwxrwxrwx 1 root root   47 Sep 22 00:21 ldlinux.c32 -> debian-installer/amd64/boot-screens/ldlinux.c32
lrwxrwxrwx 1 root root   33 Sep 22 00:21 pxelinux.0 -> debian-installer/amd64/pxelinux.0
lrwxrwxrwx 1 root root   35 Sep 22 00:21 pxelinux.cfg -> debian-installer/amd64/pxelinux.cfg
-rw-r--r-- 1 root root  64K Sep 22 16:00 undionly.kpxe
-rw-rw-r-- 1 root root   64 Sep 22 00:21 version.info

同样,我坚持这样一个事实,即在 iPXE 之前,两种架构上的一切都运行良好。我所做的唯一更改是从 iPXE 的网站下载undionly.kpxe和ipxe.efi文件,并编辑 DHCP conf 以将文件名设置包装在if exists user-class and option user-class = "iPXE" {...} else {...}条件中。

现在,BIOS 机器执行 PXE -> iPXE -> Debian 的 netboot 安装程序。一切正常。

但是,UEFI 机器执行 PXE -> iPXE -> grub shell。

我试图 tcpdump 进程,但没有产生任何结果:所有流量看起来都是正常的和预期的。它与我在 iPXE 之前所拥有的没有太大区别。

知道这里可能会发生什么吗?


编辑:进一步的 tcpdump 测试表明,如果没有 iPXE,我的 EFI 机器会为引导加载程序和一堆其他文件发送 RRQ 数据包,我认为这些文件由引导加载程序本身引用。但是,对于 iPXE,只有引导加载程序我只看到引导加载程序。

所以我想正确的问题是:iPXE 会发生什么,因为它不能检索标准 PXE 正确下载的所有文件?

debian bios pxe-boot uefi ipxe
  • 1 个回答
  • 3027 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve