无忧启动论坛

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

[我不是网管]分享个ipxe、grub2-http协议启动PE的免配置网启模板

    [复制链接]
1#
发表于 2019-12-29 14:27:22 | 显示全部楼层
本帖最后由 hkkitlee 于 2019-12-29 14:55 编辑
liuzhaoyzz 发表于 2019-12-29 12:32
如果是ISO制作模式的问题,就不好办了,因为大家都是用通常的办法制作的PE.ISO啊,不能说别人发布的PE.ISO ...

查看過grub2手冊,粗略估計:

中文字以‘模組’存放在$locale_dir當中,所以當使用$lang時$locale_dir為必要「變量」。

本地啟動是以磁盤作為根,根下存放模組及其他文件,有需要時加載。
問題應該是pxe啟動:當啟動時「只能」從bootserver加載單一文件,所以其他模組亦忽略了。

除非將「所有」模組、功能編譯成單一文件;但grub2好像不支持。
亦可能因為這樣,所以「你編譯時才報錯」(18樓)。


看看幫不幫到忙?編譯成網絡盤提取伺服器上其他文件:https://www.ibm.com/developerworks/community/blogs/5144904d-5d75-45ed-9d2b-cf1754ee936a/entry/uefi-grub2?lang=en

6. 创建PXE引导
grub2支持EFI环境通过PXE引导操作系统。

需要在PXE server端创建EFI启动需要的目录结构。 利用grub2-mknetdir命令,此命令将会产生一个boot/grub2/x86_64-efi目录,此目录为PXE启动必备目录,将此目录拷贝到tftp server的root目录下。其中efinet、tftp为必备模块,用以支持grub2的tftp传输。

# grub2-mknetdir --modules="fat part_msdos search normal linux font all_video reboot configfile efinet ntfs tftp echo gfxterm" --net-directory=.
image

1) 将grub2-mknetdir生成的core.efi重命名为pxelinux.0,部分PXE引导过程中只识别此文件名。

2) 此版本grub2在PXE引导过程中不支持手动grub命令提示符,即通过grub命令提示符不能找到任何可启动设备。

3)解决方法为将合适的grub.cfg拷贝到服务器对应目录下,grub2能够自动识别启动设备并下载相应启动文件。一般情况下将grub.cfg放置在同pxelinux.0一个目录下。

简易grub.cfg如下:

insmod all_video
set gfxmode=800x600
  set gfxpayload=keep
  set timeout=3
  insmod gfxterm
  terminal_output gfxterm
  menuentry ' kernel EFI-BOOT-grub'{
    linux   /vmlinuz*** root=/dev/ram0 rw
    initrd  /initramfs***
  }

点评

set lang=zh_CN这一句调用之后,tinypxeserver确实看到文件有加载进程,然后文件加载到100%之后,继续加载到600%多,就出错了,这个zh_CN.mo文件应该没问题,因为本地调用都可以,只是pxe调用失败,感觉没有pxe启动  详情 回复 发表于 2019-12-29 16:18
https://github.com/a1ive/grub2-filemanager 这个grubfm就是所有东西编译成单一文件的 还能塞整个pe进去做成单一文件,  详情 回复 发表于 2019-12-29 15:49
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-8 03:53

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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