创建可启动 ISO 的最佳工具是什么

创建可启动 ISO 的最佳工具是什么

一、OS目标:Ubuntu 16.04.5 LTS

最终目标是,我可以在 VMware 机器上安装一个 ISO,经过一些自定义后,该机器就可以启动到这个 Linux 中。

我在看Linux 直播首先,这是这个问题的主题,但如果我追求的是错误的,我愿意接受其他工具。

使用 LL,我已成功创建 ISO,但它无法通过 VMware 启动。文档说您应该执行此脚本:

root@sm:/a/linux-live/tools# ls
isolinux.bin.update

但是我无法弄清楚它想要什么“URI”。

root@sm:/a/linux-live/tools# ./isolinux.bin.update 

--------------------------------------
Add directory to isolinux search paths
(for example /slax/boot): 

脚本本身说它是适用于 debian 的,我想知道它与 ubuntu 是否有区别。

# This script will update the file ../bootfiles/isolinux.bin to match
# your LiveKit name
#
# Requires: Debian
#

所以...

  1. 有没有一个简单的修复 isolinux.bin.update 脚本的方法?
  2. 有更好的方法吗?

答案1

您链接的脚本可以在 GitHub 上找到这里对于任何想要跟进的人来说。它获取一些包并设置一些目录,但它提示的目录似乎在这段代码中使用:

for file in fs/iso9660/iso9660.c fs/lib/loadconfig.c elflink/load_env32.c; do
   sed -i -r 's:"/",:"'$DIR'",\n\t"/",:' $file
done

这看起来像是用来sed搜索"/并替换给定目录名称的实例。

它似乎正在查看一个包含如下默认路径的文件(来自GitHub

static const char *search_directories[] = {
    NULL,           /* CurrentDirName */
    "/boot/syslinux",
    "/syslinux",
    "/",
    NULL
};

我认为这意味着如果你给它一个值,/foo它会将其变成类似的路径/foo/boot/syslinux/foo/syslinux/foo作为 syslinux 默认使用的路径。

回答你关于 Ubuntu 和 Debian 在这方面的区别的问题,其实没什么区别。据我所知,两者使用本质上相同的启动过程。

有更好的方法吗?

可能更简单的方法是使用 VirtualBox/VMWare 安装 Ubuntu,然后将生成的磁盘映像复制到 USB 可启动介质。您也可以通过简单地告诉 VirtualBox 或 VMWare 执行 USB 直通或将该 USB 介质安装为可在安装过程中看到的磁盘来简化这一过程。

相关内容