无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 6619|回复: 12
打印 上一主题 下一主题

[求助] 求教大家 NAS怎么设置 iPXE 启动?

[复制链接]
跳转到指定楼层
1#
发表于 2021-8-17 21:02:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
300无忧币
问题, NAS怎么设置使用PXE启动呢?我的最终想法是 用ipxe启动wim文件就行,使用http或ftp 或tftp都行,但目前我不知道怎么设置,这里请教下大伙,谢谢大家啦

环境:
   NAS:威联通 TS-451D


NAS设置的是 静态192.168.0.72


NAS里开启了DHCP,TFTP服务
NAS的IP是192.168.0.72, 那么这里的DHCP就用192.168.3.1 ,那个TFTP服务器地址我不知道填写啥,还有启动文件,这样填写测试都是启动不了


TFTP服务设置


TFTP根目录, 这里的文件是下载论坛的一个网友的,链接如下, 人家路由器的都行,没理由NAS不行呀

[发布] 路由器设置TFTP+PXE急速启动winpe电脑维护(http或ftp加载)



2#
 楼主| 发表于 2021-8-17 21:08:11 | 只看该作者

2021/8/19更新,ipxe怎么自动进入菜单呢?

本帖最后由 2011chs 于 2021-8-19 22:14 编辑

2021/8/19  23:00
结贴, 经过两天奋斗, 终于OK了, 使用了江南一棵葱的ipxe.efi 可以自动进入ipxe菜单, 原来我之前用的别人的ipxe.efi版本太老了

2021/8/19 ,, 帖子不能编辑,只好改2楼的内容
经过两天鼓捣, 终于成功使用ipxe 启动了用wimboot的方式加载了http的wim文件 , 但是启动并不完美
    a. 开始启动不成功, 是因为nas的DHCP和tftp网段不一样, 后来干脆把路由器的DHCP关闭,只要nas的DHCP这样就引导启动成功了
    b. nas的dhcp启动文件填写ipxe.efi,在ipxe启动界面要按Ctrl + B,先dhcp获取ip,然后chain http://192.168.0.72/menu.txt 进入ipxe菜单界面,然后选winpe进启动成功了
    c. 所以现在的问题有2个                                 1. 怎么自动判断启动类型,bios时自动启动ipxe.bios, efi时自动引导ipxe.efi启动呢, dhcp启动文件只能填其中一个?
           2. 怎么不用在ipxe界面不用手动输入命令就自动进入ipxe的启动菜单呢?
我在网上了解了下, 自动选择efi还是bios引导,貌似他们是设置dhcp的一个配置文件, 但nas的dhcp没有那个文件配置呀,启动文件只能填其中一个

补充点图片
tftp根目录


web根目录


boot目录内容


dhcp设置


ipxe的启动菜单文件menu.txt
  1. #!ipxe
  2.    set menu-timeout 10000
  3.    set menu-default WinPE
  4.    set xieyi:string http
  5.    isset ${ip} || dhcp
  6.    
  7. :start
  8.   menu iPXE Boot Menu --${platform}--${ip}
  9.   item --gap --             --------------------------------- WinPE --------------------------------
  10.   
  11.   item WinPE               Boot WinPE x64 (wimboot)
  12.   item

  13.   item --gap --             ---------------------------- Advanced Options -----------------------
  14.   item --key c config       Configure settings                                   -- c
  15.   item shell                      Drop to iPXE shell
  16.   item reboot                  Reboot computer
  17.   item --key x exit           Exit iPXE and continue BIOS boot           -- x
  18.   choose --timeout ${menu-timeout} --default ${menu-default} selected
  19.   goto ${selected}

  20. :shell
  21.   echo Type 'exit' to get the back to the menu
  22.   shell
  23.   goto start

  24. :reboot
  25.   reboot

  26. :exit
  27.   exit

  28. :config
  29.   config
  30.   goto start

  31. :WinPE
  32.     kernel ${xieyi}://${next-server}/boot/wimboot  gui || goto retry
  33.     #在bios和efi不同环境取相应的文件
  34.     iseq ${platform} pcbios  && initrd ${xieyi}://${next-server}/boot/bootmgr  bootmgr ||
  35.     iseq ${platform} efi  && initrd -n bootx64.efi ${xieyi}://${next-server}/boot/bootmgfw.efi ||
  36.     initrd ${xieyi}://${next-server}/boot/bcd  BCD ||
  37.     initrd ${xieyi}://${next-server}/boot/boot.sdi   boot.sdi ||
  38.     initrd ${xieyi}://${next-server}/boot/segoen_slboot.ttf segoen_slboot.ttf ||
  39.     initrd ${xieyi}://${next-server}/boot/segoe_slboot.ttf segoe_slboot.ttf ||
  40.     initrd ${xieyi}://${next-server}/boot/segmono_boot.ttf segmono_boot.ttf ||
  41.     initrd ${xieyi}://${next-server}/boot/wgl4_boot.ttf wgl4_boot.ttf ||  #bootres.dll和wgl4_boot.ttf负责出窗,其它三个负责旋转出水
  42.     initrd ${xieyi}://${next-server}/boot/bootres.dll bootres.dll ||
  43.     iseq ${platform} pcbios  && initrd ${xieyi}://${next-server}/boot/pe32.wim boot.wim ||
  44.     iseq ${platform} efi && initrd -n boot.wim ${xieyi}://${next-server}/boot/pe64.wim ||
  45.     boot || goto retry
  46.     goto start

  47. :retry
  48.   imgfree
  49.   prompt Error! press any key to back menu
  50.   goto start
复制代码



启动过程
要手动输入命令, 这个麻烦,要能自动进入目录就完美了

启动菜单


载入文件界面, 载入完成就启动成功了



UEFI.jpg (88.47 KB, 下载次数: 210)

UEFI.jpg

BIOS.jpg (67.37 KB, 下载次数: 226)

BIOS.jpg

web2.png (4.55 KB, 下载次数: 206)

web2.png

web1.png (4.67 KB, 下载次数: 225)

web1.png

tftp.png (2.34 KB, 下载次数: 234)

tftp.png

efi.png (2.93 KB, 下载次数: 234)

efi.png

dhcp.png (45.55 KB, 下载次数: 220)

dhcp.png

ipxe3.png (5.11 KB, 下载次数: 224)

ipxe3.png
回复

使用道具 举报

3#
发表于 2021-8-17 21:31:40 | 只看该作者
那个TFTP服务器地址我不知道填写啥:启动文件放那裏就填那裏的ip,也是放NAS就是192.168.0.72

评分

参与人数 1无忧币 +3 收起 理由
2011chs + 3 赞一个!

查看全部评分

回复

使用道具 举报

4#
发表于 2021-8-17 22:06:52 | 只看该作者
看图里的报错,可能是TFTP连通性有问题?看看是设置启动文件或者目录哪里不对劲?

评分

参与人数 1无忧币 +3 收起 理由
2011chs + 3 tftp是好的,后面把路由器的dhcp关闭,只用.

查看全部评分

回复

使用道具 举报

5#
发表于 2021-8-17 23:58:26 | 只看该作者
tftp的IP地址是NAS的IP地址,先测试一下tftp服务,我估计还是dhcp-boot=lpxelinux.0这个选项没有被你的tftp服务器设置好。

评分

参与人数 1无忧币 +3 收起 理由
2011chs + 3 赞一个!

查看全部评分

回复

使用道具 举报

6#
发表于 2021-8-18 09:29:26 | 只看该作者
这就是百度看看别人帖子照搬的效果,理论还没搞清楚就去实浅,当然不行了,还是在电脑用TinyPXE吧,有别人做好现成的

评分

参与人数 1无忧币 +3 收起 理由
2011chs + 3 赞一个!

查看全部评分

回复

使用道具 举报

7#
发表于 2021-8-18 16:31:37 | 只看该作者
你NAS的IP为192.168.0.72,DHCP服务器为什么要分配192.168.3.x段地址。

评分

参与人数 1无忧币 +15 收起 理由
2011chs + 15 是的,都是因为那个路由器的dhcp,后来把路.

查看全部评分

回复

使用道具 举报

8#
发表于 2021-8-18 16:35:06 | 只看该作者
TFTP服务器地址就填NAS的地址。TFTP服务不可跨段,DHCP分配的地址要与TFTP地址是一个地址段才行。

评分

参与人数 1无忧币 +3 收起 理由
2011chs + 3 是的,都是因为那个路由器的dhcp,后来把路.

查看全部评分

回复

使用道具 举报

9#
 楼主| 发表于 2021-8-19 17:25:44 | 只看该作者
本帖最后由 2011chs 于 2021-8-19 19:56 编辑

进过两天鼓捣,终于小有成果,现在的问题主要是怎么自动进入ipxe的目录呢?更新内容在2楼,1楼不能编辑,不知道为啥, 2021、8、19
回复

使用道具 举报

10#
发表于 2021-8-19 21:52:44 | 只看该作者
路由器是啥?可以考虑在nas搭一个虚拟机,里面装一个openwrt,只提供dhcp和tftp服务就可以了。。
然后参考这个文章 https://www.haiyun.me/archives/1384.html ,修改/etc/dnsmasq.conf。然后自动读取菜单的话,可以用那个 江南一根葱 大佬的ipxe.efi和ipxe.pxe,参考他放的位置,自己对着放,或者自己编译时内嵌菜单。

点评

装虚拟机夸张咯, 基本功能nas都有, 其实还挺简单的, 只需要ipxe引导+ipxe菜单, 再加pe.wim相关文件就行了  发表于 2021-8-20 10:03
回复

使用道具 举报

11#
发表于 2021-8-20 22:13:23 | 只看该作者
启动过程
要手动输入命令, 这个麻烦,要能自动进入目录就完美了

关于这一点,要把菜单内chobit应该是自动读取http服务器中的ipxeboot.txt,也就是,你输入了dhcp服务器的http地址进浏览器,就要能看到这个文件。。。。。你要把你的menu.txt改名成ipxeboot.txt。
回复

使用道具 举报

12#
发表于 2021-8-25 22:45:40 | 只看该作者
楼主搞定了没有?想请教如何“ b. nas的dhcp启动文件填写ipxe.efi”,我参考一下以便在路由器上的dnsmasq写入来进行uefi启动,路由器的bios启动没问题。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-22 14:03

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表