4. inode使用情况以及大小
inode也会消耗硬盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域。一个是数据区,存放文件数据;另一个是inode区(inode table),存放inode所包含的信息。
每个inode节点的大小,一般是128字节或256字节。inode节点的总数,在格式化时就给定,一般是每1KB或每2KB就设置一个inode。假定在一块1GB的硬盘中,每个inode节点的大小为128字节,每1KB就设置一个inode,那么inode table的大小就会达到128MB,占整块硬盘的12.8%。
查看每个硬盘分区的inode总数和已经使用的数量,可以使用df命令。
[root@centos7-front1 ~]# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda3 23860224 59694 23800530 1% /
devtmpfs 122809 367 122442 1% /dev
tmpfs 125170 1 125169 1% /dev/shm
tmpfs 125170 433 124737 1% /run
tmpfs 125170 13 125157 1% /sys/fs/cgroup
/dev/sda1 256000 329 255671 1% /boot
tmpfs 125170 1 125169 1% /run/user/0
查看某个分区的文件系统所分配的单个inode节点的大小,在ext文件系统下,可以使用dumpe2fs命令,例如CentOS6系统上,针对/dev/sda3分区:
[root@maCentos6 ~]# dumpe2fs -h /dev/sda3 | grep -i "inode size"
dumpe2fs 1.41.12 (17-May-2010)
Inode size: 256
在xfs文件系统下,可以使用xfs_info命令,例如CentOS7系统上,针对/dev/sda3分区:
[root@centos7-front1 ~]# xfs_info /dev/sda1
meta-data=/dev/sda1 isize=256 agcount=4, agsize=16000 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0 finobt=0
data = bsize=4096 blocks=64000, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal bsize=4096 blocks=853, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0