Home Directory Full
Linux Linux
Severity: ModerateWhat Does This Error Mean?
When your Linux home directory is full or you have exceeded your disk quota, you cannot save new files, log files pile up, and many programs start behaving strangely or refusing to run. The home directory (/home/username) is your personal storage space in Linux. The most common culprits are large downloads, application caches, old log files, or software that writes data without cleaning up after itself.
Affected Models
- Ubuntu
- Debian
- Fedora
- CentOS
- Arch Linux
- Linux Mint
- openSUSE
Common Causes
- Large files such as downloads, disk images, or video files are filling the home partition
- Application caches from browsers, development tools, or package managers have accumulated
- Hidden dot-files and directories in the home folder contain gigabytes of data
- Log files or core dump files have grown very large
- A disk quota set by a system administrator has been exceeded
How to Fix It
-
Check how full the disk and home directory are. Type: df -h ~ to see how full the partition containing your home directory is. Then type: du -sh ~/* | sort -rh | head -20 to see the 20 largest items in your home folder.
The du command with sort shows you at a glance what is using the most space. Always identify the biggest consumers before deleting anything.
-
Find and delete large files. Type: find ~ -type f -size +100M 2>/dev/null | sort — this lists all files larger than 100 MB in your home directory. Delete any you no longer need.
Downloads, disk images (.iso files), and virtual machine disks are common large files that can be safely deleted when no longer needed.
-
Clear application caches. Type: du -sh ~/.cache — if it is large (over 1 GB), clear it with: rm -rf ~/.cache/* — this is safe; caches rebuild automatically when apps run.
Browser caches, thumbnail caches, and development tool caches (npm, pip, cargo) frequently grow to several gigabytes without the user noticing.
-
Remove old core dump files. Type: find ~ -name 'core' -o -name 'core.*' 2>/dev/null — these are crash dump files that can be very large. Delete them with: find ~ -name 'core' -delete
A single core dump from a crashed program can be gigabytes in size. They are safe to delete once you have diagnosed (or chosen to ignore) the crash.
-
Check your trash folder. Type: du -sh ~/.local/share/Trash — the trash in Linux is not auto-emptied. Clear it with: rm -rf ~/.local/share/Trash/* or empty it through the file manager.
Deleted files remain in the Trash and still count against your disk quota until permanently deleted.
When to Call a Professional
If you are on a shared or managed system with disk quotas you cannot control, contact your system administrator to request a quota increase or additional storage. For home systems, the fixes below are sufficient.
Frequently Asked Questions
What is a disk quota?
A disk quota is a limit set by a system administrator on how much disk space a specific user account is allowed to use. This is common on shared servers, university systems, and corporate Linux environments. When you hit your quota, you cannot write new files — even if the disk as a whole has free space. Run: quota -s or quota -v to see your personal quota status.
How do I find hidden directories taking up space?
Hidden directories in Linux start with a dot (.) and are not shown by default in ls or file managers. Run: du -sh ~/.* | sort -rh | head -20 to find the largest hidden directories in your home folder. Common large hidden directories include: ~/.npm (Node.js packages), ~/.cargo (Rust packages), ~/.local (app data), and ~/.var (Flatpak apps).
Can I move my home directory to a larger drive?
Yes, this is a standard Linux administration task. You create the new partition on the larger drive, copy all home directory files with: sudo rsync -av /home/ /new/home/ — update /etc/fstab to mount the new partition at /home, and restart. This is a powerful solution for systems where the home partition was initially too small.