Skip to content
Latchkey

CI "tar: write error: No space left on device" - Disk Full on Extract

A tar extract or create failed partway through with ENOSPC - the runner’s disk filled while writing. Archive operations write a lot of data fast, so they are often the first thing to surface a full disk.

What this error means

tar aborts mid-operation with tar: write error: No space left on device, often leaving a partially-extracted tree. df -h shows the filesystem at 100%. Re-running after cleanup, or on a larger-disk runner, succeeds unchanged.

CI log
tar: app/dist/bundle.js: Wrote only 4096 of 10240 bytes
tar: Exiting with failure status due to previous errors
tar: write error: No space left on device

Common causes

The extracted/created archive exceeds free space

Large archives expand to more than the disk holds - especially when both the archive and its expanded contents sit on the same filesystem during extraction.

Accumulated caches and artifacts left little room

On a reused runner, prior caches, layers, and artifacts already consumed most of the disk, so a normal extract tips it over.

How to fix it

See what filled the disk

Check free space and the biggest consumers before deleting.

Terminal
df -h
du -xh / 2>/dev/null | sort -rh | head -20

Reclaim space or extract elsewhere

  1. Prune caches, container data, and old artifacts to free room.
  2. Extract to a path on a larger volume, or delete the archive after extracting if both share a disk.
  3. Move archive-heavy jobs to a runner with a bigger disk.

How to prevent it

  • Add a cleanup step before large extracts on reused runners.
  • Keep archives and their expanded output on a disk sized for both.
  • Monitor df -h so disk pressure is caught before the extract fails.

Frequently asked questions

What causes ""tar: write error""?
Large archives expand to more than the disk holds - especially when both the archive and its expanded contents sit on the same filesystem during extraction.
How do I fix "tar: write error"?
Check free space and the biggest consumers before deleting.
Can Latchkey fix this automatically?
Yes. Latchkey runs your GitHub Actions on managed runners that detect this failure, apply the fix, and retry the job automatically - self-healing is on by default.

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card