无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: 江南一根葱
打印 上一主题 下一主题

[分享] [史上最伟大网管]吓!直接浏览服务器文件!非典型grub2文件管理器(20200825支持Debian)

    [复制链接]
31#
 楼主| 发表于 2020-5-1 10:01:56 | 显示全部楼层
liuzhaoyzz 发表于 2020-4-30 23:15
微云里的0429,不但UEFI不行,BIOS也启动不了了。
需要关闭再打开批处理,才能把文件加入hfs。
BIOS ...

我下载试了乡下的垃圾实体机正常,vmware经常抽风的。。这几天没改动其它脚本,就改了批处理的,应该不影响其它功能,等都能启了,我再最后整理下,尽量把文件减少
回复

使用道具 举报

32#
 楼主| 发表于 2020-5-2 10:08:00 | 显示全部楼层
本帖最后由 江南一根葱 于 2020-5-2 10:09 编辑
liuzhaoyzz 发表于 2020-5-2 09:57
0501版本一样啊。
BIOS启动:

哈哈,这个说明你的http出问题了,
http://127.0.0.1试试用这个hfs有个特点就是可以在其它机上web管理页面上传文件,这样是马上生效的

点评

http服务没有问题啊。 http://127.0.0.1/或者从hfs里面单击“在浏览器中打开按钮”,得到http://localhost/,都可以正常访问。  详情 回复 发表于 2020-5-2 10:12
回复

使用道具 举报

33#
 楼主| 发表于 2020-5-2 10:19:50 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-2 10:12
http服务没有问题啊。
http://127.0.0.1/或者从hfs里面单击“在浏览器中打开按钮”,得到http://localho ...

你按c进命令试下
cat (http)/

点评

BIOS下,cat (http)/之后,可以看到imgs目录了,好奇怪啊!难道hfs提供的http服务有延迟吗?延迟也太久了吧。但是还是启动不了,一直黑屏。  详情 回复 发表于 2020-5-2 10:32
回复

使用道具 举报

34#
 楼主| 发表于 2020-5-2 10:40:25 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-2 10:32
BIOS下,cat (http)/之后,可以看到imgs目录了,好奇怪啊!难道hfs提供的http服务有延迟吗?延迟也太久了 ...

你是选的哪个批处理,我乡下和城里的旧机用虚拟机、实机都试过正常的,估计就是搭建环境的问题
legacybios下只要tftp正常,界面就正常
efi下我是用的http,不正常说明取到的文件有问题
启动好可以再看下echo $net_default_server地址是什么本机时间有没有正常之类的。。
还有就是路径,中文路径之类

点评

用的这个F:\20200501netgrubfm\GRUBFM-DHCP.bat echo $net_default_server是空白,直接上图。 路径没有中文空格什么的啊,F:\20200501netgrubfm\GRUBFM-DHCP.bat,哪里有中文。  详情 回复 发表于 2020-5-2 10:55
回复

使用道具 举报

35#
 楼主| 发表于 2020-5-2 11:12:39 | 显示全部楼层
本帖最后由 江南一根葱 于 2020-5-2 11:18 编辑
liuzhaoyzz 发表于 2020-5-2 10:55
用的这个F:\20200501netgrubfm\GRUBFM-DHCP.bat,用F:\20200501netgrubfm\GRUBFM-PROXYDHCP.bat,UEFI下 ...

你这个环境执行出来的文件是什么权限?
最好用一般系统试下。。efi就一个文件的,如果你把/app/config/loadefi这个文件里面的http://改成tftp://后正常了,
那估计就是你http环境有权限继承不全之类的怪问题。

点评

WIN10X64系统,系统是administrator身份登录的,双击批处理,或者右击以管理员身份运行都没问题。 我是在RAMOS里面运行的批处理,主机内存32GB,给虚拟机分配了8GB。 RAMOS土豪模式是把C盘整个盘克隆到内存运行的  详情 回复 发表于 2020-5-2 11:17
回复

使用道具 举报

36#
 楼主| 发表于 2020-5-2 11:20:49 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-2 11:17
WIN10X64系统,系统是administrator身份登录的,双击批处理,或者右击以管理员身份运行都没问题。
我是 ...

估计有精简过之类的吧,退出hfs用tinypxe的http看看有没正常

点评

感觉跟精简没有什么关系。 退出hfs用tinypxe的http,BIOS启动正常,列出imgs目录文件正常,UEFI还是不行,直接进入rescue。  详情 回复 发表于 2020-5-2 11:26
回复

使用道具 举报

37#
 楼主| 发表于 2020-5-2 11:28:34 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-2 11:26
感觉跟精简没有什么关系。
退出hfs用tinypxe的http,BIOS启动正常,列出imgs目录文件正常,UEFI还是不行 ...

我怀疑你的grubfmx64.efi坏了,重新覆盖或是你的F盘需要chkdsk F: /x了
回复

使用道具 举报

38#
 楼主| 发表于 2020-5-2 11:43:00 | 显示全部楼层
本帖最后由 江南一根葱 于 2020-5-2 11:44 编辑
liuzhaoyzz 发表于 2020-5-2 11:34
文件名称: grubfmx64.efi
文件大小: 8.92 MB (9,349,632 字节)
MD5: 618B8231D55B5EF64089177A61 ...

如果不是这个文件的问题就是虚拟机环境的问题了,这个文件我试了即使是公网读取启动、局域网读取启动,或是本地读取启动,我试了都是正常的。。。
或仍然是你的http服务问题,防火墙、权限之类的,干脆其它机你搭个pe环境下试下看,同样的文件有没正常
我平时不用ramos的原因是高速的写入速度有时候会把物理磁盘写“坏”,产生逻辑坏道,要chkdsk,严重时会物理坏道。。
回复

使用道具 举报

39#
 楼主| 发表于 2020-5-2 12:49:49 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-2 11:47
什么叫做防火墙?网络防火墙是关闭了的。我N年都没用过什么杀软,微软的windows defender我是精简了的,管 ...

虚拟机网启很不靠谱的,选win10x64和选win7x64的情况是不一样的,
而且新版vmware,传统bios启win7原版中的boot.wim会蓝屏,用低版本的vm建的win7虚拟机就很正常,,
以前新建虚拟机的时候都乱选的,现在搞清楚了好多。
回复

使用道具 举报

40#
 楼主| 发表于 2020-5-2 16:41:45 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-2 14:14
pxe网启,我总是喜欢在虚拟机测试没问题之后,再在实体机测试,我没觉得虚拟机和实体机网启有什么差别啊。 ...

差别非常大,如果是ipxe启动的,虚拟机测试会很正常,实体机则有可能出现死机现象
这个包传统bios下是grub2直接启动,efi下是由ipxe来加载grub2启动
现在改了下,bios和efi都由ipxe来加载了,如果有兼容性问题,可以自己换官方的ipxe文件了,

点评

重新下载了0502版本,怎么感觉越改反而越乱了,晕啊。 ipxe.bios似乎会查找本地硬盘上的grldr和菜单并引导,我现在是想pxe啊,怎么去找本地的grldr?我删除本地的grldr,又提示出错了。[attachimg]417882[/attachim  详情 回复 发表于 2020-5-2 17:13
回复

使用道具 举报

41#
 楼主| 发表于 2020-5-2 18:20:59 来自手机 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-2 17:13
重新下载了0502版本,怎么感觉越改反而越乱了,晕啊。
ipxe.bios似乎会查找本地硬盘上的grldr和菜单并引 ...

ipxe.bios是ipxe.kpxe改名
ipxe.efi就是ipxe.efi
启不来可以用官方文件替代
ipxe.bios不可能找本地文件启动的,要么就是没取到文件,估计你滥用dhcp.bat的后果
回复

使用道具 举报

42#
 楼主| 发表于 2020-5-2 18:23:45 来自手机 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-2 17:13
重新下载了0502版本,怎么感觉越改反而越乱了,晕啊。
ipxe.bios似乎会查找本地硬盘上的grldr和菜单并引 ...

看你截图貌似取的文件路径不对,看看netgrubfm.ipxe里面的路径,你一定要dhcp.bat的话记得拔路由试。。。。

点评

BIOS在虚拟机里面启动了。 我的感觉,有路由器的环境,不需要proxydhcp,似乎与论坛上的说法相反啊,一般都是有路由器的环境。  详情 回复 发表于 2020-5-2 18:58
回复

使用道具 举报

43#
 楼主| 发表于 2020-5-2 18:43:42 | 显示全部楼层
本帖最后由 江南一根葱 于 2020-5-2 18:55 编辑

现在重新上传了netgrubfm.ipxe
其实这个也不通用,vm正常后,甲骨文虚拟机启不了的,甲骨文本身是ipxe来引导,所以netgrubfm.ipxe里需要加一句”dhcp",tinypxe自带的脚本也有很多不同环境的判断,但实践证明tinypxe作者做的脚本判断也是不通用的。。。如果你用dhcp.bat,grub2下获取到的next_default_server就可能是路由器的,
ipxe下或许偶尔能获取到正确的文件,但启动后得到的proxydhcp变量值(传递给grub2用)就不对了
grub2不支持proxydhcp
win下的网启都不通用的,只有linux下搭建的网启才能完美启动,毕竟直接支持pxemenu,win下貌似只有商业软件才支持这个,连商业无盘都不通用,需要“兼容模式”


回复

使用道具 举报

44#
 楼主| 发表于 2020-5-2 22:01:34 | 显示全部楼层
本帖最后由 江南一根葱 于 2020-5-2 22:06 编辑
liuzhaoyzz 发表于 2020-5-2 18:58
网盘里重新下载的0502版本,BIOS在虚拟机里面启动了。之前是BIOS-PXE启动不了,自动跳转到硬盘引导,我搞 ...

。。。。难道你觉得几个dhcp服务同时开着没问题吗一个单位,十几个路由接在lan,同时开着dhcp,该认哪个路由的dhcp呢

点评

内网有多个dhcp server的话,有时候的确会影响客户机ip地址分配。但我实体机测试ipxe启动,确实没事儿啊。  详情 回复 发表于 2020-5-2 22:07
回复

使用道具 举报

45#
 楼主| 发表于 2020-5-2 22:10:16 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-2 22:07
内网有多个dhcp server的话,有时候的确会影响客户机ip地址分配。但我实体机测试ipxe启动,确实没事儿啊 ...

所以你也说了是有时候,路由没断电前,也许也没事。但断下电,dhcp租约就重新开始了。。
bios下实战一般用深度远程管理器,抢dhcp很牛逼,而且还不支持proxydhcp,
回复

使用道具 举报

46#
 楼主| 发表于 2020-5-3 11:30:08 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-3 10:41
我估计UEFI下,那个grumfm64.efi太大了,导致vm加载出错。

不是,是proxydhcp的问题

点评

proxydhcp?没勾选proxydhcp为啥也会出错啊?  详情 回复 发表于 2020-5-3 11:31
回复

使用道具 举报

47#
 楼主| 发表于 2020-5-3 11:55:57 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-3 11:31
proxydhcp?没勾选proxydhcp为啥也会出错啊?
另外为啥虚拟机不行,实体机就可以?很奇怪。

这个efi下的Grub2不支持proxydhcp,grub2会去连路由,勾不勾都一个样

点评

试用了F:\20200503netgrubfmt\GRUBFM-虚拟机专用.bat 不能以管理员身份运行,否则会无限弹出cmd窗口,关都关不掉。 直接双击运行,输入2,不启用proxydhcp,BISO下面,只能看到微软的那个。[attachimg]417994[/a  详情 回复 发表于 2020-5-3 18:37
回复

使用道具 举报

48#
 楼主| 发表于 2020-5-3 22:20:10 来自手机 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-3 18:37
试用了F:\20200503netgrubfmt\GRUBFM-虚拟机专用.bat
不能以管理员身份运行,否则会无限弹出cmd窗口,关 ...

就一行字:grub2不支持proxydhcp
你那个包我刚开始也启不来
回复

使用道具 举报

49#
 楼主| 发表于 2020-5-3 22:25:58 来自手机 | 显示全部楼层
当然你如果在grub2指定了ip,那是肯定能启的,至于vm,新vm启win7的boot.wim蓝屏我都没办法解决,只能用旧的vm生成的虚拟机

点评

好奇地问下,为啥你喜欢用boot.wim?为啥不直接用pe?我基本没用过boot.wim。另外你为啥要用原版windows.iso装系统?不用gho或者esd?好点的gho封装的省事,或者直接用esd不好吗?体积小方便啊。  详情 回复 发表于 2020-5-4 05:59
回复

使用道具 举报

50#
 楼主| 发表于 2020-5-3 22:27:42 来自手机 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-3 18:37
试用了F:\20200503netgrubfmt\GRUBFM-虚拟机专用.bat
不能以管理员身份运行,否则会无限弹出cmd窗口,关 ...

你把你家路由拔了或关了dhcp,再vm启试试,搞不懂你为啥一定要在有dhcp的环境再开dhcp

点评

很多情况下,内网都是有路由器的啊,我的问题是,拔了路由器跟实际使用场景基本不吻合啊?确实在有这样子的现象:dhcp的环境中开启pxeserver的dhcp,如果某个客户机刚开机,获取到的网关地址是pxeserver分配的,可能  详情 回复 发表于 2020-5-4 06:10
回复

使用道具 举报

51#
 楼主| 发表于 2020-5-3 22:37:21 来自手机 | 显示全部楼层
本帖最后由 江南一根葱 于 2020-5-3 22:48 编辑

以前我用grub4dos中转的grub2,因为grldr也支持proxydhcp,不然proxydhcp环境网启不来grub2的,后来wintoflash改过网络模块,bios下的grub2支持proxydhcp了,pxefm就是grub2,引导到grub2环境只需要这一个文件就行了,删除fmcore就行,反正我是不敢用dhcp模式搞乱网络。。。

实际应用中,网启   要么是关闭其它dhcp使用(电子教室机房类),
                             要么架设在服务器上,开proxydhcp使用(企业)

跑在虚拟机上,很多环境用都不靠谱

点评

请说详细点,pxefm是grub2x64.efi,你定制的吧?模块很少,只用于网启的是吗?主要就是有http等模块是吧?然后在用他chain grubfmx64.efi,是不是?你用lua生成的菜单大概是什么样子的?不明白你的方案启动流程,你  详情 回复 发表于 2020-5-4 06:27
回复

使用道具 举报

52#
 楼主| 发表于 2020-5-4 07:58:36 来自手机 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-4 06:27
请说详细点,pxefm是grub2x64.efi,你定制的吧?模块很少,只用于网启的是吗?主要就是有http等模块是 ...

虚拟机我不同年代的机测试了都正常,你一定要虚拟机在局域网里茫茫dhcp中找一个启动,grub2是没办法的,它压根就没proxydhcp这个变量,g4d和ipxe才有,你觉得为啥它们有?

点评

问题是我压根就没用过proxydhcp这个变量啊,官网好像就是用的next-server这个变量,如果能够自动取得就获取,如果不能获取就赋予一个兜底,避免网络异常问题导致获取失败。  详情 回复 发表于 2020-5-4 08:09
回复

使用道具 举报

53#
 楼主| 发表于 2020-5-4 08:06:33 来自手机 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-4 06:27
请说详细点,pxefm是grub2x64.efi,你定制的吧?模块很少,只用于网启的是吗?主要就是有http等模块是 ...

proxydhcp功能只不过是告诉局域网正确的dhcp服务器是谁,tinypxe打开后第一个提示的就是局域网内有其他dhcp,此时无论如何也要勾选proxydhcp,如果勾选了正常机器启动不了,那肯定一定必定绝逼是脚本问题
回复

使用道具 举报

54#
 楼主| 发表于 2020-5-4 08:20:35 来自手机 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-4 08:09
问题是我压根就没用过proxydhcp这个变量啊,官网好像就是用的next-server这个变量,如果能够自动取得就获 ...

grub2也是next-server,但不支持proxydhcp,你路由没法给它发送next-server啊
我的方法是把ipxe的proxydhcp传给grub2
但你又不用proxydhcp,导致ipxe没这个变量,grub2不知道连哪个服务器,ipxe脚本中指定ip当然也是可以的,但指定后不通用了
回复

使用道具 举报

55#
 楼主| 发表于 2020-5-4 08:51:46 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-4 08:27
你的哪个方案用的是把ipxe的proxydhcp传给grub2?不明白啊,那个带proxydhcp的批处理,是把ipxe的proxydhcp ...

完全是可以让grub2自己去完成的,为何要批处理呢,linux下用不可能写个批处理啊,
明明可以用proxydhcp来定义的,为什么要去抢dhcp呢
流程不要太简单
ipxe--grub2
efi下因为grub2不支持proxydhcp
ipxe(proxydhcp)->grub2(next-server=proxydhcp)

你家的路由两个dhcp的情况
bios下-ipxe 取得dhcp-server、next-server(tinypxe) ->grub2  (一会选中路由,一会选中tinypxe)
   efi下-ipxe取得dhcp-server、next-server-->grub2(???)
正确流程
bios下:grub2 取得dhcp-server、proxydhcp(tinypxe)->grub2  (获得正确的next-server)
efi下:    ipxe取得dhcp-server、next-server(tinypxe) 、proxydhcpserver(tinypxe)->grub2  (获得正确的next-server)


点评

tiny pxeserver和hfs都是windows下的软件,这套方案都是在windows主机上面部署的,用windows的批处理修改next-server不是很自然的吗?你的批处理不也是windows下面的吗。windows主机修改ipxe菜单里的next-server,开  详情 回复 发表于 2020-5-4 09:16
回复

使用道具 举报

56#
 楼主| 发表于 2020-5-4 08:53:01 | 显示全部楼层
liuzhaoyzz 发表于 2020-5-4 08:09
问题是我压根就没用过proxydhcp这个变量啊,ipxe官网好像就是用的next-server这个变量,也就是TFTP ser ...

问题是我家能启,你家启不来
你家能启的方式,我家启不来
总不可能换路由器解决吧,我家路由是openwrt的,有可能抢dhcp抢不过tinypxe
回复

使用道具 举报

57#
 楼主| 发表于 2020-5-4 09:24:02 | 显示全部楼层
本帖最后由 江南一根葱 于 2020-5-4 10:14 编辑
liuzhaoyzz 发表于 2020-5-4 09:16
tiny pxeserver和hfs都是windows下的软件,这套方案都是在windows主机上面部署的,用windows的批处理修改 ...

....这是不开启proxydhcp和开启proxydhcp两种情况下
ipxe下的变量值
可以很明确地看到,开启proxydhcp后,proxydhcp项下的next-server才是正确的值,有这个值,为什么还要写批处理来获取本机地址呢?而且,这个next-server的作用是还可以指定其它服务器,甚至填公网地址都可以,把它给固定成本机地址了算什么呢。
当然,我以前也用过指定ip的方式,只不过我的方式是用批处理从tinypxe生成的config.ini中获取地址写到ipxe,并不是去本地连接取。。

.

在这个图里可以看到,dhcp/dhcp-server、dhcp/next-server、proxydhcp/dhcp-server、proxydhcp/next-server这四个值是可以完全
不一样的。但grub2不认后者,有什么办法呢,你说指定,那其它环境怎么办?uefi下的启动就这个脚本
  1. isset ${proxydhcp/dhcp-server} && chain http://${proxydhcp/dhcp-server}/app/netgrubfm/netgrubfm.${platform} proxydhcp=${proxydhcp/dhcp-server}
复制代码

如果存在proxydhcp就取proxydhcp下的dhcp-server,当然,实际应用中取proxydhcp下的next-server更适用.

proxydhcp是作为参数传递给netgrubfm.efi的,netgrubfm.efi用这个地址来浏览http上的文件
如果用你的方法直接钦定一个地址, 那么这个ipxe文件只需要一行
chain http://192.168.11.242/app/netgrubfm/netgrubfm.${platform} proxydhcp=192.168.1.242
强制指定proxydhcp参数







点评

不知道行不行? [*]isset ${proxydhcp/next-server} && set bootserver ${proxydhcp/next-server} || [*]isset ${proxydhcp/dhcp-server} && set bootserver ${proxydhcp/dhcp-server} || [*]isset ${dhc  详情 回复 发表于 2020-5-5 17:22
回复

使用道具 举报

58#
 楼主| 发表于 2020-5-5 17:29:20 | 显示全部楼层
hkkitlee 发表于 2020-5-5 17:22
不知道行不行?

开了proxydhcp的话这样肯定可以啊
但没开proxydhcp的话,肯定只有1和2存在啊,后面两项都被“忽略”了
所以回到抢dhcp了

点评

這個寫法已指定了${dhcp/dhcp-server} 或 ${dhcp/next-server},還會再搶嗎?  详情 回复 发表于 2020-5-5 17:37
回复

使用道具 举报

59#
 楼主| 发表于 2020-5-5 21:02:02 | 显示全部楼层
hkkitlee 发表于 2020-5-5 17:37
這個寫法已指定了${dhcp/dhcp-server} 或 ${dhcp/next-server},還會再搶嗎?

嗯,因为有时候从路由的dhcp启,有时候从软件的dhcp启,完全靠运气了

点评

吓! 多個dhcp......完全明白了  详情 回复 发表于 2020-5-5 22:33
回复

使用道具 举报

60#
 楼主| 发表于 2020-5-21 16:33:44 | 显示全部楼层

可以浏览网络上的Debian.iso顺利启动了
wget貌似狂速启动,我的hfs都快挂了,不得不限速

点评

Efi可以啟動嗎?  详情 回复 发表于 2020-5-21 17:22
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-7 03:48

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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