ext4文件系统默认为root预留5%磁盘空间以保障关键服务运行,可通过tune2fs -m调整该比例(如-m 1设为1%,-m 0取消),操作无需卸载但需root权限,不建议对根分区设为0%。

EXT4文件系统默认会为root用户预留5%的磁盘空间,目的是防止系统因磁盘写满而无法运行关键服务(如日志、SSH登录等)。但在大容量数据盘或非系统盘上,这5%可能浪费大量空间。你可以用 tune2fs 命令安全调整该预留比例,无需卸载文件系统(但建议在低负载时操作)。
确认当前预留空间比例
执行以下命令查看目标分区当前的预留空间百分比(以 /dev/sdb1 为例):
tune2fs -l /dev/sdb1 | grep "Reserved block count"
再结合总块数(Block count)和块大小(Block size),可算出实际百分比。更直接的方式是:
tune2fs -l /dev/sdb1 | grep "Reserved block count\|Block count"
或者使用 dumpe2fs -h /dev/sdb1 | grep -i "reserved" 查看汇总信息。
修改预留空间百分比(例如设为1%)
使用 -m 参数指定新百分比(0~100之间,通常设为0~2):
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
-
tune2fs -m 1 /dev/sdb1→ 将预留空间设为1% -
tune2fs -m 0 /dev/sdb1→ 完全取消预留(仅建议用于纯数据盘,且确保有监控告警)
⚠️ 注意:该操作立即生效,无需重启或重新挂载,但需确保你有对应设备的 root 权限,且该分区未被占用(如未处于 LVM 或 RAID 重建中)。
验证修改是否成功
再次运行:
tune2fs -l /dev/sdb1 | grep "Reserved block count"
对比修改前后的值,并检查 Block count 是否一致。也可用 df -h 查看可用空间变化(注意:df 显示的是用户可用空间,含预留部分;修改后“Available”列数值会增大)。
补充说明与注意事项
重要提醒:
- 不建议对根分区(
/)设为 0%,否则系统可能因磁盘满而无法响应 - 若文件系统已接近满载(如使用率 >95%),调低预留比例不会立即释放空间——只有当有文件被删除、且原位置属于预留区时,空间才真正回归用户可用池
- 调整后,可通过
e2freefrag -h /mount/point(需安装 e2fsprogs)查看碎片和空闲块分布 - 生产环境建议先在测试分区验证,再操作关键盘










