Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run ScanHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk9 min

Deploy Says Disk Full but It Isn’t: Finding Inode and Space Issues

A deployment can hit ENOSPC with free gigabytes remaining. Learn how to check the correct mount, distinguish inode exhaustion from block usage, find deleted-open files, and troubleshoot Docker and Kubernetes storage without unsafe deletion.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A deployment can fail with “disk full” even when df -h shows free gigabytes. The failing filesystem may have exhausted inodes, hit a quota, reserved its remaining capacity for privileged processes, or be holding deleted files open. Start with the exact path that failed: run df -hT /path for data blocks, df -i /path for inodes, and findmnt -T /path to identify the mount. Then compare a same-filesystem du scan with the filesystem totals and investigate any gap before deleting data.

What “disk full” actually describes

ENOSPC means the operating system could not allocate something required for the write. That “something” can be data blocks, an inode, quota allowance, or space available to the particular mount used by the application. It does not necessarily mean every disk on the server is full.

As an Amazon Associate I earn from qualifying purchases.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Blocks and inodes are separate resources

Data blocks hold file contents. Inodes hold file metadata, including ownership, permissions, timestamps and pointers to the blocks. A filesystem can have plenty of unallocated bytes but no free inodes. This is common when a service creates millions of tiny files, mail queues, cache entries, temporary files or per-request artifacts. Creating one more file then fails even though the percentage in df -h looks comfortable.

Check both counters on the filesystem that serves the failing path:

#1 Best Overall
Sale
TOZO A1 Wireless Earbuds Bluetooth 5.3 Light Weight in Ear Headphones | IPX5 Waterproof,2 Mics for AI Calls,Immersive Premium Sound Bass Headset with Charging Case,32 EQ via App Black
  • [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
  • [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
  • [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
  • [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
  • [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.
Question Command What it tells you
How many data blocks remain? df -hT /path Capacity, used and available space, plus filesystem type.
How many inodes remain? df -i /path Inode totals, used inodes and available inodes.
Which mount serves the path? findmnt -T /path The device, mount point, filesystem type and mount options.

A high inode Use% with low block usage points to file-count pressure. A high block Use% with healthy inodes points to data volume. Both can be exhausted at once.

The path matters more than the machine-wide view

A deployment writing to /var/lib, /var/lib/docker, a separate data volume or a temporary filesystem can fail while the root filesystem appears healthy. Always pass the actual application path to the commands above. Checking only df -h / can inspect the wrong filesystem.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A five-minute triage sequence

Capture evidence before removing anything. The following order separates a real capacity problem from accounting or mount surprises.

  1. Record the exact failure. Save the deployment log and path. Distinguish ENOSPC from a quota message, a container-runtime error or a Kubernetes eviction notice.
  2. Inspect both resource types. Run df -hT /path and df -i /path. Record the filesystem type, mount point, available blocks and available inodes.
  3. Confirm the mount. Run findmnt -T /path. If the result is a dedicated volume, inspect that mount rather than /.
  4. Compare directory usage without crossing mounts. On a GNU/Linux host, run sudo du -xhd1 /mountpoint. The -x option keeps the walk on one filesystem, making the result comparable with df.
  5. Investigate disagreement before cleanup. If df reports substantially more used space than du, check deleted-but-open files, mount-point hiding, unreadable directories and runtime-managed storage.

Run the comparison against the mount point returned by findmnt, not an assumed directory. A deployment path nested under another mount must be analyzed on that nested filesystem.

Why df and du can disagree

df reads allocation counters maintained by the filesystem. du walks directory entries and totals files it can see. They answer different questions, so a mismatch is a diagnostic signal rather than proof that either command is broken.

Rank #2
Sale
Smart Watch for Men Women Compatible with iPhone Samsung Android Phone 1.69 inch Full Touch Screen IP68 Waterproof Bluetooh Fitness Tracker Heart Rate/Sleep Monitor (Black)
  • 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
  • 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
  • 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
  • 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
  • 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.

Deleted files still held open

When a process opens a file and the pathname is removed, the directory entry disappears but the file’s blocks remain allocated until every open descriptor is closed. A daemon that keeps writing to an unlinked log can therefore consume gigabytes that no directory scan finds.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

List such files with:

sudo lsof +L1

Inspect the command, process ID, user, file descriptor and size or offset columns. Repeat the scan: processes can open, close or replace files while lsof is running, so one empty result does not prove that no deleted-open file exists. When necessary, repeat during the incident and focus on processes associated with the affected mount.

The safe remedy is operational, not cosmetic. Use the owning service’s supported log-reopen signal, graceful restart or controlled termination procedure. Removing the pathname again cannot free blocks from a file that is already unlinked; the process must close the descriptor. Kubernetes documents the same behavior for local ephemeral storage: an inode remains until the descriptor closes, while a directory scan may fail to categorize that space as in use.

Data hidden beneath a mount point

Files created in a directory before a filesystem is mounted there remain on the underlying filesystem, but the mounted filesystem hides them from normal path traversal. They still count toward the underlying filesystem’s df total while a du run through the mounted path sees only the upper filesystem. Confirm the mount with findmnt -T. Do not unmount a production filesystem merely to inspect hidden data: unmounting can interrupt services and expose a directory that applications are not expecting.

Unreadable directories and permissions

du cannot total directories it cannot read. Run it with appropriate privileges, note permission-denied messages, and treat an incomplete total as incomplete evidence. A privileged scan can still omit paths that change during the walk.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
New Bee Guitar Cable 10ft Electric Instrument Bass AMP Cord
  • [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
  • [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
  • [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
  • [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
  • [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by

Storage accounted for outside the directory tree

Container runtimes, image stores, snapshotters, databases and other managers may track data through metadata or layers that a casual directory walk does not explain. Use the manager’s own accounting command in addition to host-level tools.

Finding inode exhaustion

If df -i /path shows nearly all inodes used while block capacity remains, locate directories containing unusually large numbers of entries. Keep the scan on one filesystem and choose a scope that will not overwhelm a busy host. For example:

sudo find /mountpoint -xdev -type f -printf '%hn' | sort | uniq -c | sort -nr | head

This produces directories with the highest counts of regular files. The command can itself be expensive on a tree with millions of entries, so run it during a maintenance window or narrow it to likely locations such as cache, spool, temporary or application-data directories. Check subdirectories separately when a top-level count hides the actual hotspot.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Once you identify a candidate, verify its retention policy, owner and file ages. Do not delete an entire directory because it has many files: queues, database files and deployment artifacts may be active or required for recovery. Remove only confirmed disposable data, or use the application’s purge and rotation mechanism so metadata and indexes stay consistent.

Rank #4
BSIMB 15.6" Digital Family Calendar & Chore Chart, No Subscription Fees
  • Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
  • Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
  • All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
  • Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
  • Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.

After cleanup, rerun both df -i and df -hT. Deleting a small number of huge files may restore blocks but leave the inode percentage unchanged; deleting many tiny files may restore inodes while barely changing byte usage.

Mounts, quotas and reserved capacity

Verify every relevant mount

Use findmnt -T /path for the path that failed and repeat it for related paths such as a runtime directory, temporary directory or log location. A service may write logs to one mount, uploads to another and temporary files to a third. Each can fail independently.

Check quotas

User, group, project, service or container quotas can reject a write before the filesystem reaches its physical limit. Affected systems may report “disk full” or a quota-specific error. Check the applicable quota tools and administration console for the account and project that performed the deployment; on systems that provide them, commands such as quota -s or repquota show limits and consumption. A root-only filesystem check does not override a user or project quota.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Account for reserved capacity

Some filesystems reserve a portion of blocks for privileged operation and recovery. A non-root service can therefore fail while ordinary users still see a small amount of physical capacity. Changing reserved capacity is filesystem-specific administrative work. Follow the filesystem and distribution vendor’s guidance, and never alter it as an emergency substitute for finding runaway data.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

When Docker storage is the culprit

Docker’s daemon maintains images, stopped containers, local volumes and build cache on host storage. The host filesystem, not the container’s apparent directory tree, is where that data consumes blocks and inodes.

Start with the daemon’s accounting:

docker system df

For object-level detail, use:

docker system df -v

Review images, containers, local volumes and build cache separately, then compare each item with retention requirements. Prune only categories you have approved, using the corresponding documented image, container, volume or builder lifecycle command. A broad prune can remove artifacts needed for rollback.

Docker’s overlay storage also explains confusing directory totals. Deleting a file inside a container creates an overlay whiteout in the upper layer; it does not necessarily reclaim the lower-layer data. Overlay data resides on the host filesystem. Never delete internal files under /var/lib/docker/overlay2 by hand. Use Docker’s commands and a controlled daemon procedure so layer metadata remains consistent.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If host df and a directory scan disagree, include deleted-open files from container processes in your investigation. A process in a container can keep a host-side file descriptor open after its pathname has been removed.

When Kubernetes reports ephemeral-storage pressure

Kubernetes local ephemeral storage includes writable container layers, node-level logs and emptyDir volumes. It is separate from persistent volumes. When a node approaches its local-storage limit, Kubernetes can mark the node under pressure, taint it and evict pods.

Correlate four views:

  • Node conditions and eviction messages in kubectl describe node <node>.
  • Each pod’s ephemeral-storage requests and limits in its manifest or kubectl get pod ... -o yaml output.
  • Host-level df -hT and df -i for the kubelet and runtime mounts.
  • Runtime accounting and sudo lsof +L1 evidence for deleted-open files.

Kubelet measurement can use directory scans. Those scans do not account correctly for an open descriptor to a deleted file, so a node may continue consuming space that the reported directory usage does not show. Kubernetes’ documentation describes the case directly: “If you (or a container) create a file inside an emptyDir volume, something then opens that file, and you delete the file while it is still open, then the inode for the deleted file stays until you close the file but the kubelet does not categorize the space as in use.” Close the descriptor through the owning process, then recheck node conditions and host counters.

Do not treat eviction as proof that the root filesystem is full. Identify the node filesystem used for local ephemeral storage and inspect that mount.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recover space without making the incident worse

Finding Safe next action Avoid
Inodes exhausted by cache or temporary files Use the application’s purge or rotation policy; remove verified disposable entries in batches. Deleting active queues, sockets or database files by pattern alone.
Deleted-open log or data file Ask the owning service to reopen logs, restart gracefully or close the descriptor; then verify with lsof. Unlinking the pathname repeatedly or killing an unrelated process.
Docker images, containers or build cache Review docker system df -v and prune approved object classes. Manual deletion inside /var/lib/docker/overlay2.
Quota reached Raise or correct the quota through administration, or move data within policy. Assuming more physical disk will bypass the limit.
Hidden data beneath a mount Schedule a controlled maintenance inspection of the underlying filesystem. Unounting a live production mount during an outage.

After any remediation, rerun df -hT, df -i, the relevant du -x summary and runtime checks. Confirm that the deployment path can create a test file under the same user and mount, then remove the test file.

Preventing the next “disk full” deployment

  • Alert on both block percentage and inode percentage for every filesystem used by deployments, including runtime and temporary mounts.
  • Monitor file counts in cache, spool, upload, log and temporary directories, not just total bytes.
  • Configure log rotation and verify that applications actually reopen rotated files; rotation that renames a file without closing the old descriptor can still leave blocks allocated.
  • Set container image, stopped-container, volume and build-cache retention policies, and review them against rollback requirements.
  • Give Kubernetes pods realistic ephemeral-storage requests and limits, and monitor node conditions before eviction pressure becomes critical.
  • Document quota owners, mount dependencies and the approved graceful-restart procedure for services that hold large files open.
  • Test alerts against the filesystem serving the deployment path, rather than relying on a single root-volume dashboard.

Bottom line

A “disk full” deployment error is a filesystem-allocation problem until proven otherwise, but allocation includes more than gigabytes. Check the path’s mount, then check blocks and inodes separately. Use a same-filesystem du comparison to find visible consumers, and treat a large gap as evidence to investigate deleted-open files, mount boundaries, permissions and runtime accounting. Reclaim space through the process or storage manager that owns it, verify every counter afterward, and monitor inode and ephemeral-storage pressure as deliberately as byte capacity.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.