• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 434
  • Last Modified:

Problem with too many inodes? Good number of inodes to set during format?

We are running several computers with Ubuntu Server 12.04 64 bit. In each of our systems we have seven 3TB hard disks in a RAID-5, for a total of 18TB of usable space. This space is used to store millions of JPG files to retain security camera footage using the free digital video recorder software Zoneminder. We format the single 18TB partition using FDISK and use the following command to create the EXT4 partition:
mkfs.ext4 -i 8192 /dev/sd[x]

Open in new window


For me, this results in 2,197,635,072 inodes, or 1,024 inode blocks per group (whatever that means). This is considerably more than necessary since my disk is full and I have the desired retention I need, yet still have 2,038,999,823 inodes. So this means I really only need about 200,000,000 or less inodes. My issue is i'm not sure how to format the partition to get around that desired amount of inodes.

I'm hoping someone here with good understanding of this can just give me the answer. The 8192 bytes per inode certainly gave us enough inodes, but a couple of my systems have been suffering from file system errors which I think may be related to possibly having too many inodes. One of the errors seen during a fsck was "inode #1718459210 has 14 multiply-claimed block(s), shared with 1 file(s)" and then it specifies the file.

How can I get this partition down to around 200,000,000 or less inodes? Using a calculation found here, I determined that I could set the bytes per inode value to 98,304. My question is, how many inodes will this give me and how will this affect my file system? What potential problems could arise? Is there a better number I could use?
20141231-095027-resized.jpg
0
LittleJohn101
Asked:
LittleJohn101
  • 3
  • 2
  • 2
2 Solutions
 
gheistCommented:
You need to run fsck on unmounted filesystem because your filesystem at least looks damaged.
And you need to create a new filesystem to change number of inodes.

-i can be popularily explained as average size of a file in filesystem. e.g 30k for maildir, say 2MB for jpeg images etc.
From mkfs manual:
Be warned that it is not possible to change this ratio on a filesystem after it is created, so be careful deciding the correct value for this parameter.
0
 
arnoldCommented:
You've defined during the partition that you want an inode for every 8192 bytes. (8k/inode)

tunefs there are different way to tune the storage system, one if you expect large/binary files which I believe zoneminder is using large data files. since the system is setup, you can reprioritize for space, versus time. tunefs -o space after you run tunefs -p or dumpfs and look at the current configuration.

In this case you would use -i 65536 or even 131072.
note that a one byte file will consume the 65536 or 131072 bytes respecively in this type of configuration.

Gheist already pointed out that a per inode change can only be done at the begining.
having too many inodes has little to no impact on your system, it just consume a bit more of your storage. A too few inode configuration on a volume will mean that you have the space, but lack the inodes that are needed to bind the files to the space.
(ran out of inodes).
0
 
LittleJohn101Author Commented:
Great explanations. Thanks for the help.
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LittleJohn101Author Commented:
The drive needs to store about 170,000 JPEG files that range from about 40,000 bytes to 55,000 bytes. I think i'll set bytes per inode to 32,768. Any more, and I probably won't have enough inodes.
0
 
gheistCommented:
Best is to not set anything and use filesystem that does not limit inodes like XFS (default in RHEL7, usable with Debian* too, not for root FS on RHEL6)
0
 
arnoldCommented:
18TB /64k = 3 million inodes more than 170,000 files that you are looking at.

The only time a system runs out of inodes, is when it is setup to store huge files, but instead there are small 1k files instead and I've only seen it once, on a storage system Netapp, where inodes can be increased when needed without reformating the storage space.
0
 
gheistCommented:
XFS " 18TB/0 = unlimted number of inodes.
0

Featured Post

Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

  • 3
  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now