获取错误:“设备上没有剩余空间”用于特定的文件名

我有一个特殊的目录内有很多文件的ext4卷。

每当我试图创build一个特定名称的文件,我得到“没有留下空间的设备”的错误。

$ touch /data/lake/http:____images__br037__319854_366_tp.jpg touch: cannot touch '/data/lake/http:____images__br037__319854_366_tp.jpg': No space left on device 

如果我甚至改变了一个字母的文件名,它的作品。

以下是该卷的磁盘使用情况和inode使用情况:

 # df -h /dev/xvdf Filesystem Size Used Avail Use% Mounted on /dev/xvdf 985G 679G 256G 73% /data # df -i /dev/xvdf Filesystem Inodes IUsed IFree IUse% Mounted on /dev/xvdf 65536000 24751661 40784339 38% /data 

我跑fsck也确保它不是一个磁盘损坏问题。

 # e2fsck -y /dev/xvdf e2fsck 1.42.9 (4-Feb-2014) /dev/xvdf: clean, 24751661/65536000 files, 182020406/262144000 blocks 

有人可以帮助我如何进一步debugging。

似乎有dir_indexfunction中的一个已知的错误(你应该能够禁用),这是由文件名的哈希碰撞引起的:

http://blog.merovius.de/2013/10/20/ext4-mysterious-no-space-left-on.html