我已经通过原始 ISO 文件创建了一个自定义 ISO 文件MKISOF,但现在我无法在 VirtualBox 5.2 中启动它:
FATAL : Couldn't read from the boot medium ! System halted.
这是我用来创建 ISO 的命令:
sudo mkisofs -o ubuntu.iso test2/
我刚刚替换了该casper/filesystem.squashfs
文件(虽然我需要更新casper/filesystem.squashfs.gpg
,/md5sums.txt
但这些不是我关心的问题,因为问题出在 ISO 文件本身。VBox 甚至无法启动内核,更不用说文件系统完整性检查了)。
原始 ISO 文件是:ubuntu-18.04.3-live-server-amd64.iso
任何帮助深表感谢
编辑:问题肯定出在MKISOF因为我尝试在不进行任何操作的情况下从提取的 ISO(原始 ISO)中制作 ISO 文件,但我再次遇到该错误。
看起来只是一个启动缺少标志,但我不知道如何添加它。
答案1
最近的手册页位于:
http://schilytools.sourceforge.net/man/man8/mkisofs.8.html
如果您检查命令行,您会发现您没有使用任何使 CD 可引导的选项。
如果您安装了原始版本,您将拥有一个包含以下命令行示例的mkisofs
文件:README.eltorito
mkisofs -V MYVOL -iso-level 4 -R -b boot/grub/stage2_eltorito -no-emul-boot \
-boot-load-size 4 -boot-info-table -o myvol.iso thisdir
和这个:
mkisofs -V MYVOL -iso-level 4 -R -b boot/grub/stage2_eltorito -no-emul-boot \
-boot-load-size 4 -boot-info-table \
-eltorito-alt-boot -eltorito-platform efi -b boot/grub/boot.efi \
-no-emul-boot
-o myvol.iso thisdir
作为 EFI 示例。但是,您需要知道从哪里获取启动映像......
重要的:文件名是示例。您需要使用与您想要转换为可启动 CD 的文件树相匹配的正确的实际现有文件名。
顺便说一句:从genisoimage
2004 年 5 月开始,它还不支持-eltorito-platform efi
.
最新版本mkisofs
始终位于schilytools
tarball 中:
http://sourceforge.net/projects/schilytools/files/
如果您有可用的 ISO 映像,则可以运行isodebug -i xxx.iso
(将 xxx.iso 替换为您的映像名称)来获取已与该映像一起使用的 mkisofs 命令行选项。但请注意,这只适用于使用原始 mkisofs 程序创建 xxx.iso 的情况。
无论如何,如果您从某个地方获得了启动树,我确信它们知道哪些文件是您需要告诉 mkisofs 作为启动映像文件的文件。