linux uefi iso,支持UEFI启动的GRUB2 ISO光盘镜像的制作
本帖最后由 rkr077 于 2017-3-23 10:10 编辑
昨天试了一晚上才成功,贴出全过程。
工具:UltraISO(用于制作光盘的EFI启动镜像)
命令行工具genisoimage,mkisofs(Linux下用于生成iso文件的的命令行工具,如果是Windows系统,也可以使用其Windows版本或者Linux模拟器cygwin)或oscdimg.exe(Windows ADK包含的iso文件生成工具,注意该文件带有微软的数字签名)
GRUB2的Windows版本(下载地址:alpha.gnu.org/gnu/grub)
1.生成GRUB2的内核文件(core.img)
先使用bootice的GRUB4DOS编辑器编写grub.cfg文件(以UTF-8编码保存),包含以下内容:
search.file /boot/grub/grub.cfg root
set prefix=/boot/grub
normal
然后执行以下命令:
Legacy启动
grub-mkimage -c grub.cfg -p /boot/grub -o core.img -O i386-pc iso9660 udf fat exfat ntfs ext2 part_msdos part_gpt search disk biosdisk normal halt reboot
64位UEFI启动
grub-mkimage -c grub.cfg -p /boot/grub -o bootx64.efi -O x86_64-efi iso9660 udf fat exfat ntfs ext2 part_msdos part_gpt search disk normal halt reboot
32位UEFI启动
grub-mkimage -c grub.cfg -p /boot/grub -o bootia32.efi -O i386-efi iso9660 udf fat exfat ntfs ext2 part_msdos part_gpt search disk normal halt reboot
将GRUB2安装目录下的i386-pc\cdboot.img文件复制到当前目录下,并用copy命令将cdboot.img和core.img文件合并为grub2cd.img:
copy /B cdboot.img+core.img grub2cd.img
2.生成EFI启动镜像
用UltraISO新建一个软盘文件,然后在软盘下面新建以下文件夹:
efi\boot\
再将前面生成的bootx64.efi和bootia32.efi复制到该文件夹。最后保存为cdefi.img。
在Linux下面可以用dd生成软盘镜像,并用mount挂载软盘镜像。
3.用genisoimage命令生成可启动iso文件
在当前文件夹下面新建iso文件夹,并将iso镜像包含的文件复制到iso文件夹里面。在iso文件夹下面新建boot\grub文件夹,并将GRUB2安装目录的以下文件夹复制到iso\boot\grub文件夹下:
i386-pc(用于BIOS启动的GRUB2模块)
x86_64-efi(用于64位UEFI启动的GRUB2模块)
i386-efi(用于32位UEFI启动的GRUB2模块)
然后将grub2cd.img和cdefi.img复制到iso文件夹下面。
最后在Cygwin下面cd到当前目录,执行以下命令生成iso文件:
genisoimage -J -l -allow-lowercase -R -V GRUB2 -joliet-long -no-emul-boot -boot-load-size 4 -boot-info-table -b grub2cd.img -eltorito-alt-boot -b cdefi.img -o grub2.iso iso
genisoimage命令用法参见:
https://linux.die.net/man/1/genisoimage
genisoimage参数简介:-J:使用Joliet;-l:使用长文件名;-allow-lowercase:允许小写文件名;-R:使用Rock Ridge;-V:光盘卷标;-joliet-long:使用Joliet长文件名;-o grub2.iso:生成的ISO文件。
linux uefi iso,支持UEFI启动的GRUB2 ISO光盘镜像的制作相关推荐
- linux系统支持uefi,不支持uefi的老电脑装ubuntu
title: 不支持uefi的老电脑装ubuntu date: 2018-11-12 14:11:45 tags: [ubuntu,linux,安装] 需求 最近在写文档,需要经常去查阅一些之前的资料 ...
- linux挂在光驱里的iso文件夹,CentOS系统如何挂载光盘镜像ISO文件
..以前在Windows下经常会使用这些ISO镜像文件,我们可以用虚拟光驱来加载,那么大家知道CentOS系统如何挂载光盘镜像ISO文件吗?接下来大家跟着学习啦小编一起来了解一下CentOS系统挂载光 ...
- linux 文件 复制 工具栏,Linux(Ubuntu)光盘镜像文件制作及使用攻略
一.linux 下命令行制作光盘镜像文件 1. 使用cp命令 cp 命令用来复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到该 ...
- Ubuntu To Go,打造随身linux系统(支持uefi启动)。同样支持WinToGo或其他可通过镜像安装的系统
一.准备步骤 硬件方面 最低配置(蓝色路径,本教程基于该路径) 准备一个32g以上的固态u盘或移动硬盘(固态u盘有较为优良的4k读写性能,节约成本教程中使用某海鲜市场淘的diy固态u盘,主控SM335 ...
- linux centos7 rhel7 虚拟机中怎么挂在卸载 光盘镜像 U盘
vm虚拟机中centos7 rhel7 挂载光盘 U盘 1. 这里是在命令行界面中挂载,在图形界面中,磁盘和U盘等是会自动挂载的, 首先确保磁盘和U盘要链接到虚拟机中 2.查看设备块,用 lsblk ...
- U-boot 对UEFI的支持
U-boot 对UEFI的支持 UEFI on U-Boot Unified Extensible Firmware Interface Specification (UEFI) 已经成为 AArch ...
- 在Fedora中全自动签名英伟达驱动内核模块以支持安全启动(Secure Boot)
目录 前言 前提条件 具体步骤 1.将系统更新到最新并重启Fedora 2.安装Mok工具(mokutil)和密钥生成工具(openssl) 3.生成内核驱动模块的自签安全启动密钥 4.将刚刚自签的安 ...
- Linux 下易用的光盘镜像管理工具(虚拟光驱软件)转载
作者: Frazer Kline | 2014-11-23 11:07 评论: 4 收藏: 4 分享: 10 磁盘镜像包括了整个磁盘卷的文件或者是全部的存储设备的数据,比如说硬盘,光盘(DVD,C ...
- 红旗linux 桌面版 6.0 精简版 刻成光盘怎么安装不了,3分钟学会:安装红旗Linux桌面版6.0 SP1...
红旗Linux7.0 rc1桌面版相对6.0版有较大的改进,安装方法见"图文详解:安装红旗Linux7.0 rc1桌面版"一文.地址:http://www.jinhu.me/art ...
- refind linux内核参数,使用rEFInd实现OpenWRT / LEDE支持UEFI GPT启动
实际上我使用的Hyper-v第一代虚拟机运行LEDE17真的非常的稳定,网速各方面都非常满意了.最近可能没事找事的把Windows Server2012 R2 Hyper-v第一代虚拟机里面也是运行的 ...
最新文章
- 【PAT】A1053 Path of Equal Weight
- ANN:DNN结构演进History—RNN
- npm eject 暴露webpack报错,less或sass添加报错
- Android获取MAC地址
- 【Java】MANIFEST.MF是什么
- python对投标_batterytender-为Python del API投标-Jason Kölker Module
- Heartbeat实现web服务器高可用
- 数据结构手把手教学——顺序表
- 用Python和Pygame写游戏-从入门到精通(实战三:植物大战僵尸1)
- 红蓝眼睛(答案在文章中找)
- R: symbol lookup error: /home/lib/../../libreadline.so.6: undefined symbol: PC
- [ 大道至简系列 ] 三分钟理解-1NF,2NF,3NF
- 百度富文本编辑器引入问题
- C++ - sstream标准库(串流控制)
- 2018计算机二级c语言通过率,计算机二级各科通过率是多少
- 【成电860考研】《软件工程》-anki卡片知识合集-504张卡片-28000字-上岸资料整理
- 《我从起点开始奔跑》
- 【CV】收藏!YOLOv4全文解读与翻译总结!(附思维导图和论文译文)
- WIFI基础入门--802.11--高速直接序列物理层(HR/DSSS)--13
- 牵手“懂行人” ,桂电要做教育数字化转型先行者
热门文章
- BAPI_EXCHANGERATE_GETDETAIL 取汇率
- python编程题:天天向上的力量
- 教你如何解决SQL server中提示对象名无效
- 正确的序号及标点使用格式(参考文)
- php审批流设计思路,审批流设计器-字段说明
- 靠五、六流人才铸造的18万华为铁军
- keras.datasets.imdb.py 源码分析
- 技术前沿与经典文章22:继牛顿以后最伟大的物理学家——詹姆斯·克拉克·麦克斯韦
- 发送短信验证码时触发天级流控Premit:10
- 电视浏览器Emotn V1.0.0.2+悟空跨屏电视输入法