H
10Corp Premium Hosting

Understanding Inodes and File Limits

Last Updated: 2025-01-01 3 min read

Every file on a Linux server uses an inode — a data structure that stores information about the file such as its size, ownership, permissions, and location on disk. Hosting providers set inode limits to ensure fair resource usage across shared servers. Understanding inodes helps you manage your hosting account efficiently and avoid hitting these limits.

What Counts as an Inode?

Each of the following uses one inode:

  • Every file (HTML, PHP, image, CSS, JS, etc.)
  • Every directory (folder)
  • Every email message stored on the server
  • Every database entry does NOT count — database content is stored within database files

In simple terms: 1 file = 1 inode.

Checking Your Inode Usage

In cPanel

  1. Log in to cPanel.
  2. Look at the Statistics sidebar on the right side of the dashboard.
  3. Find Inodes Usage — it displays your current usage and your limit.

Via Command Line

If you have terminal or SSH access:

# Total inode usage for your account
find /home/username -printf '.' | wc -c

# Inode count per directory (top-level breakdown)
find /home/username -maxdepth 1 -type d -exec sh -c 'echo "$(find "{}" -printf "." | wc -c) {}"' \; | sort -rn

Using Disk Usage Tool

  1. In cPanel, go to Files → Disk Usage.
  2. This shows the size and file count per directory, helping you identify which folders contain the most files.

Common Causes of High Inode Usage

CauseDescription
Email accumulationThousands of stored emails, especially spam in junk folders
Cache filesCMS caching plugins generating thousands of static files
Session filesOld PHP session files accumulating in temp directories
Backup filesOld backups stored within the hosting account
Unused CMS installationsAbandoned WordPress or Joomla installs with thousands of plugin/theme files
File manager uploadsLarge numbers of images or media files
Log filesError and access logs growing without rotation

How to Reduce Your Inode Count

1. Clean Up Emails

  • Delete old emails from all mailboxes, especially Spam, Trash, and Sent folders.
  • Use email clients to download and archive old messages locally.

2. Remove Cache Files

  • Clear your CMS cache (WordPress: use your caching plugin’s purge option).
  • Delete old cache files in /home/username/.cache/ or plugin cache directories.

3. Remove Unused Files

  • Delete old backups, log files, and temporary files.
  • Remove unused themes, plugins, and CMS installations.

4. Compress Files

  • Archive rarely accessed files into a single .zip or .tar.gz file (one archive = one inode instead of thousands).

5. Clean Temporary Files

# Find and review files older than 30 days in tmp directories
find /home/username/tmp -type f -mtime +30

6. Optimize Media

  • Instead of uploading multiple image sizes manually, let your CMS generate them.
  • Use external services (CDN, cloud storage) for large media libraries.

What Happens When You Hit the Inode Limit?

When you reach your inode limit:

  • You cannot create new files, including uploading images, creating cache files, or receiving emails.
  • Your website may display errors because PHP cannot create session or temporary files.
  • Automated processes (backups, cron jobs) may fail silently.

Important Notes

  • Inode limits are separate from disk space limits — you can have disk space remaining but run out of inodes.
  • Typical shared hosting inode limits range from 100,000 to 500,000 inodes.
  • Regularly monitoring your inode usage prevents unexpected issues with your website and email.
  • If you consistently need more inodes, consider upgrading to a higher hosting plan or a VPS.

Keeping your inode count in check ensures your hosting account runs smoothly and avoids disruptions caused by file limit restrictions.

Tags: cpanel hosting inodes file-limits disk-usage

Still need help?

Our support team is available 24/7 to assist you.