准备测试环境:
新建50G数据盘:
配置MBR分区:
配置ext4文件系统:
mkfs -t ext4 /dev/vdb1
挂载分区:
mount /dev/vdb1 /mnt
现象:Used参数值加Avail参数值的和与Size参数值不符
(1)放一些文件测试:
Filesystem Size Used Avail Use% Mounted on
/dev/vdb1 49G 160M 47G 1% /mnt
Size大小:49G
Used:160M
Avail:47G
Used表示已经使用的大小,Avail表示可以使用的大小
(2)影响因素:
由于ext2/3/4 文件系统,当存储空间大于95%的时候,容易造成磁盘的碎片化,会造成文件系统的崩溃,所以一般系统在对 ext3 ext4磁盘格式化的时候,默认一般分配95%的空间,剩下的5%作为保留空间,一方面是为了防止磁盘的碎片化,另一方面是为了root进程的某些重要的进程救援节省空间。这部分的空间为 root用户可以管理,别的用户没有权限,空间占用满时root启动的程序还可以创建文件,使用的是 剩余的5%的空间。
(3)如何查看inode节点以及系统保留空间大小:
tune2fs -l /dev/vdb1 | grep -E "count|size:" 查看分区信息
#/dev/vdb1 是需要查看的设备名称,如果查看其它磁盘,根据实际替换。
Inode count: 3276800
Inode size: 256
通过:Inode count * Inode size / 1024 / 1024 / 1024 计算inode节点占用
3276800*256/1024/1024/1024 大约:0.8G
Reserved block count: 655347
Block size: 4096
通过:Reserved block count * Block size / 1024 / 1024 / 1024 计算系统保留空间
655347*4096/1024/1024/1024 大约:2.5G
(4)调整系统保留空间比例:
tune2fs -m 2 /dev/vdb1 修改系统保留空间比例2%
tune2fs -l /dev/vdb1 | grep -E "count|size:" 查看分区信息
Inode count: 3276800
Inode size: 256
计算inode节点占用空间:Inode count * Inode size / 1024 / 1024 / 1024=3276800*256/1024/1024/1024 大约:0.8G
Reserved block count: 262138
Block size: 4096
系统保留空间:Reserved block count * Block size / 1024 / 1024 /1024=262138*4096/1024/1024/1024
大约:1G