安装软件包时“设备上没有剩余空间”,但我还有空间

ste*_*ess 8 dpkg disk-usage

无论是通过更新管理器还是通过终端,我都出错了。

当我尝试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.
Run Code Online (Sandbox Code Playgroud)

当我尝试时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)
Run Code Online (Sandbox Code Playgroud)

当我打开 Ubuntu 软件中心时,我得到以下文本:

无法安装新软件,因为当前安装的软件有问题。您现在要修复此问题吗?

我可以选择“修复”或“取消”。如果我点击“修复”,我会收到以下错误:

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
Run Code Online (Sandbox Code Playgroud)

磁盘已满错误很奇怪,因为我的磁盘都没有满。我知道这一点,因为当我运行时df,我得到以下信息:

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
Run Code Online (Sandbox Code Playgroud)

这个时候我该怎么办?提前致谢。

Let*_*ety 20

在 unix 文件系统上,文件和目录有两个部分:inode和数据。

inode 中存储有关文件的信息,例如权限、所有者、更改时间、访问时间等。

inode 的总数是有限的,因此No space left on device即使磁盘不是很满,如果达到此限制,您也可以获得。

用:

df -i
Run Code Online (Sandbox Code Playgroud)

查看inode,如果你得到100% forIUse和 0 IFree,这意味着你有很多文件。

例如,如果您有 20 亿个大小为 1 字节的文件,您可能会达到 inode 限制,但您的磁盘可能不会完全满。

如果是这种情况,请尝试删除更多文件,而不是重做apt-get update