我有一个分区已满,还有大约 17gb 的未分配空间,我想将其合并。当我尝试卸载该分区时,出现无法卸载的错误。有什么办法吗?
答案1
您无法卸载根(/
)分区。因为您正在运行的 ubuntu 正在使用它。一旦您登录 ubuntu,它的根分区就会自动被挂载。
如果您想卸载/dev/sda1
分区,那么您必须运行 live-disk。
答案2
您可以将根文件系统 ( /
) 视为C:
Windows 中的驱动器。它包含(除非您另有说明)几乎所有操作系统文件。为了对安装的分区执行任何操作,/
您需要卸载该分区。要卸载分区,您必须停止使用分区上的所有文件。要停止使用操作系统文件,您需要关闭计算机。
那么如何才能做到这一点呢?好吧,我们可以使用不同的操作系统。Linux Live CD 是压缩到 CD 上的完整 Linux 副本。启动时,它会在 RAM 中创建一个根分区,而不是硬盘驱动器中。这样您就可以/dev/sda1
不受阻碍地使用硬盘驱动器分区(包括)。
当然还有其他方法,例如,您可以在第二个硬盘上安装 Linux,并将其连接到您的计算机。或者您可以通过网络启动您的计算机,其工作原理与 CD 非常相似,但它使用的是服务器TFTP
。
但是,即使您使用 Linux 实时磁盘,还有一件事也会妨碍您:您的交换空间。该分区(以及它包含的/dev/sda2
交换分区)将阻止您扩展到未分配的空间。幸运的是,停止使用交换空间更容易。您可以使用 和 暂时打开和关闭它,但这不是完整的解决方案。关闭交换后,您需要移动交换分区。如果您移动交换分区,您必须告诉 Ubuntu 您这样做了。/dev/sda5
/dev/sda1
sudo swapoff -a
sudo swapon -a
这可以在文件中完成sudo vim /etc/fstab
。后面会有一个长字符串,swap
看起来像下面的行。这是你告诉计算机要使用的交换的位置。移动交换后,你需要获取要在此处使用的新字符串。这可以使用来获取lsblk -f
。
UUID=4209c845-f495-4c43-8a03-5363dd433153 none swap defaults 0 0
完整的过程如下:
- 启动实时 CD 或其他操作系统。
- 如果操作系统自动开始使用交换分区,请关闭它
- 删除交换分区和扩展分区
- 在其他地方重新创建交换分区(如果需要也可以创建扩展分区)
- 更新 /etc/fstab
- 延长
/dev/sda1
- 重启
现在,在这个过程中有些事情可能会出错。也就是说,你可能会弄乱你的分区,/etc/fstab
或者你的/dev/sda1
分区可能会损坏。第一个问题其实不是什么大问题,因为你总是可以启动一张实时 CD 并修复它。无论如何,你的电脑很有可能在交换行出现错误的情况下正常启动。第二个问题是一个更大的问题。现代工具在扩展分区方面相当不错,但为了安全起见始终备份您正在编辑的分区/磁盘上的数据。
资料来源: