无忧启动论坛

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

[已解决] 如何编写IPXE脚本,使TFTP与HTTP自动适应?

[复制链接]
跳转到指定楼层
1#
发表于 12 小时前 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 mygamexxx 于 2025-8-15 14:20 编辑

使用ping http://${next-server}/boot && set s_boot http://${next-server}/boot || set s_boot tftp://${next-server}/boot,显示无此命令。
希望如果HTTP服务器存在,则使用http://${next-server}/boot,否则使用tftp://${next-server}/boot。

set s_boot tftp://${next-server}/boot
isset http://${next-server}/boot && set s_boot http://${next-server}/boot


HTTP能通的时候正常,HTTP不通的时候就不行。
2#
发表于 11 小时前 来自手机 | 只看该作者
kernel,http://${next-server}/boot || set booturl  tftp://${next-server}/boo && kernel …
回复

使用道具 举报

3#
发表于 11 小时前 来自手机 | 只看该作者
手机多输了个标点

点评

kernel http://${next-server}/boot || set booturl tftp://${next-server}/boot && kernel 结果一样,因为HTTP关闭时,会尝试连接http://${next-server},连接超时后,返回到UEFI界面。  详情 回复 发表于 11 小时前
回复

使用道具 举报

4#
 楼主| 发表于 11 小时前 | 只看该作者
本帖最后由 mygamexxx 于 2025-8-15 09:25 编辑

kernel http://${next-server}/boot || set booturl tftp://${next-server}/boot && kernel

结果一样,因为HTTP关闭时,会尝试连接http://${next-server},连接超时后,返回到BOOT MANAGER界面。

点评

:kkk chain http://${next-server}/boot || chain tftp://${next-server}/boot || goto kkk  详情 回复 发表于 7 小时前
回复

使用道具 举报

5#
发表于 8 小时前 | 只看该作者
来学习下
回复

使用道具 举报

6#
发表于 7 小时前 | 只看该作者
本帖最后由 江南一根葱 于 2025-8-15 13:12 编辑
mygamexxx 发表于 2025-8-15 09:13
kernel http://${next-server}/boot || set booturl tftp://${next-server}/boot && kernel

结果一样 ...




复制代码

chain http://${next-server}/boot ||
chain tftp://${next-server}/boot ||
goto kkk

点评

再次尝试,成功: set s_boot http://${next-server}/boot chain http://${next-server}//menu.ipxe || set s_boot tftp://${next-server}/boot chain /menu.ipxe  详情 回复 发表于 6 小时前
估计是没办法!! HTTP服务器打开 isset ${ip} || dhcp set s_boot http://${next-server}/boot chain http://${next-server}/boot || set s_boot tftp://${next-server}/boot echo ${s_boot}  详情 回复 发表于 6 小时前
回复

使用道具 举报

7#
 楼主| 发表于 6 小时前 | 只看该作者
本帖最后由 mygamexxx 于 2025-8-15 14:08 编辑
江南一根葱 发表于 2025-8-15 12:59
chain http://${next-server}/boot ||chain tftp://${next-server}/boot ||goto kkk

估计是没办法!!
HTTP服务器打开
    isset ${ip} || dhcp
    set s_boot http://${next-server}/boot
    chain http://${next-server}/boot || set s_boot tftp://${next-server}/boot
    echo ${s_boot}
    sleep 1000

wechat_2025-08-15_140440_093.png (7.17 KB, 下载次数: 1)

wechat_2025-08-15_140440_093.png
回复

使用道具 举报

8#
 楼主| 发表于 6 小时前 | 只看该作者
本帖最后由 mygamexxx 于 2025-8-15 14:22 编辑
江南一根葱 发表于 2025-8-15 12:59
chain http://${next-server}/boot ||chain tftp://${next-server}/boot ||goto kkk

再次尝试,成功:
set s_boot http://${next-server}/boot
chain http://${next-server}/menu.ipxe || set s_boot tftp://${next-server}/boot
chain /menu.ipxe
谢谢葱大!!!
回复

使用道具 举报

9#
发表于 5 小时前 | 只看该作者
谢谢楼主分享
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-8-15 20:36

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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