我如何知道 /boot 是否有可用空间?

我如何知道 /boot 是否有可用空间?

gksudoBaobab 磁盘使用情况分析器不显示 /boot。我最近删除了几个旧内核。如何验证我是否已释放 /boot 中的空间?

在此处输入图片描述

背景故事 — 我开始大扫除,因为如果没有解决方法,Ubuntu 无法正常启动。当我的计算机警告我 /boot 几乎已满时,我诊断出了错误。警告在没有 root 权限的情况下打开了磁盘使用情况分析器,因此 /boot 未被扫描。现在分析器似乎根本找不到该目录。

我做了什么 - 更新到最新内核后,我使用以下命令逐个删除了旧内核:

sudo apt purge linux-image-[VERSION].

完成后,我更新了 grub2。

每次purge命令都说它将释放 0 字节空间。他们根据以下情况已经消失:

dpkg --list | grep linux-image

答案1

df -h显示所有分区(而不仅仅是 /home)上的空间,并查看所有内核,请执行dpkg -l linux-image*

您可以使用如下命令一次删除多个旧内核 sudo apt-get remove linux-image-2.6.32-{21,37,38,39,40,41,42,43,44}-server(根据使用 dpkg 找到的内容替换您的数字),但要小心不要删除当前内核或最新内核!

uname -r显示您当前正在使用的内容。

注意: sudo apt-get autoremove删除旧内核后运行效果很好,因为它会删除过时的依赖项。

答案2

最简单的方法是使用df命令:

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            3.7G     0  3.7G   0% /dev
tmpfs           759M  1.9M  757M   1% /run
/dev/nvme0n1p7   44G   19G   24G  44% /
tmpfs           3.8G   52M  3.7G   2% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           3.8G     0  3.8G   0% /sys/fs/cgroup
/dev/nvme0n1p8  9.1G   49M  9.0G   1% /mnt/e
/dev/nvme0n1p2   95M   28M   68M  29% /boot/efi
/dev/nvme0n1p4  391G  130G  262G  34% /mnt/c
/dev/sda3       920G   42G  878G   5% /mnt/d
tmpfs           759M   64K  759M   1% /run/user/1000
/dev/sdb5       6.3G  101M  5.9G   2% /media/rick/casper-rw
/dev/sdb1       6.4G   43M  6.4G   1% /media/rick/usbdata
/dev/sdb4       1.4G  1.4G     0 100% /media/rick/Ubuntu 18.04 LTS amd64

在我的系统上,/boot它嵌入在根/目录 () 中。所以我可以看到它位于/dev/nvme0n1p7已满 44% 的分区上(可用 24G)。这足以存储 48 个新内核,而无需清除任何现有内核。

如果您有一个单独的/boot分区,您将在df列表中看到它。

要查看每个内核/boot占用的磁盘空间,您可以使用/src/lib/lib/modulesrm-kernels显示已使用的存储而不删除任何内容:

rm-内核-may2018

在这种情况下,不仅在 中的内核中使用了 6.9 GB,/boot而且在 的其余部分中也使用了 6.9 GB /。显示内容会显示一个单独的列,用于显示目录中使用了多少空间/boot

您还可以运行du(磁盘使用情况)命令:

$ du /boot -h -s
1.2G    /boot

答案3

如果/boot是单独的文件系统,并且您使用 sudo 运行 baobab,它不会列为/boot完整磁盘分析的一部分。相反,您必须在 baobab 的启动屏幕上选择要分析的文件系统。

或者,您可以像这样运行 baobab:sudo baobab /boot立即打开/boot文件夹的磁盘使用情况。

但是,如果您已经在命令行上,则有更多方法(参见其他答案)来查询系统磁盘使用情况。

相关内容