有大量可用 inode 但无法写入磁盘

有大量可用 inode 但无法写入磁盘

我在 ubuntu server 12.04 上安装了一个 1TB ext4 SSD 作为数据驱动器。我用它来存储文件,并注意到使用率达到 55% 时我无法添加任何新文件/文件夹(出现“设备上没有剩余空间”错误消息)。一种可能性是没有可用的 inode,但 tune2fs 显示仍有 58613749 个可用 inode(总共 58613760 个)。此驱动器上至少安装了数百万个文件,我不明白为什么没有占用适当数量的 inode。这些统计数据可能不准确吗?如果它们是准确的(不确定为什么)除了 inode 之外,还有什么可能导致磁盘已满的行为?

任何见解和想法都值得赞赏。

tune2fs 输出:

Filesystem flags:         signed_directory_hash 
Default mount options:    user_xattr acl
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              58613760
Block count:              234422870
Reserved block count:     11721143
Free blocks:              230692951
Free inodes:              58613749
First block:              0
Block size:               4096
Fragment size:            4096
Reserved GDT blocks:      968
Blocks per group:         32768
Fragments per group:      32768
Inodes per group:         8192
Inode blocks per group:   512
Flex block group size:    16
Filesystem created:       Mon Mar 24 00:21:23 2014
Last mount time:          Mon Mar 24 00:26:29 2014
Last write time:          Mon Mar 24 00:26:29 2014
Mount count:              1
Maximum mount count:      -1
Last checked:             Mon Mar 24 00:21:23 2014
Check interval:           0 (<none>)
Lifetime writes:          134 MB
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:               256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
Default directory hash:   half_md4
Directory Hash Seed:      73ef2ab5-f6d4-4515-8abd-2fe94905901b
Journal backup:           inode blocks

df-i 输出:

Filesystem                Inodes    IUsed   IFree IUse% Mounted on
/dev/sdb1               58613760 58613760       0  100% /media/data

答案1

无法保证tune2fs -l在文件系统挂载时显示最新信息。tune2fs直接从磁盘读取文件系统,而文件系统挂载时状态则保存在内存中。超级块可能不会在任何时间点写回磁盘,除非文件系统卸载时。

为了获得已挂载文件系统的准确块和 inode 使用情况计数,最好始终使用dfdf -i

相关内容