我的 /boot 太小,无法升级:增加 /boot 大小?暂时清空 /boot?

我的 /boot 太小,无法升级:增加 /boot 大小?暂时清空 /boot?

我现在用的 Ubuntu 13.10 已经不再支持了,想升级到 14.04,但是可能是因为之前的版本启动分区设置得太小,导致运行时do-release-upgrade出现如下错误:

升级已中止。升级总共需要 56.8 M 的可用空间
磁盘“/boot”上的空间。请释放至少 8,059 k 的
'/boot' 上的磁盘空间。清空垃圾并删除临时包
以前的安装都是使用‘sudo apt-get clean’的。

我当前的磁盘使用情况df -h /boot是:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        88M   34M   47M  43% /boot

文件/boot位于:

e9t@/$ ls -al /boot
drwxr-xr-x 5 root root 1.0K 2014 年 9 月 13 日 [1] grub
drwx------ 2 root root 12K 2014 年 3 月 5 日 [2] lost+found
-rw------- 1 root root 3.2M 2013年10月10日 [3] System.map-3.11.0-12-generic
-rw-r--r-- 1 root root 983K 2013年10月10日 [4] abi-3.11.0-12-generic
-rw-r--r-- 1 root root 160K 2013年10月10日 [5] config-3.11.0-12-generic
-rw-r--r-- 1 root root 17M 2014年4月8日 [6] initrd.img-3.11.0-12-generic
-rw-r--r-- 1 root root 173K 2013年6月17日 [7] memtest86+.bin
-rw-r--r-- 1 root root 175K 2013年6月17日 [8] memtest86+_multiboot.bin
-rw------- 1 root root 5.4M 2013年10月10日 [9] vmlinuz-3.11.0-12-generic

清洁或释放更多空间/boot不是一个选项,因为我的 /boot 刚好够容纳必要的文件 - grubvmlinuzinitrd

因此我只剩下以下选择:

  1. 增加分区的大小(但是我必须使用命令行,并且无法使用实时 CD/USB,因为我正在远程工作。)
  2. 暂时清空/boot(或移动一个大文件,例如initrd),升级操作系统,然后恢复/boot(或将大文件移回)

哪种方法更安全或更可取?有没有比我提到的两种方法更好的方法来解决我的问题?

答案1

尝试这个:

OLDCONF=$(dpkg -l|grep "^rc"|awk '{print $2}')
CURKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-386//g')
LINUXPKG="linux-(image|headers|ubuntu-modules|restricted-modules)"
METALINUXPKG="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"
OLDKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $LINUXPKG |grep -vE $METALINUXPKG|grep -v $CURKERNEL)
sudo apt-get remove --purge $OLDCONF
sudo apt-get remove --purge $OLDKERNELS

相关内容