Ubuntu 升级:/var/ 中磁盘空间不足

Ubuntu 升级:/var/ 中磁盘空间不足

我目前正在运行 Ubuntu 15.10,但尝试升级到 16.04。当我运行 时sudo do-release-upgrade,进程中止并显示以下消息:

Not enough free disk space 

The upgrade has aborted. The upgrade needs a total of 2,206 M free 
space on disk '/var'. Please free at least an additional 4,623 k of 
disk space on '/var'. Empty your trash and remove temporary packages 
of former installations using 'sudo apt-get clean'. 

我试过了sudo apt-get clean,但并没有显著减少空间,而且我不太明白为什么会出现这个错误。我的磁盘分区如下所示:

Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           787M  9.8M  777M   2% /run
/dev/sda6        26G   14G   11G  58% /
tmpfs           3.9G  233M  3.7G   6% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sda4       923M  8.6M  851M   1% /tmp
/dev/sda3       3.7G  1.4G  2.1G  40% /var
/dev/sda2        78G   47G   28G  63% /home
/dev/sda1       256M   32M  225M  13% /boot/efi
tmpfs           787M   12K  787M   1% /run/user/121
tmpfs           787M   20K  787M   1% /run/user/1000

如果操作系统没有安装到 /var 分区,为什么升级程序需要该分区上的空间?

此外,为了以防万一有帮助,这是 /var 的内部(对我来说看起来很正常):

total 88
drwxr-xr-x  15 root root      4096 Aug 17  2015 .
drwxr-xr-x  23 root root      4096 Feb  4 19:38 ..
drwxr-xr-x   2 root root      4096 Jan 26 19:38 backups
drwxr-xr-x  22 root root      4096 Oct 23 22:24 cache
drwxrwsrwt   2 root whoopsie  4096 Feb  3 22:25 crash
drwxr-xr-x  79 root root      4096 Feb  4 19:38 lib
drwxrwsr-x   2 root staff     4096 Apr 17  2015 local
lrwxrwxrwx   1 root root         9 Aug 16  2015 lock -> /run/lock
drwxrwxr-x  13 root syslog    4096 Feb  4 18:45 log
drwx------   2 root root     16384 Aug 16  2015 lost+found
drwxrwsr-x   2 root mail      4096 Apr 22  2015 mail
drwxrwsrwt   2 root whoopsie  4096 Apr 22  2015 metrics
drwxr-xr-x   2 root root      4096 Apr 22  2015 opt
lrwxrwxrwx   1 root root         4 Aug 16  2015 run -> /run
drwxr-xr-x   9 root root      4096 Feb 26  2016 spool
drwxrwxrwt 126 root root     20480 Feb  4 20:11 tmp
drwxrwxr-x   2 root plugdev   4096 Sep  3  2013 upek_data

任何帮助将非常感激!

答案1

如果操作系统没有安装到 /var 分区,为什么升级程序需要该分区上的空间?

更新程序需要先下载所有新版本的替换 .deb 软件包,然后才能安装它们。它将这些文件存储在 /var/cache/apt/archives 中。

根据您提供的信息,您有一个单独的 /var 分区,只剩下大约 2 GB 的空间。您当前的根分区使用了大约 14 GB。即使考虑到在较新版本中不需要复制的无关软件包(例如旧内核等),两者之间的差异也太大了,根据更新程序,大约为 4.6 GB。

如果您没有选择拥有单独的 /var 分区,而只是将 /var 保留在根分区内,则不会发生此问题,因为您有一个相当大的 / 分区。

解决该问题的一种方法是通过占用 /dev/sda6 或 /dev/sda2 的空间来调整(扩大)/var 分区的大小。您必须从实时介质(而不是从当前硬盘驱动器安装)执行此操作,因为您无法在安装分区时对其进行修改。我个人更喜欢使用实时 ubuntu USB 棒中的 gparted 工具。


注意:如果您还没有备份系统,那么现在正是备份的好时机。下载所需文件并开始更新后,除非您重新安装或有备份可恢复,否则无法恢复到以前的版本。

相关内容