"No space left on device" when installing packages, yet I have space left
Whether through update manager, or through terminal, I error out.
When I try sudo apt-get update && sudo apt-get upgrade
:
Fetched 1,024 kB in 20s (51.0 kB/s)
Reading package lists... Done
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-headers-generic :
Depends: linux-headers-3.13.0-29-generic but it is not installed
E: Unmet dependencies. Try using -f.
And When I try sudo apt-get -f install
:
Unpacking linux-headers-3.13.0-29-generic (3.13.0-29.53) ...
dpkg: error processing archive /var/cache/apt/archives/linux-headers-3.13.0-29-generic_3.13.0-29.53_amd64.deb
(--unpack): unable to create /usr/src/linux-headers-3.13.0-29-generic/include/config/inotify/user.h.dpkg-new' (while processing./usr/src/linux-headers-3.13.0-29-generic/include/config/inotify/user.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-29-generic_3.13.0-29.53_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
When I open Ubuntu software center, I get the following text:
New software can't be installed because there is a problem with the software currently installed. Do you want to repair this problem now?
I get the option to 'repair' or 'cancel'. If I hit 'repair', I get the following error:
Package operation failed
the installation or removal of a software package failed.
(Reading database ... 417598 files and directories currently installed.)
Preparing to unpack .../linux-headers-3.13.0-29-generic_3.13.0-29.53_amd64.deb ... Unpacking linux-headers-3.13.0-29-generic (3.13.0-29.53) ...
dpkg: error processing archive /var/cache/apt/archives/linux-headers-3.13.0-29-generic_3.13.0-29.53_amd64.deb
(--unpack): unable to create /usr/src/linux-headers-3.13.0-29-generic/include/config/bug.h.dpkg-new' (while processing./usr/src/linux-headers-3.13.0-29-generic/include/config/bug.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-29-generic_3.13.0-29.53_amd64.deb
Error in function: dpkg: dependency problems prevent configuration of linux-headers-generic: linux-headers-generic depends on linux-headers-3.13.0-29-generic; however: Package linux-headers-3.13.0-29-generic is not installed.
dpkg: error processing package linux-headers-generic (--configure): dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of linux-generic: linux-generic depends on linux-headers-generic (= 3.13.0.29.35); however: Package linux-headers-generic is not configured yet.
dpkg: error processing package linux-generic (--configure): dependency problems - leaving unconfigured
The disk full error is odd, because none of my disks are full. I know this because when I run df
, I get the following:
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda6 36178648 13162504 21155332 39% /
none 4 0 4 0% /sys/fs/cgroup
udev 3873544 12 3873532 1% /dev
tmpfs 776860 1384 775476 1% /run
none 5120 0 5120 0% /run/lock
none 3884300 25276 3859024 1% /run/shm
none 102400 68 102332 1% /run/user
/dev/sda2 124327968 42583252 81744716 35% /media/sudoer/48AEC994AEC97B48
/dev/sda3 807468724 121812996 685655728 16% /media/sudoer/New Volume
What do I do at this point? Thanks in advance.
On unix file system, file and directory have two part: inode and data.
In inodes are stored information about file such as permission, owner, change time, access time, and so on.
The total number of inodes is limited, so you can get No space left on device
if you reach such limit even if the disk is not very full.
Use:
df -i
to view inodes, if you get 100% for IUse
and 0 IFree
, this means that you have a lot of small file.
For example if you have 2 billions files whose size is 1 byte, you could reach inode limit, but your disk could be not completely full.
If this is your case, try to remove more file you can and than redo apt-get update
.
You can clean up space in /boot (remove old linux headers etc), with:
sudo apt-get autoremove
I also encountered this problem. According to the prompt,
unable to create /usr/src/linux-headers-3.13.0-29-generic/include/...
As explained by Lety, "The total number of inodes is limited". So I deleted some old linux-headers packages using the package manager so /usr
will have enough inodes, for example sudo apt-get remove linux-headers-3.13.0-3*
, then I can run sudo apt-get install -f
to continue the installation.