关于linux inode

经常会被人问到,系统的inode用光了,要怎么办?

很简单,增加硬盘啊。问题是,在不能加硬盘的时候要怎么办?

这种情况确实比较常见,基本上都是由于文件系统中存放了海量小文减造成的。假定我们的文件系统是EXT4.

我们可以这么做:

1) 创建一个空文件
#touch big_file.bin
2)增加一个空洞
#truncate --size SIZE_YOU_WANT big_file.bin
3) 在这个文件上建立新的文件系统,指定期望使用的inode数量。由于主要存放小文件,我们把block-size变成1024
#mkfs.ext4 -N INODE_NUM -b 1024 -i 128
4)把这个文件安装到一个目录
#mkdir big_file_dir && mount -o loop big_file.bin big_file_dir
5) 把原来的小文件移动到big_file_dir这个目录,删除原来的小文件。
第二步不是所有文件系统都支持的。对于不支持的系统,可以先计算好文件需要的大小,用dd来创建
#dd if=/dev/zero of=big_file.bin bs=1 count=SIZE_YOU_WANT

你可能感兴趣的:(关于linux inode)