RHEL: Extending the maximum inode count on a ext2/ext3/ext4 filesystem

# Tested on RHEL 6 & 7


# An inode is a data structure that contains information about a file or directory. Inodes
# rarely get used up when the file system has available space. Nevertheless, this may
# happen when there is a large amount of small files or empty files because each file or
# directory will use an inode.

# Once the filesystem created it is not possible to modify the number of inodes so one
# should carefully decide the correct value for this parameter.

# In addition, we should take into account that the value of bytes per inode shouldn't be
# smaller than the blocksize of the filesystem, otherwise there will be more inodes on the
# filesystem than those that will be ever used.

# Inode number may be set by specifying the total number of inodes during filesystem
# creation, "-N", or by indicating a bytes/inode ratio, "-i".


# For a small logical volume like following one:

lvs /dev/rootvg/lv_test
   LV      VG     Attr       LSize
   lv_test rootvg -wi-a----- 512.00m


# I'll create a ext3 filesystem using different bytes/inode ratio. Pay attention to the
# space "lost" on the filesystem for inode purposes:

mkfs.ext3 /dev/rootvg/lv_test
   mke2fs 1.41.12 (17-May-2010)
   Filesystem label=
   OS type: Linux
   Block size=4096 (log=2)
   Fragment size=4096 (log=2)
   Stride=0 blocks, Stripe width=0 blocks
   32768 inodes, 131072 blocks
   6553 blocks (5.00%) reserved for the super user
   First data block=0
   Maximum filesystem blocks=134217728
   4 block groups
   32768 blocks per group, 32768 fragments per group
   8192 inodes per group
   Superblock backups stored on blocks:
           32768, 98304

df -h /test
   Filesystem            Size  Used Avail Use% Mounted on
   /dev/mapper/rootvg-lv_test
                         504M   17M  462M   4% /test



mkfs.ext3 -i 4096 /dev/rootvg/lv_test
   mke2fs 1.41.12 (17-May-2010)
   Filesystem label=
   OS type: Linux
   Block size=4096 (log=2)
   Fragment size=4096 (log=2)
   Stride=0 blocks, Stripe width=0 blocks
   131072 inodes, 131072 blocks
   6553 blocks (5.00%) reserved for the super user
   First data block=0
   Maximum filesystem blocks=134217728
   4 block groups
   32768 blocks per group, 32768 fragments per group
   32768 inodes per group
   Superblock backups stored on blocks:
           32768, 98304

df -h /test
   Filesystem            Size  Used Avail Use% Mounted on
   /dev/mapper/rootvg-lv_test
                         480M   17M  438M   4% /test



mkfs.ext3 -i 1024 /dev/rootvg/lv_test
   mke2fs 1.41.12 (17-May-2010)
   Filesystem label=
   OS type: Linux
   Block size=4096 (log=2)
   Fragment size=4096 (log=2)
   Stride=0 blocks, Stripe width=0 blocks
   524288 inodes, 131072 blocks
   6553 blocks (5.00%) reserved for the super user
   First data block=0
   Maximum filesystem blocks=135272448
   16 block groups
   8592 blocks per group, 8592 fragments per group
   32768 inodes per group
   Superblock backups stored on blocks:
           8592, 25776, 42960, 60144, 77328

df -h /test
   Filesystem            Size  Used Avail Use% Mounted on
   /dev/mapper/rootvg-lv_test
                         384M   19M  340M   6% /test
0 (0)
Article Rating (No Votes)
Rate this article
Attachments
There are no attachments for this article.
Comments
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
3 Ways to Check Linux Kernel Version in Command Line
Viewed 11142 times since Fri, Apr 19, 2019
How to deal with dmesg timestamps
Viewed 2756 times since Wed, Oct 3, 2018
Improve security with polyinstantiation
Viewed 12707 times since Fri, May 15, 2020
LVM: Remove a Filesystem / Logical Volume
Viewed 2290 times since Sat, Jun 2, 2018
SSH ProxyCommand example: Going through one host to reach another server
Viewed 12990 times since Tue, Aug 6, 2019
YUM How to use yum command on CentOS/RHEL
Viewed 6555 times since Thu, Oct 25, 2018
Expand or grow a file system on a Linux VMWare VM without downtime
Viewed 11348 times since Fri, Jul 27, 2018
debian Debian/Ubuntu Linux: Find If Installed APT Package Includes a Fix/Patch Via CVE Number
Viewed 9162 times since Sun, Sep 23, 2018
Linux 20 Netstat Commands for Linux Network Management
Viewed 9180 times since Mon, Sep 21, 2020
Secure NTP with NTS
Viewed 8021 times since Sun, Dec 6, 2020