如何设置内部 SATA SSD 以便它启动 Ubuntu 安装程序 ISO 映像?这比使用 USB 记忆棒要快得多。
dd
将映像文件放入磁盘分区,然后设置链式加载此分区的简单方法grub
行不通。为什么不行?启动 ISO 映像的关键功能是什么?拇指驱动器有此功能,但内部驱动器没有此功能?
答案1
获取
uuid
磁盘上的分区:命令 blkid /dev/sda1:UUID="6f2b5b8c-f0af-4d4d-a32b-2481a9e2c5d7“类型=“ext4”PARTUUID=“694a694a-05”
将 ISO 存储在分区的根目录中,在此示例中我们将使用
ubuntu-19.04-desktop-amd64.iso
。挂载 ISO 并
menuentry
从中复制第一个文件/boot/grub/grub.cfg
,然后将其粘贴到/etc/grub.d/40_custom
:#!/bin/sh exec tail -n +3 $0 # This file provides an easy way to add custom menu entries. Simply type the # menu entries you want to add after this comment. Be careful not to change # the 'exec tail' line above. menuentry "Try Ubuntu without installing" { set gfxpayload=keep linux /casper/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper quiet splash --- initrd /casper/initrd }
更改以下内容大胆的:
菜单项“无需安装即可试用 Ubuntu”{ # 你在步骤 1 中获得的 uuid 搜索--no-floppy--fs-uuid--set = root 6f2b5b8c-f0af-4d4d-a32b-2481a9e2c5d7 设置 iso_path=/ubuntu-19.04-desktop-amd64.iso 环回循环 $iso_path 设置 gfxpayload=保持 Linux的 (环形)/casper/vmlinuz 文件=/cdrom/preseed/ubuntu.seed boot=casper quiet splashiso-scan/文件名=$iso_path--- 初始化文件 (环形)/casper/initrd }
更新 grub:
sudo update-grub
下次重新启动时,您将有一个用于启动 ISO 的条目。
答案2
格鲁布 2.04
Ubuntu 19.10 及更高版本中的 Grub 2.04 不会在 UEFI 模式下链式加载 ISO 文件。
请参阅 [Bug 1851311] Re: Grub 2.04 内存不足错误,https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1851311
有关解决方法的背景信息,请参阅帖子 17 至 21。
在 SSD 上挂载 ISO 文件的步骤
使用带有 usb-pack-efi 选项的 mkusb 将 Ubuntu 安装到 SSD。(这会将 grub 2.02 替换为 2.04)。
删除 ISO9660 分区 sdx4 和 casper-rw 分区 sdx5,将 usbdata NTFS 分区 #1 拉伸到其位置。
将 ISO 放入 NTFS 分区上的 iso 文件夹。
更新 usbboot 分区 #2 上的 grub.cfg 以循环安装 ISO。
使用 grub 2.04 在 BIOS 中启动,使用 grub 2.02~Beta2 在 UEFI 中启动
在 SSD 上启动 ISO 文件并在 RAM 中运行它应该可以快速完成设置。
答案3
RAM 比 SSD 快几个数量级。
相对较快的 SSD 可以实现 456MB/秒的实际写入速度。
RAM 的理论最大速度以其 PC 编号表示,因此 PC3-12800 内存模块的传输速度为 12,800MB/秒(大约比 SSD 实际性能快 30 倍)。
Ubuntu 安装程序映像将在 RAM 中运行。您需要的 RAM 大于映像的大小。(>2.5GB)。
Mkusb 将制作一个具有启动到 RAM 选项的 USB,或者在启动时,您可以按 shift,然后按 F6 并键入空格,然后按 toram,然后按 Enter。
答案4
一般意见
我注意到答案非常不同。我认为这是因为我们以不同的方式阅读了您的问题。请说得更清楚一些:
- 或者编辑你的问题以使其更具体,以便我们了解你想要什么,
- 或者,如果其中一个答案正好针对您想要的,您可以接受它,然后通过这种方式让我们知道(如果您让我知道我的答案不是您想要的或需要的,我可以删除它以减少其他人的困惑。)
你的[原始]问题和我的回答
如何设置内部 SATA SSD 以便它启动 Ubuntu 安装程序 ISO 映像?这比使用 USB 记忆棒要快得多。
如果您使用的工具允许,您可以将 SATA SSD(内部 SATA 或外部 eSATA 或通过 USB 适配器或盒子连接)视为 USB 记忆棒。
你说得对,它比使用 USB 记忆棒快得多。
幼稚的做法
dd
将映像文件复制到磁盘分区,然后设置grub
链式加载此分区不起作用。为什么不行?启动 ISO 映像的关键功能是什么?拇指驱动器有此功能,但内部驱动器没有此功能?
我已经完成了dd
。这样就可以了,但是如果使用简单的克隆方法,将会造成驱动器空间的严重浪费。
但是,有几种方法可以创建带有持久性分区的持久实时驱动器,您可以在其中使用克隆映像“后面”的剩余驱动器空间,或创建专用的分区表。
我已经多次这样做了,可以确认它有效。我还创建了持久实时驱动器,mkusb
,编辑分区表(当从驱动器本身启动实时“到 RAM”时)并在未分配的驱动器空间中创建已安装的系统。(安装系统时甚至可以完全覆盖实时系统,但如果您犯了错误,则必须从头开始,所以我不建议这样做。)
您也可以使用其他方法通过 grub 启动。
如果您想设置内部或外部 SSD 以便启动 Ubuntu 安装程序 ISO 映像,以下链接描述了可行的方法。
help.ubuntu.com/community/mkusb
help.ubuntu.com/community/mkusb/persistent
如何更轻松地使用 Ubuntu 19.10 制作持久实时驱动器?- 您可以mkusb-sedd
直接将其用于内部目标驱动器,因为mkusb-plug
需要可移动目标驱动器
USB 上的 Ubuntu - 在 BIOS 和 UEFI 模式下启动
help.ubuntu.com/community/Grub2/ISOBoot/示例
help.ubuntu.com/community/Installation/UEFI-and-BIOS/stable-alternative-18.04.1