Disk Space full while doing apt-get operation on Ubuntu 14.04
Solution 1
You're right, you have plenty of disk space on /
but you quickly fill up /boot
when you try to unpack the new image, which is why your apt-get install -f
command fails.
The problematic packages are in your dpkg
output, and the apt-get
output.
You can try using aptitude install -f
to see if one of the choices will resolve the issue for you (probably by removing those packages), or you can try apt-get purge linux-image-extra-3.13.0-61-generic linux-image-extra-3.13.0-62-generic linux-image-generic
to remove the broken, and partially configured packages installed.
If you're desperate enough to use dpkg
be sure to pay attention to the messages and remove dependencies on a package before trying to remove a package. From your command above, you should probably remove linux-image-extra-3.13.0-55-generic
before trying to remove linux-image-3.13.0-55-generic
if you want to go that route.
Take extra care to make sure you don't remove the running kernel 3.13.0-45-generic
.
Then you can apt-get autoremove
and apt-get purge
the remaining unneeded kernel packages, and then install the later kernel it looks like you were trying to install.
Solution 2
Your root file system (/
) has plenty of free space, however /boot
does not.
Take a closer look at the error output from the sudo apt-get install -f
command:
Unpacking linux-image-3.13.0-62-generic (3.13.0-62.102) ...
dpkg: error processing archive /var/cache/apt/archives/linux-image-3.13.0-62-generic_3.13.0-62.102_amd64.deb (--unpack):
cannot copy extracted data for './boot/vmlinuz-3.13.0-62-generic' to '/boot/vmlinuz-3.13.0-62-generic.dpkg-new': failed to write (No space left on device)
It's trying to place a file in /boot
and that file system doesn't have enough space for it.
Your options:
- Remove files from
/boot
that are no longer needed - Add more space to
/boot
. This one may be difficult to do since LVM isn't being used. If this is a virtual machine perhaps not. - Ditch
/boot
altogether. In most situations having a separate file system for/boot
isn't necessary. (before considering this take a look at @Kassandry's answer)
If you decide to get rid of the /boot
file system you can do the following.
NOTE: Be very careful if you use the following instructions:
mkdir ~/copy-of-boot-files
sudo rsync -aHS /boot/ ~/copy-of-boot-files/
sudo umount /boot
sudo rsync -AHS ~/copy-of-boot-files/ /boot/
sudo sed -i 's/.*\/boot.*/#&/' /etc/fstab
Again: be very careful if you do this. Make sure you have Ubuntu installation media around so you can boot into Linux Rescue mode to repair any damage you may cause. You could render your system unbootable if this isn't done properly.
Basically you'd create a copy of /boot
's contents, unmount /boot, copy the contents back, and disable /boot
from being mounted during start up.
An additional note: You may need to update your bootloader configuration (e.g. update-grub
, not sure what that version of Ubuntu uses). Also, if this is a paravirtualised guest under Xen you need to make sure the domU configuration knows to retrieve the kernel from the new location (sda3
instead of sda1
).
Related videos on Youtube
Bhaskar
Updated on September 18, 2022Comments
-
Bhaskar over 1 year
Im Trying to install new software on my Ubuntu 14.04, which is running
$ uname -r 3.13.0-45-generic
There are old kernals installed on my machine
$ dpkg --list | grep linux-image rc linux-image-3.13.0-24-generic 3.13.0-24.47 amd64 Linux kernel image for version 3.13.0 on 64 bit x86 SMP ii linux-image-3.13.0-45-generic 3.13.0-45.74 amd64 Linux kernel image for version 3.13.0 on 64 bit x86 SMP ii linux-image-3.13.0-55-generic 3.13.0-55.94 amd64 Linux kernel image for version 3.13.0 on 64 bit x86 SMP ii linux-image-3.13.0-57-generic 3.13.0-57.95 amd64 Linux kernel image for version 3.13.0 on 64 bit x86 SMP ii linux-image-3.13.0-58-generic 3.13.0-58.97 amd64 Linux kernel image for version 3.13.0 on 64 bit x86 SMP ii linux-image-3.13.0-59-generic 3.13.0-59.98 amd64 Linux kernel image for version 3.13.0 on 64 bit x86 SMP ii linux-image-3.13.0-61-generic 3.13.0-61.100 amd64 Linux kernel image for version 3.13.0 on 64 bit x86 SMP rc linux-image-extra-3.13.0-24-generic 3.13.0-24.47 amd64 Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP ii linux-image-extra-3.13.0-45-generic 3.13.0-45.74 amd64 Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP ii linux-image-extra-3.13.0-55-generic 3.13.0-55.94 amd64 Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP ii linux-image-extra-3.13.0-57-generic 3.13.0-57.95 amd64 Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP ii linux-image-extra-3.13.0-58-generic 3.13.0-58.97 amd64 Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP ii linux-image-extra-3.13.0-59-generic 3.13.0-59.98 amd64 Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP iF linux-image-extra-3.13.0-61-generic 3.13.0-61.100 amd64 Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP iU linux-image-extra-3.13.0-62-generic 3.13.0-62.102 amd64 Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP iU linux-image-generic 3.13.0.62.69 amd64 Generic Linux kernel image
When i am trying to Purge them using below command
$ sudo apt-get purge linux-image-3.13.0-24-generic Reading package lists... Done Building dependency tree Reading state information... Done You might want to run 'apt-get -f install' to correct these: The following packages have unmet dependencies: linux-image-extra-3.13.0-62-generic : Depends: linux-image-3.13.0-62-generic but it is not going to be installed linux-image-generic : Depends: linux-image-3.13.0-62-generic but it is not going to be installed E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
Im getting above error.
While doing auto remove getting error
$ sudo apt-get autoremove Reading package lists... Done Building dependency tree Reading state information... Done You might want to run 'apt-get -f install' to correct these. The following packages have unmet dependencies: linux-image-extra-3.13.0-62-generic : Depends: linux-image-3.13.0-62-generic but it is not installed linux-image-generic : Depends: linux-image-3.13.0-62-generic but it is not installed E: Unmet dependencies. Try using -f.
And if i run force install it is saying no space left on device ..
$ sudo apt-get install -f Reading package lists... Done Building dependency tree Reading state information... Done Correcting dependencies... Done The following packages were automatically installed and are no longer required: linux-headers-3.13.0-55 linux-headers-3.13.0-55-generic linux-headers-3.13.0-57 linux-headers-3.13.0-57-generic linux-headers-3.13.0-58 linux-headers-3.13.0-58-generic linux-headers-3.13.0-59 linux-headers-3.13.0-59-generic linux-image-3.13.0-55-generic linux-image-3.13.0-57-generic linux-image-3.13.0-58-generic linux-image-3.13.0-59-generic linux-image-extra-3.13.0-55-generic linux-image-extra-3.13.0-57-generic linux-image-extra-3.13.0-58-generic linux-image-extra-3.13.0-59-generic Use 'apt-get autoremove' to remove them. The following extra packages will be installed: linux-image-3.13.0-62-generic Suggested packages: fdutils linux-doc-3.13.0 linux-source-3.13.0 linux-tools The following NEW packages will be installed: linux-image-3.13.0-62-generic 0 upgraded, 1 newly installed, 0 to remove and 48 not upgraded. 5 not fully installed or removed. Need to get 15.2 MB of archives. After this operation, 42.5 MB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://mirrors.voxel.net/ubuntu/ trusty-updates/main linux-image-3.13.0-62-generic amd64 3.13.0-62.102 [15.2 MB] Fetched 15.2 MB in 4s (3,237 kB/s) (Reading database ... 243451 files and directories currently installed.) Preparing to unpack .../linux-image-3.13.0-62-generic_3.13.0-62.102_amd64.deb ... Done. Unpacking linux-image-3.13.0-62-generic (3.13.0-62.102) ... dpkg: error processing archive /var/cache/apt/archives/linux-image-3.13.0-62-generic_3.13.0-62.102_amd64.deb (--unpack): cannot copy extracted data for './boot/vmlinuz-3.13.0-62-generic' to '/boot/vmlinuz-3.13.0-62-generic.dpkg-new': failed to write (No space left on device) No apport report written because the error message indicates a disk full error dpkg-deb: error: subprocess paste was killed by signal (Broken pipe) Examining /etc/kernel/postrm.d . run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.13.0-62-generic /boot/vmlinuz-3.13.0-62-generic run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.13.0-62-generic /boot/vmlinuz-3.13.0-62-generic Errors were encountered while processing: /var/cache/apt/archives/linux-image-3.13.0-62-generic_3.13.0-62.102_amd64.deb E: Sub-process /usr/bin/dpkg returned an error code (1)
My disk utilisation:
$ df -k Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda3 955997652 5241596 911812456 1% / none 4 0 4 0% /sys/fs/cgroup udev 4066160 12 4066148 1% /dev tmpfs 815404 512 814892 1% /run none 5120 0 5120 0% /run/lock none 4077016 0 4077016 0% /run/shm none 102400 0 102400 0% /run/user /dev/sda1 190346 152098 24199 87% /boot
How can i make space on my Ubuntu so that i can install new applications on it ?
Please help...
-
jarno almost 7 years
-