无忧启动论坛

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

[原创] 在PXE服务器上部署ipxe的HTTP、FTP启动,体验极速传输(更新FTP)

    [复制链接]
跳转到指定楼层
#
发表于 2013-7-17 22:37:32 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 ljycslg 于 2013-8-5 08:52 编辑

重大更新:支持FTP

官方源码内置了FTP协议,但是默认没有打开。现打开重新编译测试发现比HTTP更强
实测速度效率几乎没有损耗,你的网速能有多快那就有多快,不愧是专用文件传输协议FTP!这是网启的一次革命
本人FTP服务使用的是win7内置的iis组件,配置稍显繁琐,大家可以找些小巧的ftp软件
ipxe_ftp.rar (345.31 KB, 下载次数: 1268)
脚本怎么改不用我说了吧
由于有未解决的问题,不再提供直接启动文件
百兆实测128m的iso用时11.6s,每秒11m
千兆不用说了,妙传!


P大的HTTP网启功能虽然比较傻瓜,但不适合DIY
最近研究了下整合到了grub4dos的网启菜单上
虽然ipxe能直接作为启动文件,不过还是用grldr来调用比较好,方便定制菜单DIY
在grub4dos网启菜单添加如下:
title ipxe
kernel /IPXE.KRN
initrd /myscript.ipxe

ipxe.krn为启动文件,myscript.ipxe为脚本文件,这里都放在网启启动目录
myscript.ipxe内容:

  1. #!ipxe
  2.   dhcp
  3.   isset ${next-server} || set next-server 192.168.1.3  #自行指定服务器ip
  4.   initrd http://${next-server}/0PE.ISO
  5.   chain http://${next-server}/grub.exe  --config-file="map (rd)+1 (0xff);map --hook;chainloader (0xff)"
  6.   
复制代码
有了这个就能方便定制你要启动的ISO文件
next-server变量代表tftp服务器,这里假定tftp和http为同一台机, 这条语句表示如果探测不到则指定ip,你可以改成你的服务器ip
ipxe通过http服务把iso加载到了内存,实测直接把百兆速度占满了,秒杀TFTP
最屌暴的是grub的(rd)就是ipxe加载的内容,这样就好玩了,大家可以尽情发挥
下面grub命令熟悉了吧,映射成了光驱然后启动,别忘了把grub.exe放到启动目录中

用pxelinux中的memdisk引导ISO或许比grub.exe更好
  1. chain  http://${next-server}/memdisk iso raw
复制代码
memdisk.rar (13.04 KB, 下载次数: 431)

部署http服务:
P大用的是easywebserver
非常小巧的Web服务器软件。可以很快速地在您的PC上创建一个站点,而无需IIS等庞大复杂的工具。
启动后把目录设置到你存放ISO启动镜像所在目录就行了



IPXE_HTTP.rar (410.25 KB, 下载次数: 799)
如何更新IPXE.KRN?
下载http://boot.ipxe.org/ipxe.iso 里面有最新源码编译生成的IPXE.KRN

更新:ipxe内嵌脚本直接启动文件,默认下载根目录的menu.ipxe菜单脚本,也可通过grldr调用: pxe keep && chainloader --raw (pd)/ipxe.0
ipxe.rar (63.41 KB, 下载次数: 679)

IPXE菜单效果图





菜单示例:
  1. #!ipxe
  2.   #set menu-timeout 8000
  3.    set menu-default 0pe
  4.    isset ${ip} || dhcp
  5.    isset ${next-server} || set next-server 192.168.1.3
  6. :start
  7.   menu iPXE Boot Menu
  8.   item --gap --             --------------------------------- PE --------------------------------
  9.   item winre                BOOT Win7 RE (wimboot)
  10.   item 0pe                  BOOT Pseudo 0PE (iso)
  11.   item TangoPE              BOOT Tango PE (iso)
  12.   item --gap --             -------------------------------- TOOL --------------------------------
  13.   item maxdos               Maxdos Tool
  14.   item memtest              Memtest86
  15.   item --gap --             ---------------------------- Advanced options -----------------------
  16.   item --key c config       Configure settings                                   -- c
  17.   item --key p pxelinux     Load PXELinux menu                                   -- p
  18.   item shell                Drop to iPXE shell
  19.   item reboot               Reboot computer
  20.   item --key x exit         Exit iPXE and continue BIOS boot                     -- x
  21.   choose --timeout ${menu-timeout} --default ${menu-default} selected
  22.   goto ${selected}

  23. :shell
  24.   echo Type 'exit' to get the back to the menu
  25.   shell
  26.   goto start

  27. :failed
  28.   echo Booting failed, dropping to shell
  29.   goto shell

  30. :reboot
  31.   reboot

  32. :exit
  33.   exit

  34. :config
  35.   config
  36.   goto start

  37. :pxelinux
  38.   chain http://${next-server}/pxelinux.0 || goto failed
  39.   goto start

  40. :memtest
  41.   chain http://${next-server}/MAXDOS/memtest.bin || goto failed  #http://boot.ipxe.org/memtest.bin
  42.   goto start

  43. :maxdos
  44.   initrd http://${next-server}/MAXDOS/max9.3.ima
  45.   chain http://${next-server}/memdisk || goto failed

  46. :0pe
  47.   initrd http://${next-server}/ISO/0PE.ISO
  48.   chain  http://${next-server}/memdisk iso raw
  49. #chain http://${next-server}/ISO/grub.exe --config-file="map (rd)+1 (0xff);map --hook;chainloader (0xff)"

  50. :TangoPE
  51.   initrd http://${next-server}/ISO/TangoPE_NET.ISO
  52.   chain http://${next-server}/memdisk iso raw

  53. :winre
  54.   kernel http://${next-server}/wimboot                                #http://git.ipxe.org/releases/wimboot/wimboot-latest.zip
  55.   initrd http://${next-server}/ISO/winre/bootmgr     bootmgr
  56.   initrd http://${next-server}/ISO/winre/BCD         BCD
  57.   initrd http://${next-server}/ISO/winre/boot.sdi    boot.sdi
  58.   initrd http://${next-server}/ISO/winre/winre.wim   boot.wim
  59.   boot || goto failed
  60.   goto start
复制代码

点评

谢谢,真的是太需要了!已经百度了好久!!  发表于 2013-7-22 22:47

评分

参与人数 10无忧币 +46 收起 理由
zmeshow + 5
nytc006 + 5 很给力!
cathywife + 5 很给力!
Myptour + 5
july8nd + 1 判断FTP or HTTP 启动方式进行加载,可行?
ddianxing + 5 很给力!
zhanguser + 5 很给力!
fukystone + 5 很给力!
2011cwj6958 + 5 赞一个!
北斗 + 5 谢谢分享!

查看全部评分

推荐
发表于 2013-7-17 23:01:28 | 只看该作者
这个还是有很大的局限性,不能在启动的时候加载扩展

点评

我欲封天 www.wbiquge.com/0_1/  发表于 2014-11-13 17:06
6c8ec 焚天之怒 www.68la.com/read/19/19790/  发表于 2014-8-26 01:58
回复

使用道具 举报

推荐
发表于 2013-7-18 11:05:59 | 只看该作者
楼主的“自用DIY 0PE全自动PXE启动加载及远程控制”感觉很好。
回复

使用道具 举报

168#
发表于 2024-8-14 16:51:21 | 只看该作者
最近想弄网启 这教程不错
回复

使用道具 举报

167#
发表于 2024-3-5 20:46:20 来自手机 | 只看该作者
学习了,感谢分享。
回复

使用道具 举报

166#
发表于 2024-3-5 19:49:46 | 只看该作者
感谢楼主!!!!
回复

使用道具 举报

165#
发表于 2024-3-5 19:48:55 | 只看该作者
超级给力啊!!!!!!!!!!!!
回复

使用道具 举报

164#
发表于 2018-10-17 18:41:35 | 只看该作者
[原创] 在PXE服务器上部署ipxe的HTTP、FTP启动,体验极速传输(更新FTP)
回复

使用道具 举报

163#
发表于 2016-9-22 23:41:47 | 只看该作者
好东西,一定要支持,
回复

使用道具 举报

162#
发表于 2016-9-19 15:18:14 | 只看该作者
怎么用PXE 启动VHD呢
回复

使用道具 举报

161#
发表于 2016-2-9 10:10:48 | 只看该作者
自己编译了一份开启FTP和NFS的
这里下载
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=375197
回复

使用道具 举报

160#
发表于 2016-2-6 20:33:04 | 只看该作者
这个有没有具体的教程怎么使用FTP呢?
filezilla/proftpd可以的吧?

是要FTP服务器+tiny pxe server + ipxe一起使用吗?
回复

使用道具 举报

159#
发表于 2016-2-6 11:37:29 | 只看该作者
从一楼看到这里,终于看完了。
试和了0pe的网启,觉得不错,又想自定义一些内容。
p大推荐的,看了觉得很强大。

为什么这个帖子会在pe区而是网启区呢,,,,晕,还好我擅长搜索。
回复

使用道具 举报

158#
发表于 2015-11-15 21:25:38 | 只看该作者
本帖最后由 dos时代菜鸟 于 2015-11-15 21:28 编辑

这个 跟ftp服务器 有关系,找了好多 简单的 ftp服务器软件。就这个感觉不错。
ftpserv-111_cn.7z (298.02 KB, 下载次数: 58)
大家不妨试试。

有的  ftp 服务器 架设 以后,虚拟机 测试不过,实机却可以,而有的 可以传送成功却卡在启动上。唯有这个小玩意儿感觉还不错。

评分

参与人数 1无忧币 +5 收起 理由
freesoft00 + 5

查看全部评分

回复

使用道具 举报

157#
发表于 2015-11-15 10:57:08 | 只看该作者
哇,太厉害了,帖子都看完了,完全不知道咋弄
回复

使用道具 举报

156#
发表于 2015-11-13 23:47:33 | 只看该作者
xiaofanfnhc 发表于 2015-5-21 12:17
速度非常好百M网可以达到11M左右比TFTP快了三倍左右,不过兼容性比PXE的g4d直接引导差很多,试了几个iso
1 ...

3、另外光驱加载是chain  http://${next-server}/grub/memdisk iso raw,如果我要加载ramos.img命令要如何写呢?
vhd和img,试试chain  http://${next-server}/grub/memdisk img raw
回复

使用道具 举报

155#
发表于 2015-5-21 12:17:14 | 只看该作者
速度非常好百M网可以达到11M左右比TFTP快了三倍左右,不过兼容性比PXE的g4d直接引导差很多,试了几个iso
1、memdisk     成功了一半可以正常使用,另一半能进桌面后蓝屏
2、grub.exe    加载镜像执行grub.exe4.6a版时直接卡住不动,用4.4版的grub.exe直接出来命令行
3、另外光驱加载是chain  http://${next-server}/grub/memdisk iso raw,如果我要加载ramos.img命令要如何写呢?

点评

3、另外光驱加载是chain http://${next-server}/grub/memdisk iso raw,如果我要加载ramos.img命令要如何写呢? vhd和img,试试chain http://${next-server}/grub/memdisk img raw  详情 回复 发表于 2015-11-13 23:47
回复

使用道具 举报

154#
发表于 2015-4-25 07:41:30 来自手机 | 只看该作者
无盘网吧也是这个原理吧
回复

使用道具 举报

153#
发表于 2015-4-25 02:07:20 | 只看该作者
只要速度快就行了
回复

使用道具 举报

152#
发表于 2014-12-29 21:05:07 | 只看该作者
北斗 发表于 2013-8-1 17:18
这个有iSCSI,但做无盘网吧还是考虑网众、锐起什么的吧,毕竟他们是专业的无盘。

谢谢!
回复

使用道具 举报

151#
发表于 2014-12-28 12:39:44 | 只看该作者
楼主能否帮制作一个ROM版本的ipxe?我没有LIUNX系统
回复

使用道具 举报

150#
发表于 2014-11-7 10:35:11 | 只看该作者
liuhuan22 发表于 2014-10-12 12:56
从g4d到ipxe,可是怎么回来呢,ipxe不支持本地启动,怎么办?

可以这样吧

:pxelinux
    chain http://${next-server}/PXELinux.0 || goto failed
    goto start

:pxegrub4dos
    chain http://${next-server}/PXEGrldr.0 || goto failed
    goto start
回复

使用道具 举报

149#
发表于 2014-10-31 08:36:48 | 只看该作者
请问下 ixpe的ipxe-dea6a6c.tar.gz下载后如何编译后可以支持FTP?
回复

使用道具 举报

148#
发表于 2014-10-27 12:36:46 | 只看该作者
感谢分享~
回复

使用道具 举报

147#
发表于 2014-10-27 09:36:40 | 只看该作者
本帖最后由 goodtime 于 2014-10-27 09:47 编辑

这个帖子能不能转到《网络启动区》,如果直接用IPXE启动,菜单我设置成menu.ipxe就可以了? 但是设置似乎无效, 难道要重新编译?
回复

使用道具 举报

146#
发表于 2014-10-12 12:56:31 | 只看该作者
从g4d到ipxe,可是怎么回来呢,ipxe不支持本地启动,怎么办?

点评

可以这样吧 :pxelinux chain http://${next-server}/PXELinux.0 || goto failed goto start :pxegrub4dos chain http://${next-server}/PXEGrldr.0 || goto failed goto start  详情 回复 发表于 2014-11-7 10:35
回复

使用道具 举报

145#
发表于 2014-8-15 10:56:33 | 只看该作者
非常不错,学习了
回复

使用道具 举报

144#
发表于 2014-4-21 07:26:19 | 只看该作者
有不针对NT5的wimboot工具,现在启动NT5,要么用ISO打包,要么用MS的TFTP模式的启动文件,确实太慢了。
不知道能不能将WIM类型的NT5用NT6的方式启动起来?
回复

使用道具 举报

143#
发表于 2014-4-20 21:16:56 | 只看该作者
xiaoy 发表于 2013-8-4 09:01
敢问楼主,IPXE编译平台是怎样的,有没有小巧的平台推荐下载

IPXE编译平台http://rom-o-matic.eu/
回复

使用道具 举报

142#
发表于 2014-4-19 23:20:35 | 只看该作者
北斗 发表于 2013-8-2 17:51
兄弟的双机直联有些类似理想的网络环境,企业局域网都还是要经过1级或者多级交换机的转发的,这对速度是有 ...

54mb手机WIFI,http,,320MB镜像55秒加载完,6MB/s的速度了,
回复

使用道具 举报

141#
发表于 2014-4-19 00:01:50 | 只看该作者
ljycslg 发表于 2013-7-26 18:00
直接可以调用菜单脚本
chain  http://${next-server}/menu.ipxe
不一定必须ip,可以用域名,就是还要 ...

ipxe内嵌启动菜单在线编译
回复

使用道具 举报

140#
发表于 2014-4-16 11:24:27 | 只看该作者
怎么支持中文呢?编译在一起的脚本可以发出来么??我看官方的没有自动加载menu.ipxe
回复

使用道具 举报

139#
发表于 2014-4-14 06:37:05 | 只看该作者
#!ipxe
  #set menu-timeout 8000
   set menu-default 0pe
   isset ${ip} || dhcp
   isset ${next-server} || set next-server 192.168.2.3
:start
  menu iPXE Boot Menu
  item --gap --             --------------------------------- PE --------------------------------
  item winre                BOOT Win7 RE (wimboot)
  item 0pe                  BOOT Pseudo 0PE (iso)
  item TangoPE              BOOT Tango PE (iso)
  item --gap --
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-1-15 22:42

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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