无忧启动论坛

 找回密码
 注册
搜索
WEPE笔记本电脑手机维修小包 IT发烧友的必备工具最纯净的「微PE装机优盘」UEPON大师作品卡瑞飞系统和装机二合一超级U盘
广告位招租系统gho:最纯净好用系统下载站广告联系 QQ:184822951 微信:wuyouceo
楼主: captain_g

[分享] iPXE-UEFI网启小工具

    [复制链接]
 楼主| 发表于 2018-11-25 20:44:54 | 显示全部楼层
faly 发表于 2018-11-25 17:44
问题1解决了,应该是我下载的版本编译时内置了相应的脚本,换了你发的附件里的,ok了,按altfilename寻找 ...

如果有内置脚本,altfilename这项空着应该就行。
回复

使用道具 举报

发表于 2018-11-25 21:32:47 | 显示全部楼层
yigeren 发表于 2018-11-25 20:18
POWEROFF命令在IPXE菜单是无效的,只有重启:reboot
没去用什么在线编译的,直接在这下载现成的:http://bo ...

ipxe菜单支持背景吗,看你发的地址里有一个Ipxe.png

点评

下载的IPXE.PXE是没有console这个命令的,所以不支持,你可以自己去编译一个有支持console这个命令的版本 用法:console --picture http://${next-server}/ipxe.png IPXE还可以设置需要用户和密码登录的,但不清楚  详情 回复 发表于 2018-11-26 11:42
回复

使用道具 举报

发表于 2018-11-26 11:42:53 | 显示全部楼层
faly 发表于 2018-11-25 21:32
ipxe菜单支持背景吗,看你发的地址里有一个Ipxe.png


下载的IPXE.PXE是没有console这个命令的,所以不支持,你可以自己去编译一个有支持console这个命令的版本
用法:console --picture http://${next-server}/ipxe.png
IPXE还可以设置需要用户和密码登录的,但不清楚要怎么指定用户名和密码登录
命令:login
回复

使用道具 举报

发表于 2018-11-28 19:57:47 | 显示全部楼层
到官方论坛找到了可以设置用户名和密码录登的方法了,嘿嘿
在ipxe启动文件最前面添加如下:
login
iseq ${username} yigeren || goto reboot                #登录用户名:yigeren
iseq ${password} wuyou || goto reboot                #登录密码:wuyou


这样登录时需要输入正确的用户名和密码才能进引导菜单界面,用户名或密码输错电脑会重启,也可单独对某一条菜单行加密码

点评

感谢分享! 关于您分享的那个菜单: 判断客户端为EFI平台后,配置直接跳转到是64位启动配置部分; 针对客户端是32位EFI平台,在TPS的INI中您用了00006=efi\boot\bootia32.efi,貌似用了微软的文件,这个是  详情 回复 发表于 2018-11-29 10:35
回复

使用道具 举报

 楼主| 发表于 2018-11-29 10:35:34 | 显示全部楼层
yigeren 发表于 2018-11-28 19:57
到官方论坛找到了可以设置用户名和密码录登的方法了,嘿嘿
在ipxe启动文件最前面添加如下:
login

感谢分享!

关于您分享的那个菜单:

判断客户端为EFI平台后,配置直接跳转到是64位启动配置部分;

针对客户端是32位EFI平台,在TPS的INI中您用了00006=efi\boot\bootia32.efi,貌似用了微软的文件,这个是不需要菜单的,但是速度明显慢很多;

还有如果是原版的bootia32.efi,相应的fonts和resources文件夹中的文件不能完全删除;

去iPXE官网看了一下 platform 的介绍,因E文一般理解可能有误,似乎只能区分客户端是EFI还是PCBIOS,好像不能区分客户端是32还是64位EFI?

不知您是如何解决32位EFI启动配置问题的?尽管实际中遇到的可能性很小。

学习了H3大的全套网启文件,他搞了BIOS的、EFI的配置文件各一个,在EFI配置中,似乎是有64位或32位选择的(可能理解得不对):

cpuid --ext 29 && set x64 Y || set x32 Y,用了 isset ${x32} && set ......

也去iPXE官网看了一下 cpuid 的介绍,个人理解,就目前个人电脑在用到CPU,应该都是29吧?

最近在论坛内无意中发现并下载到了“不知”编译的32位的ipxe.efi,想弄个配置,但不知道如何“合三为一”供自动调用,烦请支招!

为了根据客户端类型自动配置,目前只好在TPS的INI文件中,对altfilename这项用了以@arch为前缀的文件名。
回复

使用道具 举报

发表于 2018-11-29 11:02:14 | 显示全部楼层
本帖最后由 yigeren 于 2018-11-29 11:03 编辑

32EFI我是直接用了微软的bootia32efi文件,加载后直接读取BOOT\BCD菜单引导的,用的TFTP协议肯定会慢了点,不过测试了下速度还能接受
也因为32EFI的平台我几乎碰不到,所以没再去弄配置菜单了,所以直接用了微软的省事,BCD直接加载引导,呵呵
有空我研究下三合一菜单的^_^
还有你检查下BCD文件,看下添加这2个参数没,速度会快一点
RamdiskTftpBlockSize
参数值为:20480
RamdiskTftpWindowSize
参数值为10

点评

以前是在服务端WIFI连接的情况下测试的,感觉很慢。 按你的指点动了下BCD,刚刚在服务端网线连接的情况下测试了一下, 所有文件包括150M的WIM文件读取完毕用时不到20秒,这个网启速度应该不错了。 再次感谢  详情 回复 发表于 2018-11-29 16:36
多谢指点!  详情 回复 发表于 2018-11-29 11:08
回复

使用道具 举报

 楼主| 发表于 2018-11-29 11:08:43 | 显示全部楼层
yigeren 发表于 2018-11-29 11:02
32EFI我是直接用了微软的bootia32efi文件,加载后直接读取BOOT\BCD菜单引导的,用的TFTP协议肯定会慢了点, ...

多谢指点!

点评

嘿,BIOS,X64EFI,X86EFI三合一菜单搞定,在虚拟机测试通过,能自动引导相应的菜单界面 在我上面提供的菜单中找到: iseq ${platform} pcbios && set start BIOS_MENU || set start EFI_MENU goto ${start} 替换为  详情 回复 发表于 2018-11-29 15:55
嘿,BIOS,X64EFI,X86EFI三合一菜单搞定,在虚拟机测试通过,能自动引导相应的菜单界面 在我上面提供的菜单中找到: iseq ${platform} pcbios && set start BIOS_MENU || set start EFI_MENU goto ${start} 替换为  详情 回复 发表于 2018-11-29 15:55
回复

使用道具 举报

发表于 2018-11-29 15:55:54 | 显示全部楼层

嘿,BIOS,X64EFI,X86EFI三合一菜单搞定,在虚拟机测试通过,能自动引导相应的菜单界面
在我上面提供的菜单中找到:
iseq ${platform} pcbios && set start BIOS_MENU || set start EFI_MENU
goto ${start}

替换为:
iseq ${platform} pcbios && set start BIOS_MENU || set start EFI        #(pcbios && efi)
goto ${start}
:EFI
iseq ${buildarch} x86_64 && set start EFI_MENU || set start x86EFI_MENU                #(x64EFI && x86EFI)
goto ${start}


去试试看看吧^_^
回复

使用道具 举报

发表于 2018-11-29 15:55:57 | 显示全部楼层
本帖最后由 yigeren 于 2018-11-29 15:59 编辑


嘿,BIOS,X64EFI,X86EFI三合一菜单搞定,在虚拟机测试通过,能自动引导相应的菜单界面
在我上面提供的菜单中找到:
iseq ${platform} pcbios && set start BIOS_MENU || set start EFI_MENU
goto ${start}

替换为:
iseq ${platform} pcbios && set start BIOS_MENU || set start EFI        #(pcbios && efi)
goto ${start}
:EFI
iseq ${buildarch} x86_64 && set start EFI_MENU || set start x86EFI_MENU                #(x64EFI && x86EFI)
goto ${start}


去试试看看吧^_^
对了,你自己要添加一个:x86EFI_MENU菜单的,config配置文件[arch]添加00006=ipxe32.efi

点评

非常感谢热心相助! 这个设置参数在官网也学习过,由于是业余的没专业知识,理解不透。 官网只是简单地说:i386 指 32-bit x86 CPU;x86_64 指 64-bit x86 CPU; 看来理解上有偏差,难道32EFI平台的电脑,  详情 回复 发表于 2018-11-29 16:30
回复

使用道具 举报

 楼主| 发表于 2018-11-29 16:30:21 | 显示全部楼层
yigeren 发表于 2018-11-29 15:55
嘿,BIOS,X64EFI,X86EFI三合一菜单搞定,在虚拟机测试通过,能自动引导相应的菜单界面
在我上面提供的菜 ...

非常感谢热心相助!

这个设置参数在官网也学习过,由于是业余的没专业知识,理解不透。

官网只是简单地说:i386 指 32-bit x86 CPU;x86_64 指 64-bit x86 CPU;

看来理解上有偏差,难道32EFI平台的电脑,都是用的32-bit的CPU啊?

这个还真不清楚呢,如果是这样,问题确实没以前想的复杂了。

点评

在32EFI平台的电脑一样是用64位的CPU,只是我们需要改变下逻辑变通下来达到我们的目的 在32EFI的平台下,TPS是不是会自动调用config配置里00006=ipxe32.efi的文件,对吧 然后咱们先引导IPXE32.efi到SHELL里面,也就  详情 回复 发表于 2018-11-29 16:50
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2019-7-23 22:13

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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