在Linux实例中,EXT文件系统包括EXT2、EXT3、EXT4,都会默认预留5%的磁盘空间,用于root用户维护系统或记录系统关键日志使用。因此使用df
命令查看磁盘空间使用情况时,“Used空间”加“Avail空间”不等于“Size空间”。
注:Used空间指磁盘当前已经使用的空间,Avail空间指磁盘当前未使用空间,Size空间指磁盘当前总空间。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在Linux实例中,EXT文件系统(包括EXT2、EXT3、EXT4)默认会预留5%的磁盘空间,用于root用户维护系统或记录系统关键日志使用。这种设计是为了确保系统在磁盘接近满载时仍能正常运行,并为管理员提供一定的缓冲空间以进行问题排查和修复。
当您使用df
命令查看磁盘空间使用情况时,可能会发现“Used空间”加“Avail空间”不等于“Size空间”。例如:
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 20G 18G 1.0G 95% /
在这个例子中,“Used空间”(18G)加上“Avail空间”(1.0G)并不等于“Size空间”(20G)。这是因为EXT文件系统预留了一部分磁盘空间(默认为5%),这部分空间不会显示在“Avail空间”中。
磁盘预留空间
EXT文件系统默认会为root用户预留5%的磁盘空间,用于系统维护和关键日志记录。这部分预留空间不会被普通用户使用,也不会显示在df
命令的“Avail空间”中。
超级块信息统计方式
df
命令通过读取分区的超级块信息来获取磁盘使用情况,而超级块中已经扣除了预留空间。因此,“Avail空间”仅表示普通用户可用的空间,而不包括预留空间。
如果您需要调整预留空间的比例,可以通过以下步骤进行操作:
执行以下命令,查看目标分区的详细信息:
sudo tune2fs -l /dev/xvda1 | grep "Reserved block count"
输出示例:
Reserved block count: 262144
结合总块数计算预留比例:
sudo tune2fs -l /dev/xvda1 | grep "Block count"
输出示例:
Block count: 5242880
预留比例 = Reserved block count
/ Block count
× 100%。
使用tune2fs
命令调整预留空间比例。例如,将预留空间比例从5%降低到1%:
sudo tune2fs -m 1 /dev/xvda1
说明:
- -m
参数指定预留空间的百分比。 - 调整预留空间比例可能会影响系统的稳定性,请根据实际需求谨慎操作。
再次使用df
命令查看磁盘空间使用情况,确认“Avail空间”是否增加:
df -h
通过以上方法,您可以理解并解决EXT文件系统中“Used空间”加“Avail空间”不等于“Size空间”的问题。