0

I have a special-purpose 12-disk volume, 48 TB total. After mkfs with default parameters, mounting using inode_64, the reported available space for files is 44 TB. So there is 4 TB metadata overhead, almost 10%.

I'm thinking this metadata size is probably intended to accomodate tens of millions of inodes, whereas I use only large files and would need 1-2 million files max. Given this, my question is whether it's possible to recover 2-3 TB out of the 4 TB metadata, to use for file data.

In the man page I see a maxpct option, possibly others, but I cannot figure out what is the correct way to use them in my case. I still need to make sure that the volume can hold the 2 million files. Also, I understand some metadata space is used for journaling and here I don't know how much would be enough.

tktuserA
  • 15
  • 1
  • 6
  • Are you sure that space is actually missing, or are you being misled by [the difference between binary and decimal units of storage](http://en.wikipedia.org/wiki/Binary_prefix#Deviation_between_powers_of_1024_and_powers_of_1000)? That comes out to almost exactly 10% at the terabyte range. –  Apr 17 '15 at 04:46
  • Yes, this appears to be the case, indeed. Then after recalculating strictly in bytes, the reserved metadata is quite negligible, in the order of 2 GB. If so, since I'm not going to create more files than I need, I'm thinking I don't even need to mess with the file system settings. Thank you. – tktuserA Apr 20 '15 at 14:28
  • Oh, cool. I've written this up as an answer with some more details. –  Apr 20 '15 at 17:40

2 Answers2

1

Based on the specific percentage of storage that you're seeing missing, it seems likely that you're being misled by the difference between binary and decimal units of storage. Since disks are measured in decimal terabytes, using software tools that measure available storage in binary terabytes (which are 10% larger) will give you results that appear to be about 9% too low. The storage hasn't actually gone anywhere, though; you're just using units that make it look smaller!

By default, the coreutils versions of the df and du commands use binary units. You can use the -H flag to make them use decimal units instead.

0

You could drop it from 5% to 1%.

maxpct This specifies the maximum percentage of space in the filesystem that can be allocated to inodes. The default value is 25% for filesystems under 1TB, 5% for filesystems under 50TB and 1% for filesystems over 50TB.

Just keep in mind that tuning a filesystem is a tricky affair. There's a delicate balance achieved between stability, reliability, and performance.