![tar:“设备上没有剩余空间”](https://linux22.com/image/23282/tar%EF%BC%9A%E2%80%9C%E8%AE%BE%E5%A4%87%E4%B8%8A%E6%B2%A1%E6%9C%89%E5%89%A9%E4%BD%99%E7%A9%BA%E9%97%B4%E2%80%9D.png)
我是 Debian 用户。当我尝试时apt-get install <package>
我得到了这个:
tar: ./es_DO/LC_ADDRESS: Cannot write: No space left on device
tar: ./es_DO/LC_IDENTIFICATION: Cannot write: No space left on device
tar: ./es_DO/LC_MONETARY: Cannot write: No space left on device
tar: ./es_DO/LC_TELEPHONE: Cannot write: No space left on device
tar: ./zh_CN.gbk/LC_ADDRESS: Cannot write: No space left on device
tar: ./zh_CN.gbk/LC_IDENTIFICATION: Cannot write: No space left on device
tar: ./zh_CN.gbk/LC_MESSAGES/SYS_LC_MESSAGES: Cannot write: No space left on device
tar: ./zh_CN.gbk/LC_MONETARY: Cannot write: No space left on device
tar: ./zh_CN.gbk/LC_TIME: Cannot write: No space left on device
tar: ./zh_CN.gbk/LC_COLLATE: Cannot write: No space left on device
tar: ./zh_CN.gbk/LC_TELEPHONE: Cannot write: No space left on device
tar: ./zh_CN.gbk/LC_NAME: Cannot write: No space left on device
tar: ./es_CO.utf8/LC_ADDRESS: Cannot write: No space left on device
tar: ./es_CO.utf8/LC_IDENTIFICATION: Cannot write: No space left on device
tar: ./es_CO.utf8/LC_MONETARY: Cannot write: No space left on device
tar: ./es_CO.utf8/LC_TELEPHONE: Cannot write: No space left on device
tar: ./my_MM/LC_ADDRESS: Cannot write: No space left on device
tar: ./my_MM/LC_IDENTIFICATION: Cannot write: No space left on device
tar: ./my_MM/LC_MESSAGES/SYS_LC_MESSAGES: Cannot write: No space left on device
tar: ./my_MM/LC_MONETARY: Cannot write: No space left on device
tar: ./my_MM/LC_CTYPE: Cannot write: No space left on device
tar: ./my_MM/LC_TIME: Cannot write: No space left on device
tar: ./my_MM/LC_TELEPHONE: Cannot write: No space left on device
tar: ./my_MM/LC_NAME: Cannot write: No space left on device
tar: ./br_FR@euro/LC_IDENTIFICATION: Cannot write: No space left on device
tar: ./br_FR@euro/LC_TIME: Cannot write: No space left on device
tar: ./nl_NL@euro/LC_ADDRESS: Cannot write: No space left on device
tar: ./nl_NL@euro/LC_IDENTIFICATION: Cannot write: No space left on device
tar: ./nl_NL@euro/LC_MONETARY: Cannot write: No space left on device
tar: ./nl_NL@euro/LC_TIME: Cannot write: No space left on device
tar: ./nl_NL@euro/LC_TELEPHONE: Cannot write: No space left on device
tar: ./aa_DJ.utf8/LC_ADDRESS: Cannot write: No space left on device
tar: ./aa_DJ.utf8/LC_IDENTIFICATION: Cannot write: No space left on device
tar: ./aa_DJ.utf8/LC_MESSAGES/SYS_LC_MESSAGES: Cannot write: No space left on device
tar: ./aa_DJ.utf8/LC_TIME: Cannot write: No space left on device
tar: ./zh_TW.utf8/LC_ADDRESS: Cannot write: No space left on device
tar: ./zh_TW.utf8/LC_IDENTIFICATION: Cannot write: No space left on device
tar: ./zh_TW.utf8/LC_TIME: Cannot write: No space left on device
tar: ./fur_IT/LC_IDENTIFICATION: Cannot write: No space left on device
tar: ./fur_IT/LC_TIME: Cannot write: No space left on device
tar: Exiting with failure status due to previous errors
dpkg: error processing locales-all (--configure):
subprocess installed post-installation script returned error exit status 2
configured to not write apport reports
Errors were encountered while processing:
locales-all
E: Sub-process /usr/bin/dpkg returned an error code (1)
答案1
据我所知,有两个原因可能导致“设备上没有剩余空间”错误:
物理磁盘已用完。
运行
df -hk
检查是否还有剩余空间。有足够的磁盘空间,但由于磁盘上有大量文件,因此已达到文件系统可以容纳的最大数量。
运行
df -ih
看看已使用的inode百分比,也许是100%?
答案2
看来您的磁盘空间已用完。
答案3
让我们尝试得到一个简短的解释......
所以你正在使用apt-get
你的包管理器。而且,显然,apt-get
使用 tarball 作为包,因此需要使用tar
.
因此,apt-get
调用 tar,继续读取存档并将文件解压到磁盘。
不幸的是,当tar
尝试解压某些文件时,(由操作系统)告知“设备上没有剩余空间”(这通常意味着它应该意味着什么——文件系统tar
正在解压至已满)。这种情况发生在几个文件上(tar
直到它继续处理存档的其余部分才放弃),最后它说它没有成功完成,存在错误(因此“由于先前的错误而以失败状态退出”) )。
然后,该错误由 处理dpkg
,该工具由 调用apt-get
,并且是调用 的工具tar
,并且每个实用程序都显示自己的版本“发生了不好的事情,请查看上面查找原因”。
简短版本:您的文件系统已满。