$ lsb_release -rd
Description: Ubuntu 14.04.1 LTS
Release: 14.04
dpkg -l grub-efi-amd64-signed
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-======================-================-================-=================================================
iU grub-efi-amd64-signed 1.34+2.02~beta2- amd64 GRand Unified Bootloader, version 2 (EFI-AMD64 ve对tftpserver文件的Grub请求不以tftproot作为前缀。尽管设置了“前缀”变量。这是在UEFI引导模式下观察到的。这将导致启动失败,因为grub无法获取grub.cfg。
grub提示符的相关交单:
prefix=(tftp,10.10.1.13)/grub
root=tftp,10.10.1.13
pxe_default_server=10.10.1.13
net_default_ip=10.10.1.161
net_default_mac=a0:d3:c1:fb:86:94
net_default_server:10.10.1.13
grub_cpu=x86_64
grub_platform=efitcpdump o/p
1382 17:33:56.955465 IP 10.10.1.161.25300 > 10.10.1.13.tftp: 58 RRQ "/grub/x86_64-efi/command.lst" octet blksiz e 1024 tsize 0
1383 17:33:56.956640 IP 10.10.1.13.45600 > 10.10.1.161.25300: UDP, length 24
1384 17:33:56.956885 IP 10.10.1.161.25301 > 10.10.1.13.tftp: 53 RRQ "/grub/x86_64-efi/fs.lst" octet blksize 102 4 tsize 0
1385 17:33:56.958146 IP 10.10.1.13.42098 > 10.10.1.161.25301: UDP, length 24
1386 17:33:56.958368 IP 10.10.1.161.25302 > 10.10.1.13.tftp: 57 RRQ "/grub/x86_64-efi/crypto.lst" octet blksize 1024 tsize 0
1387 17:33:56.959412 IP 10.10.1.13.33848 > 10.10.1.161.25302: UDP, length 24
1388 17:33:56.959646 IP 10.10.1.161.25303 > 10.10.1.13.tftp: 59 RRQ "/grub/x86_64-efi/terminal.lst" octet blksi ze 1024 tsize 0
1389 17:33:56.961969 IP 10.10.1.13.47148 > 10.10.1.161.25303: UDP, length 24
1390 17:33:56.962482 IP 10.10.1.161.25304 > 10.10.1.13.tftp: 44 RRQ "/grub/grub.cfg" octet blksize 1024 tsize 0
1391 17:33:56.966059 IP 10.10.1.13.38281 > 10.10.1.161.25304: UDP, length 24我在这里有遗漏什么吗?
发布于 2019-03-22 22:43:57
您可能需要将tftp服务器的根移动到/grub,以匹配签名引导加载程序分配的前缀。
/etc/default/tftpd-hpa:
OPTIONS="-v -s /grub"
TFTP_DIRECTORY="/grub"你能从grub中看到grub.cfg文件吗?
grub> cat (tftp,10.10.1.13)/grub/grub.cfg或
grub> cat (tftp,10.10.1.13)/grub.cfg我还发现,调试该文件有助于执行以下操作:
grub> configfile (tftp,10.10.1.13)/grub/grub.cfg
error: can't find command 'kernel'
error: can't find command 'append'
...您可以使用它来检查文件的语法。
https://askubuntu.com/questions/545879
复制相似问题