我可以在不扰乱系统的情况下扩展我的 /boot 吗?

the*_*cer 2 partitioning 10.10

这是我的分区表的当前状态。可以看出,引导很小,我无法升级内核,因为更新管理器告诉我 /boot 上没有足够的空间 :( 这实际上意味着我无法更新我的内核。我可以吗?更改引导的大小,而无需重新安装任何一个已安装的系统?

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda5              12G  4.9G  6.2G  45% /
none                  2.0G  284K  2.0G   1% /dev
none                  2.0G  8.5M  2.0G   1% /dev/shm
none                  2.0G   92K  2.0G   1% /var/run
none                  2.0G     0  2.0G   0% /var/lock
/dev/sda3              42G   21G   22G  49% /media/Erste
/dev/sda2             5.1G  2.5G  2.7G  48% /media/Swap
/dev/sda1              30G   25G  4.9G  84% /media/Windows7
/dev/sda9              47G   28G   20G  60% /media/Zweite
/dev/sda6              11G  7.6G  2.0G  80% /home
/dev/sda8              49M   31M   16M  66% /boot
Run Code Online (Sandbox Code Playgroud)

是输出

sudo fdisk -lu

小智 5

也许你可以避免这种情况?看起来您的分区足够大。可以删除旧内核吗?您当前使用的内核是什么?( uname -r) 它可能会输出类似 2.6.35-24-generic 的内容。以及安装了哪些内核?( ls /boot | grep vmlinuz),它可能会输出类似

vmlinuz-2.6.35-22-generic
vmlinuz-2.6.35-24-generic
Run Code Online (Sandbox Code Playgroud)

在此示例中,您知道您使用的是 2.6.35-24,因此请查找 2.6.35-22。

dpkg -l | grep 2.6.35-22
Run Code Online (Sandbox Code Playgroud)

输出告诉我们使用哪些名称来删除它们

ii  linux-headers-2.6.35-22 2.6.35-22.35
    Header files related to Linux kernel version 2.6.35
ii  linux-headers-2.6.35-22-generic 2.6.35-22.35
    Linux kernel headers for version 2.6.35 on x86/x86_64
ii  linux-image-2.6.35-22-generic 2.6.35-22.35
    Linux kernel image for version 2.6.35 on x86/x86_64
Run Code Online (Sandbox Code Playgroud)

现在我们可以

sudo apt-get remove linux-headers-2.6.35-22 linux-headers-2.6.35-22-generic linux-image-2.6.35-22-generic
Run Code Online (Sandbox Code Playgroud)

为安装新内核腾出空间。


psu*_*usi 5

您发布了 的输出df,这不是您的分区表的列表。为此,您需要发布fdisk -lu. 问题是,/boot磁盘上的分区后面是什么?如果它不是可用空间,或者另一个可以缩小并移动的/boot分区,那么不,您不能扩展该分区。

另一种方法是简单地取消/boot分区。首先卸载/boot分区,然后将其重新安装到其他地方,例如/mnt. 然后sudo cp -ax /mnt /boot将所有文件复制到您的根分区。然后/boot从您的分区中删除分区条目/etc/fstab,最后重新安装 grub sudo grub-install /dev/sda