Linux

pxe 啟動微軟表面

  • June 15, 2016

我想知道是否有人曾經嘗試過使用 Linux PXE 伺服器?

我已經對其進行了設置,並且可以為幾乎所有其他筆記型電腦和台式機工作。

這是我第一次嘗試這個,我們有官方的 Microsoft Surface USB 到 LAN 適配器。

這是我的 dnsmasq 配置:

interface=eno16777736,lo,eth0
#bind-interfaces
domain=netdec.lan
# DHCP range-leases
dhcp-range= eno16777736,192.168.1.3,192.168.1.60,255.255.255.0,1h
# PXE
dhcp-boot=pxelinux.0,pxeserver,192.168.1.133
# Gateway
dhcp-option=3,192.168.1.1
# DNS
dhcp-option=6,192.168.1.1, 8.8.8.8
server=8.8.4.4
# Broadcast Address
dhcp-option=28,10.0.0.255
# NTP Server
dhcp-option=42,0.0.0.0
user=nobody
pxe-prompt="Press F8 for menu.", 120
pxe-service=x86PC, "Proceed and choose your operating system", pxelinux
enable-tftp
tftp-root=/var/lib/tftpboot
log-dhcp

使用上述配置時,我們無法獲取 PXE 菜單(繼續並選擇您的作業系統),我們僅在註釋掉以下“dhcp-boot=pxelinux.0,pxeserver,192.168.1.133”時得到 pxe 菜單。

在 PXE 啟動表面時,我可以在日誌中看到以下內容;

Jun 15 14:12:15 localhost dnsmasq-dhcp[17425]: DHCPDISCOVER(eth0)   c0:33:5e:74:41:65

Jun 15 14:12:15 localhost dnsmasq-dhcp[17425]: DHCPOFFER(eth0) 192.168.1.34 c0:33:5e:74:41:65

Jun 15 14:12:31 localhost dnsmasq-dhcp[17425]: DHCPREQUEST(eth0) 192.168.1.34 c0:33:5e:74:41:65

Jun 15 14:12:31 localhost dnsmasq-dhcp[17425]: DHCPACK(eth0) 192.168.1.34 c0:33:5e:74:41:65

Jun 15 14:12:31 localhost dnsmasq-tftp[17425]: error 8 User aborted the     transfer received from 192.168.1.34

Jun 15 14:12:31 localhost dnsmasq-tftp[17425]: failed sending     /var/lib/tftpboot/pxelinux.0 to 192.168.1.34

Jun 15 14:12:31 localhost dnsmasq-tftp[17425]: sent /var/lib/tftpboot/pxelinux.0 to 192.168.1.34

當表面試圖通過 TFTP 檢索 pxelinux.0 文件時,這是一個 tcpdump。15:06:29.757118 IP 192.168.1.34.sdsc-lm > 192.168.1.133.tftp: 40 RRQ

“pxelinux.0” 八位字節 blksize 1468 15:06:29.758004 IP 192.168.1.133.54039 > 192.slm:8.6 UDP,長度 27 15:06:29.759410 IP 192.168.1.34.sdsc-lm > 192.168.1.133.54039:UDP,長度 30 15:06:29.782301 IP 192.168.1.34.3ds-lm > 192.168.1.133.tftp

“pxelinux.0”八位字節 blksize 1468

這真的很簡單,我錯過了一些東西還是不可能?

謝謝你們。

Microsoft Surface 是僅限 UEFI 的設備;您將永遠無法在該設備上啟動 pxelinux.0 NBP(僅限 BIOS)。這就是為什麼您看不到啟動菜單的原因。

如果你想對 Microsoft Surface 進行 PXE,你需要像Serva這樣能夠自動 PXE 引導/安裝 UEFI 和 BIOS 客戶端的東西。(我與Serva開發有關)

引用自:https://serverfault.com/questions/784216