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
5 thoughts on “Recovering reserved space in ext2 and ext3 filesystems”
Thank you very much
Thanks, found this while trying to figure out why my data partition was hiding 8 GB of space from me. All better now though.