I encountered the following error while upgrading my Ubuntu 12.04 server. Now apt-get
is unable to install or removed any package.
Unpacking linux-headers-3.13.0-62 (from .../linux-headers-3.13.0-62_3.13.0-62.102~precise1_all.deb) ... dpkg: error processing /var/cache/apt/archives/linux-headers-3.13.0-62_3.13.0-62.102~precise1_all.deb (--unpack): unable to create `/usr/src/linux-headers-3.13.0-62/arch/arm/include/asm/ptrace.h.dpkg-new' (while processing `./usr/src/linux-headers-3.13.0-62/arch/arm/include/asm/ptrace.h'): 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) Errors were encountered while processing: /var/cache/apt/archives/linux-headers-3.13.0-62_3.13.0-62.102~precise1_all.deb E: Sub-process /usr/bin/dpkg returned an error code (1)
Though I am not really out of disk space,
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 6.8G 4.7G 1.8G 69% /
Anyhow my inodes are full,
# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda1 458752 455214 3538 100% /
I have more than ten old kernels but I am unable to remove those as my apt-get
itself is lame. So I am unable to follow this post which reports similar problem.
The only option seems to delete a few older kernels manually. Will it cause any problem?
Is there any better way out? Can I use reserved space for root for the time being and remove older kernels?
I know this post is a bit old, but I found an answer here for anybody that may stumble upon this post: https://help.ubuntu.com/community/RemoveOldKernels
In case that link is broken, here is the relevant snippet:
Safely Removing Old Kernels
For users of LVM systems, encrypted systems or limited-storage systems, the most frequent problem is that the /boot partition is simply full. The package manager cannot install a pending upgrade due to lack of space. Besides, apt-get can not remove a package due to broken dependency.
This problem can be fixed quickly and easily from the shell. Simply identify one or two old kernels to remove manually, which will provide the package manager enough space to install the queued upgrade.
I followed this with:
I found now way out from the situation and removed couple of older kernels from
/usr/src
to get rid of the situation. Fortunately everything went well and apt started working again.It is highly recommended to take back up before removing older kernels on a production machine.