在 bash(以及通过 ssh)运行时rm FILENAME
出现错误:rm: cannot remove 'FILENAME': Disk quota exceeded
。我看过关于这个主题的其他帖子(以及谷歌第一页的所有帖子)并尝试过:
echo "" > FILENAME
cp /dev/null FILENAME
cat /dev/null >FILENAME
并且都给出相同的错误。这种情况以前发生在我身上一次,上面的其中一件事修复了它,但无论出于何种原因,这次不起作用。是否有某种更强大的方法可以删除或写入 0 字节到文件?
我无权sudo
访问该系统。这是在unix系统上的。
答案1
有东西正在尝试写入您的磁盘。此错误通常发生在网络磁盘上。
尝试打开一个文本文件,删除内容并保存。使用此命令重新检查磁盘空间:
df -h
答案2
我遇到了同样的问题,通常建议的解决方案(您列出的解决方案)都不起作用。
但我意识到可以删除小于 1kb 的最小文件。我只需要找到足够的小文件就可以再次使用 rm 清理大文件。
答案3
对我来说,我通过覆盖磁盘上一些现有的小文件来解决问题。具体来说,python就可以。一旦磁盘有一些可用空间(比如1M),rm就会恢复。
答案4
进入目录FILENAME
并运行命令
find . -name "FILENAME" -exec $(which rm) -rf {} \;