很多人在想要修改正在运行的系统上的分区时都会遇到困难。通常是因为他们要修改的分区已挂载,并且当他们运行 GParted 时,该分区标有锁定符号。当然,最简单的解决方案是使用实时环境并从那里进行更改。但是,当出于某种原因他们无法访问实时媒体时会发生什么?也许他们只是无法使用 USB 设备来放置合适的实时环境,例如 ubuntu 安装 iso 或较小的 GParted live iso。您可以在没有实时 USB/CD 的情况下修改分区吗?
很多人在想要修改正在运行的系统上的分区时都会遇到困难。通常是因为他们要修改的分区已挂载,并且当他们运行 GParted 时,该分区标有锁定符号。当然,最简单的解决方案是使用实时环境并从那里进行更改。但是,当出于某种原因他们无法访问实时媒体时会发生什么?也许他们只是无法使用 USB 设备来放置合适的实时环境,例如 ubuntu 安装 iso 或较小的 GParted live iso。您可以在没有实时 USB/CD 的情况下修改分区吗?
幸运的是,有一种方法可以在没有 USB 记忆棒或 CD 驱动器的情况下启动实时环境。
这个答案的概述是您通过向 grub 添加自定义条目来引导存储在硬盘驱动器上的 iso 映像。但是,在尝试修改分区之前,请始终确保备份了您不能丢失的任何数据。这些是步骤:
以 grub 命令表示法识别您的分区。
这可能是此过程中最不为人所知的部分。我建议使用您的主目录来存储 iso 映像,因此您需要从 grub 命令提示符的角度找到它的位置。
您可以在引导时从 grub 菜单执行此操作,只需按下
c
命令模式提示符,然后ls
列出分区。您应该会看到一个包含 (hd0,msdos1) 或 (hd0,gpt1) 等内容的列表。这些是您系统上的分区,您正在寻找包含您的主目录的分区。要ls (hdX,Y)/
在命令模式提示符下执行此操作,以列出该分区顶层的内容。如果您没有单独的主分区,您正在寻找包含 home/ 的分区,如下所示。如果您确实有一个单独的主分区,那么您正在寻找 john/ 或 jane/ 或您的用户名。如果您的系统直接启动进入 Ubuntu,您可以在启动时按 shift 键(旧系统)或 Esc 键(UEFI 系统)使 grub 菜单可见。
下载iso
从https://gparted.org/download.php下载 GParted iso 。它比 Ubuntu iso 小,但也可以。选择永久存储它的位置。在此示例中,我选择了我的主目录并将 iso 重命名为 gparted.iso,而不是使用已下载并指定 gparted 版本的较长名称。这意味着我的 iso 保存在 /home/user/gparted.iso
修改 grub
下一步是修改 /etc/grub.d/40_custom 文件。您的文件需要如下所示:
/etc/grub.d/40_custom 文件应该已经有前 5 行,并且如果您过去添加了它们,可能还有其他自定义条目。您可以保持以前的任何添加不变。
您的文件版本会略有不同。您需要更改
root=(hdX,Y)
线路的正确参数。您还需要在该set isofile="/home/username/gparted.iso"
行中为您的设置获取正确的路径。如果你有一个单独的主分区,它应该是set isofile="/username/gparted.iso"
。您可以随意编辑该文件,但一种方法是在您的主文件夹中打开一个终端并使用以下命令:
a)
cp /etc/grub.d/40_custom 40_custom.bak
(这会在您的主目录中备份您的 40_custom 文件)b)
cp /etc/grub.d/40_custom 40_custom
(这会在您的主目录中创建您的 40_custom 文件的工作副本,您可以在您选择的编辑器中对其进行编辑)c)
sudo cp 40_custom /etc/grub.d/40_custom
(将修改后的文件复制回来)d)
sudo update-grub
当您重新启动时,您应该会看到一个 grub 菜单,其中包含“GParted ISO”的新条目,它将引导您进入 GParted 实时环境,您可以在其中修改分区。我关注分区问题,所以如果您遇到任何问题并且无法通过搜索 Ask Ubuntu 找到答案,请提出一个新问题,如果可以,我会提供帮助。
感谢您分享这一点!对于没有经验的用户来说,这可能不是最简单的解决方案,但在某些(或许多)情况下可能会很有帮助:)
但是,如果图像文件太大而无法通过toram选项加载到系统内存,您可能无法(或不应该)修改存储图像文件的分区。
如果它只是一个小图像文件并使用toram,这可能不会有问题。但是如果图像文件大于系统内存,或者不使用toram ,它可能是一个。而且我不想知道当您移动或调整存储图像文件的分区时会发生什么,并且必须移动包括图像文件在内的数据,并且在移动之后,系统会尝试从现在位于磁盘上其他位置的图像文件中读取数据...
为图像文件设置一个单独的小分区可能是最好和最安全的解决方案(或者只是不修改存储图像文件的分区)
有关从硬盘引导 ISO 文件的更多有用信息,请参见:https ://help.ubuntu.com/community/Grub2/ISOBoot