Recovering reserved space in ext2 and ext3 filesystems


When using the ext2 or ext3 filesystem by default 5% of the available blocks is reserved for use by the root user. This allows the system to continue running if non-root users fill up the file system and also assists in preventing file fragmentation because the filesystem does not fill up completely.

Under certain circumstances this extra protection is not required or desired. For example, I have a 1TB ext3 array specifically to store media on seperate from my operating system and other file systems. The root user will never write to this file system so reserving 5% (50GB) is wasted space.

To recover this space you can use the tune2fs command and specify the -m 0 option. Here is an example.

Before the tune with the default 5% reserve:

root@pooh:/data# df -h /data
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/data_vol_grp-data_vol
921G  867G  7.2G 100% /data

The tune2fs command to adjust the reserved percentage to 0.

root@pooh:/data# tune2fs -m 0 /dev/data_vol_grp/data_vol

The available space after adjusting the reserved space.

root@pooh:/data# df -h /data
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/data_vol_grp-data_vol
921G  867G   54G  95% /data
  • Share/Bookmark

, ,

  1. #1 by semco - April 4th, 2009 at 18:22

    Thank you very much

  2. #2 by Jonathan David Page - May 15th, 2010 at 22:01

    Thanks, found this while trying to figure out why my data partition was hiding 8 GB of space from me. All better now though.

(will not be published)