要直接从硬盘驱动器引导 Linux ISO 映像,您的硬盘驱动器上必须安装了 Linux 操作系统,并且您的计算机必须使用 GRUB2 引导加载程序。 GRUB2 引导加载程序是大多数 Linux 系统上的标准引导加载程序。
注意:下载的 Linux ISO 文件必须是每个 Linux ISO 映像的 live CD 版本。
如何从 Linux 获取 ISO 文件:
1)首先,在谷歌上搜索你要下载的ISO文件。要下载这些 Linux 发行版,您可以访问:
- Ubuntu:https://ubuntu.com/download
- debian : https://www.debian.org/CD/http-ftp/
- LinuxMint:https://linuxmint.com/download。 PHP
- 红帽:https://www.redhat.com/en/store
2)我们以下载Ubuntu为例。
- 访问官方网站并导航到下载选项卡。
- 选择 Ubuntu 桌面进行下载。
- 选择 Ubuntu 的 LTS(长期支持)版本进行下载。
- 您的下载将在几秒钟后开始。
确定硬盘分区的路径:
GRUB 使用的“设备名称”方案与 Linux 不同。在你的 Linux 系统中,/dev/sda1 是第一个硬盘上的第一个分区,其中a表示第一个硬盘,1 表示它的第一个分区。在 GRUB 中,(hd0,1) 相当于 /dev/sda0,其中0表示第一个硬盘, 1表示其上的第一个分区。也就是说,在 GRUB 设备名中,磁盘编号从 0 开始计数,分区编号从 1 开始计数。例如,(hd2,5) 指的是第三个硬盘上的第五个分区。
要查看信息,我们在 Ubuntu 的终端上使用fdisk -l命令并使用以下命令:
sudo fdisk -l
将显示 Linux 设备路径列表,您可以自行将其转换为 GRUB 设备名称。
将引导菜单添加到 GRUB:
添加自定义引导条目的最佳方式是编辑 /etc/grub.d/40_custom 脚本,该脚本专为用户添加的自定义引导条目而设计。完成文件编辑后,/etc/defaults/grub 文件和 /etc/grub.d/ 脚本的每个内容都将合并并创建一个 /boot/grub/grub.cfg 文件。
注意:您不应手动编辑此文件。它旨在根据您在其他文件中指定的设置自动生成。
您需要打开 /etc/grub.d/40_custom 文件以使用 root 权限进行编辑。在 Ubuntu 上,您可以通过打开终端窗口并运行以下命令来执行此操作:
sudo gedit /etc/grub.d/40_custom
您只需将 gedit 替换为您的编辑器名称即可在您喜欢的编辑器中打开此文件。
因此,要从 ISO 文件启动 Ubuntu 或基于 Ubuntu 的发行版。我们用 Ubuntu 20.04 对此进行了测试:
menuentry “Ubuntu 20.04 ISO” {
set isofile=”/home/nikhil/ubuntu-20.04.1-desktop-amd64.iso”
loopback loop (hd0,1)$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=${isofile} quiet splash
initrd (loop)/casper/initrd.lz
}
笔记:
- 您可以自定义引导条目以包含所需的菜单条目名称、PC 上 ISO 文件的正确路径以及包含 ISO 文件的硬盘和分区的设备名称。如果 vmlinuz 和 initrd 文件具有不同的名称或路径,请确保也指定这些文件的正确路径。
- 不同的 Linux 发行版需要具有不同引导选项的不同引导条目。 GRUB Live ISO Multiboot 项目为不同的 Linux 发行版提供了各种菜单项。您应该能够为要引导的 ISO 文件调整这些示例菜单条目,或者您也可以只在 Web 上搜索要引导的 Linux 发行版的名称和版本号以及“从 GRUB 中的 ISO 引导”以查找更多信息。
如果要添加更多 ISO 引导选项,请向文件添加其他部分,否则只需保存文件并返回终端窗口。
更新 GRUB:
要更新 GRUB,请运行以下命令:
sudo update-grub
下次启动计算机时,您将看到 ISO 启动项,您可以选择启动 ISO 文件。您可能需要在启动时按住 Shift 才能看到 GRUB 菜单。
注意:如果您在尝试引导 ISO 文件时看到错误消息或黑屏,则说明您在某处错误地配置了引导条目。即使您获得了正确的 ISO 文件路径和设备名称,ISO 文件中 vmlinuz 和 intird 文件的路径也可能不正确,或者您正在启动的 Linux 系统可能需要不同的选项。