oyo*_*oyo 24 filesystems inode ext4
我需要创建非常多的文件,这些文件不是很大(如4kb,8kb).这在我的计算机上是不可能的,因为它使所有inode达到100%并且我无法创建更多文件:
$ df -i /dev/sda5
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda5 54362112 36381206 17980906 67% /scratch
Run Code Online (Sandbox Code Playgroud)
(我开始删除文件,这就是为什么它现在是67%)
我的文件系统上每个节点的字节数为256(ext4)
$ sudo tune2fs -l /dev/sda5 | grep Inode
Inode count: 54362112
Inodes per group: 8192
Inode blocks per group: 512
Inode size: 256
Run Code Online (Sandbox Code Playgroud)
我想知道是否可以将此值设置得非常低,甚至低于128(在重新格式化期间).如果是,我应该使用什么价值?谢谢
小智 29
每个inode默认字节通常是16384,这是缺省值inode_ratio
中/etc/mke2fs.conf
(它事先读出到文件系统创建).如果你的inode用完了,你可以尝试例如:
mkfs.ext4 -i 8192 /dev/mapper/main-var2
Run Code Online (Sandbox Code Playgroud)
影响这一点的另一个选择是-T
,通常将-T news
其进一步降低到4096.
此外,如果不重新创建或对其进行十六进制编辑,则无法更改ext3或ext4文件系统中的inode数.Reiser文件系统是动态的,因此您永远不会遇到问题.
Sta*_*nko 13
您可以通过将可用空间的大小除以可用的inode数来找出近似的inode比率.例如:
$ sudo tune2fs -l /dev/sda1 | awk -F: ' \
/^Block count:/ { blocks = $2 } \
/^Inode count:/ { inodes = $2 } \
/^Block size:/ { block_size = $2 } \
END { blocks_per_inode = blocks/inodes; \
print "blocks per inode:\t", blocks_per_inode, \
"\nbytes per inode:\t", blocks_per_inode * block_size }'
blocks per inode: 3.99759
bytes per inode: 16374.1
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
57179 次 |
最近记录: |