如何在 Ubuntu 上安全释放引导分区中的空间如何在 Ubuntu 上安全释放引导分区中的空间如何在 Ubuntu 上安全释放引导分区中的空间如何在 Ubuntu 上安全释放引导分区中的空间
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

如何在 Ubuntu 上安全释放引导分区中的空间

发表 admin at 2025年2月28日
类别
  • 未分类
标签

面临引导空间已满错误。使用简单的方法检查使用情况并清理启动分区。

要点

  • 要释放启动分区中的空间,可以使用“sudo apt autoremove”命令,或者使用特定的包名称“dpkg --purge”命令。这些命令可以删除旧的未使用的内核以释放引导分区中的空间。
  • 您可以使用 Synaptic 等图形应用程序来管理和删除旧内核。使用此工具,您可以将多个内核包标记为一次性删除,从而获得更多可用空间。
  • 您还可以使用 GParted 永久调整启动分区的大小以获得额外空间。

清理 Ubuntu Linux 系统上的启动分区通常涉及删除旧的或未使用的内核文件。随着时间的推移,当您更新 Linux 内核时,旧的内核版本会累积并占用空间。要释放启动空间,您只需删除旧内核或立即调整启动分区的大小即可。

Linux 上的引导分区是什么? (以及为什么你应该清洁它)

Linux 上的启动分区是一个小分区,其中包含启动操作系统所需的文件。主要包含内核、initrd 和 bootloader。引导分区通常挂载在/boot/。引导分区有助于在单个计算机或系统上运行多个操作系统。它允许每个操作系统都有自己的引导加载程序。

您应该定期清理启动分区以删除旧的和未使用的内核。这些旧内核占用大量空间,并在更新系统时引起问题。这还可以阻止进一步的更新,甚至减慢启动过程。一些旧内核可能包含错误或漏洞,可能使您的 Linux 系统面临威胁。

您可以使用 apt autoremove 等工具删除旧内核,或手动删除 /boot/ 中的文件。不要删除当前内核或引导加载程序所需的文件。否则,您的系统将无法启动。

在 Linux 上调整启动分区的大小是一项危险的操作,可能会导致数据丢失、系统损坏或启动失败。在尝试修改启动分区之前,请备份数据并检查磁盘运行状况。

检查引导分区使用情况

在释放空间之前,必须检查启动分区的使用情况。这将使您了解系统的引导分区空间有多少。它还将有助于确定启动分区所需的空间。

要检查启动分区的使用情况,您可以运行 df -h 命令。这里的 -h 选项以更易读的格式显示信息 - 以千兆字节和兆字节为单位:

df -h

此命令的输出将显示引导分区总大小、已用空间、可用空间和使用百分比。

使用 Linux 终端删除旧内核

当您定期更新 Ubuntu Linux 系统时,旧的内核文件通常会随着时间的推移开始累积。这些累积的旧内核版本可能会消耗引导分区中宝贵的磁盘空间。

删除旧的未使用的内核文件将释放引导分区中的空间,为其他文件或新内核腾出更多空间。

您可以使用 apt autoremove 命令自动删除未使用的内核。此命令还会删除未使用的关联依赖项。在终端中运行以下命令:

sudo apt autoremove

此命令将显示要删除的所有软件包的列表。您应该按 Y 继续。

这 自动删除 仅当 /boot 分区中有剩余空间时,此方法才有效。如果您的 /boot 分区已满,您必须先手动删除一些旧内核。

在手动删除旧内核之前,首先检查当前正在运行的内核的名称和版本。这可以确保您不会意外删除活动内核,这对于系统的稳定性非常重要。

您可以使用uname命令查找当前运行的内核版本。这将显示您正在使用的内核版本,并且您不应删除:

uname -r

了解当前内核后,您可以使用 ls 命令以详细格式列出 /boot 目录的所有内容:

ls -l /boot

此命令显示与 Linux 内核相关的文件,例如内核映像 (vmlinuz)、初始 ramdisk 映像 (initrd.img) 和配置文件。您可以删除标记为“旧”或版本号与当前内核不同的未使用内核。

您可以使用 dpkg 命令列出所有已安装且软件包名称中包含“linux-image”的软件包。它专门针对与Linux内核相关的软件包,包括不同的内核版本和相关模块。

dpkg -l | grep linux-image

这将向您展示如下内容:

输出表明系统上安装了多个 Linux 内核映像。标有状态“ii”的已安装。那些标记为“rc”的已被删除,但仍然有残留的配置文件。内核 5.15.0-25-generic 和 6.2.0-26-generic 是较旧的内核版本。最新版本是 6.2.0-32-generic,之前的版本是 6.2.0-31-generic。

您可能已经注意到,ls -l/boot 命令不显示内核 5.15.0-25-generic 和 6.2.0-26-generic。这是因为这两个内核已被 dpkg 命令删除并标记为“rc”。

建议至少保留一两个以前的内核作为备份。如果最新内核失败,您可以使用以前的内核来引导系统。它还可以避免数据丢失或重新安装操作系统的需要。

内核 6.2.0-32-generic 是当前内核,因此我们不想删除它。要删除旧的未使用的内核,请使用以下格式的命令:

sudo apt remove linux-image-<old_kernel_version>

在上面的命令中,linux-image- 是包含旧内核版本的包的名称。在这里,您可以指定要删除的内核。

要删除 linux-image-5.15.0-25-generic 内核,可以使用以下命令:

sudo apt remove linux-image-5.15.0-25-generic

这还将删除任何相关的软件包,例如 linux-modules 或 linux-headers。按 Y 确认操作。

同样,您还可以使用以下命令删除其他旧内核:

sudo apt remove linux-image-6.2.0-26-generic

使用 apt remove 命令删除的旧内核软件包仍然出现在 dpkg -l 列表中。这是因为 apt remove 命令对于不删除其他包可能需要的包更加谨慎。因此,如果它检测到该包已经处于“已删除”状态,它可能不会再次尝试删除它。

这就是为什么在上面的情况下,运行 apt remove 没有从 dpkg -l 列表中删除该包,因为它已经被标记为“rc”。

您可以使用 dpkg purge 命令从系统中完全删除软件包及其相关配置文件。当您运行 dpkg --purge 时,它不会检查依赖项。它只是删除您指定的包:

sudo dpkg --purge linux-image-5.15.0-25-generic

此命令显式清除软件包 linux-image-5.15.0-25-generic,这意味着它会删除 linux-image 软件包及其关联的依赖项。现在该软件包将不再出现在dpkg -l 列表中。

同样,您也可以使用以下命令完全删除 6.2.0-26-generic 内核包:

sudo dpkg --purge linux-image-6.2.0-26-generic

现在,6.2.0-26 软件包也已从 dpkg -l 列表中删除。

您还可以使用 rm 命令从引导分区中删除旧内核。

sudo rm /boot/vmlinuz-6.2.0-26-generic

要删除具有相同命名模式的多个文件,可以使用以下命令:

sudo rm /boot/*-6.2.0-{26}-*

此命令将删除启动分区中名称与模式 -6.2.0-{26} 匹配的所有文件。

您还可以指定多个命名模式以一次删除所有它们。命令之间的逗号 (,) 指定大括号扩展内的多个值。

sudo rm /boot/*-6.2.0-{26,31}-*

上述命令删除 /boot 目录中名称与模式 -6.2.0-{26} 或 -6.2.0-{31} 匹配的文件。

现在更新 GRUB 引导加载程序配置以避免显示旧内核:

sudo update-grub

运行 autoremove 命令来清理不再需要的任何剩余包。此命令还将删除与已删除内核关联的旧 initramfs 和头文件:

sudo apt autoremove

使用 Synaptic 删除旧的未使用的内核文件

使用终端删除旧内核可能很困难且有风险。它需要输入复杂的命令并了解内核包的确切名称。您可以使用名为 Synaptic 的基于 GUI 的包管理器工具轻松删除旧内核。

使用 Synaptic,您可以有选择地删除旧的未使用的内核。您应该始终保留当前内核和前一个内核作为系统的备份。这将提高您的系统性能并节省磁盘空间。

首先,您需要在系统上安装 Synaptic。要安装 Synaptic,请使用以下命令:

sudo apt install synaptic

从应用程序菜单或在终端窗口中键入 sudo synaptic 启动 Synaptic。

在 Synaptic 窗口中,单击“部分”按钮。现在选择“内核和模块”。这将显示系统上所有已安装的内核版本。

您还可以使用“搜索”选项来查找较旧的内核。输入 linux-image 并单击“搜索”。这将显示系统分区上所有已安装的内核软件包。

右键单击要删除的任何旧内核包(当前包和上一个包除外),然后选择“标记为完全删除”。您可以在终端窗口中运行 uname -r 命令来查找当前的内核版本。

现在,单击“应用”开始删除所选的内核版本。

您将看到即将采取的操作的摘要。单击“应用”按钮确认删除选定的包。

选定的内核包文件及其关联的依赖项将被删除。它将释放启动分区上的一些磁盘空间。

调整 Ubuntu 上的引导分区大小以释放空间

前面讨论的两种方法都依赖于删除未使用的内核或包。但删除旧内核并不是永久的解决方案。由于您安装的软件包,您的 Ubuntu 系统启动分区仍然可能被填满。因此,如果您仍然对释放的空间量不满意,请调整启动分区的大小以避免完整目录错误问题。

您可以使用 Ubuntu 上的 GParted 工具轻松调整启动分区的大小。 GParted 是一个图形分区编辑器,可以轻松地调整硬盘驱动器上的分区大小、移动、复制和操作分区。

在调整启动分区大小之前,请确保 备份您的重要数据 。这是一项高风险任务,涉及更改引导分区边界,可能会导致引导问题。

首先创建一个包含 GParted 工具 ISO 文件的可启动 USB 驱动器。 GParted是Ubuntu系统的一个便携版本,可以管理分区。首先下载创建可启动驱动器所需的 GParted ISO 文件。

下载 GParted ISO 文件后,您可以使用 Rufus 等工具创建可启动驱动器。使用此工具,您可以将 ISO 文件写入 USB 驱动器,使其可启动并可供使用。

相关:如何以简单的方式创建可启动的 Linux USB 闪存驱动器

打开您的 Ubuntu 系统并运行命令 df -h 来确定启动分区的当前大小。

在 PC 上启动 GParted

要使用 GParted,您必须更改系统 BIOS 设置中的引导顺序。这意味着您需要告诉系统从包含 GParted 的 USB 驱动器或 CD/DVD(而不是内部硬盘驱动器)启动。

重新启动系统后即可进入BIOS。您需要按特定键才能访问系统上的 BIOS 模式。根据系统型号和制造商的不同,密钥可能会有所不同。它通常是以下键之一:F1、F2、F10、F12、DEL 或 ESC。您还可以查看系统手册或屏幕说明,了解要按哪个键。

相关:如何从光盘或 USB 驱动器启动计算机

打开 BIOS 或 UEFI 设置中的“启动”或“启动顺序”菜单。

更改启动顺序以优先考虑 USB 驱动器。将 GParted USB 驱动器移至列表顶部或选择它作为第一启动设备。您也可以按“Enter”直接从 USB 驱动器启动 GParted。

更改启动顺序并保存更改后,您需要退出 BIOS 模式并重新启动系统。这将从包含 GParted 的 USB 驱动器或 CD/DVD 启动您的系统。

将 GParted 作为虚拟机启动

如果您使用 Ubuntu 作为虚拟机 (VM),则需要创建可启动的 GParted VM。设置 GParted 虚拟机时,请勿为其创建虚拟硬盘。 GParted 是一个完全在 RAM 中运行的实时 Linux 发行版,因此它不需要虚拟硬盘。

在 GParted 虚拟机设置中,将光驱设置为硬盘之前的主引导设备。

将光盘选项提升到顶部意味着将虚拟光驱设置为第一启动设备。这可确保当您启动 GParted VM 时,GParted ISO 或 Live CD 应被识别为主要启动源。

设置 GParted VM 后,您需要将包含 Ubuntu 安装的虚拟硬盘 (VDI) 连接到 GParted。 VDI 文件代表 Ubuntu 虚拟机的存储。在 GParted VM 的 SATA 控制器设置中选择 Ubuntu VDI 可使 Ubuntu 虚拟磁盘可供 GParted 进行编辑。

您可以在以下位置找到 Ubuntu VDI:

C:\Users\[Username]\VirtualBox VMs\Ubuntu

使用 GParted

从 USB 驱动器启动 GParted 后,您将看到 GNOME 分区编辑器窗口。默认情况下,选择 GParted Live 选项。按 Enter 键启动 GParted。

按 Enter 键继续使用默认设置并按照屏幕上的说明进行操作。

GParted 窗口将打开,显示系统上的所有分区。

识别非系统分区 (/dev/sda3) 并卸载它,然后再继续。这会将分区从文件系统中分离出来并可以安全地进行修改。如果您看到灰色的“安装”选项,则表示该分区已卸载。

首先,缩小非系统分区以获得一些未分配的空间。之后,您可以通过将此空间分配给启动分区来增加启动分区的大小。右键单击非系统或根分区,然后选择“调整大小/移动”。

要增加启动分区的大小,启动分区旁边必须有可用的未分配空间。

将出现一个对话框,您可以在其中拖动分区的左边缘以缩小分区,并在启动分区旁边创建一些未分配的空间。您还可以在“新尺寸”字段中指定尺寸。单击“调整大小/移动”以应用更改。

将提示一条警告消息,显示移动分区后您的系统可能无法启动。点击“确定”继续。

将在启动分区旁边创建一个新的未分配分区。

接下来,您可以在分配未分配的空间后调整启动分区的大小。右键单击启动分区并选择“调整大小/移动”选项。在对话框内,拖动分区的右边缘以将其展开并填充未分配的空间。单击“调整大小/移动”以应用更改。

单击绿色复选标记图标并从新菜单中选择“应用”来保存更改。

现在等待操作完成。 GParted 会将 dev/sda3 分区缩小 500 MiB 并将其分配给启动分区。

调整启动分区大小时,将出现操作完成的消息。

您可以从 GParted 验证新的引导分区大小。

重新启动你的 Ubuntu 系统。确保选择默认的 Ubuntu 系统作为引导选项。对于虚拟机,从默认的 Ubuntu 虚拟机引导。

重新启动后,运行命令 df -h 确认启动分区的新大小。在我们的示例中,引导分区已从 500 MiB 扩展到 1011 MiB。

主动管理 Linux 分区

Linux 分区是磁盘的一部分,用于存储 Linux 操作系统的文件和数据。在您必须面对系统上的“磁盘已满错误”之前,最好主动管理您的 Linux 分区。主动监控包括保持系统最新、定期清除旧内核以及监控磁盘空间使用情况。

与 GParted 工具一样,您也可以使用 fdisk 命令主动管理 Linux 分区。 fdisk 命令将使您能够精确控制磁盘分区。您可以查看现有分区、创建新分区并设置其文件系统类型。您还可以更改分区属性并有效管理磁盘驱动器的布局。

©2015-2025 Norria support@norria.com