Brak miejsca na dysku Linux – przyczyny, diagnostyka i rozwiązania krok po kroku
Problem braku miejsca na dysku w systemie Linux może pojawić się zarówno na komputerach osobistych, jak i serwerach produkcyjnych. Choć Linux daje pełną kontrolę nad systemem plików, to nieprawidłowa konfiguracja, logi systemowe, pozostałości po aktualizacjach, nieużywane pakiety czy rosnące dane aplikacji mogą doprowadzić do całkowitego zapełnienia przestrzeni dyskowej.
W tym artykule pokażemy, jak rozpoznać problem, zdiagnozować przyczynę i trwale go rozwiązać. Omówimy też przydatne narzędzia, automatyzację czyszczenia i dobre praktyki zapobiegania takim sytuacjom w przyszłości.

1. Objawy i skutki braku miejsca
Typowe symptomy:
- Komunikaty:
No space left on device - Nie można zapisać pliku, zainstalować aktualizacji
- Błędy usług (np. Apache, MySQL nie startują)
- System przestaje logować
- Błędy
apt,dnf,pacmanlubyum
2. Sprawdzenie dostępnej przestrzeni
Pierwszy krok: sprawdź, która partycja się zapełniła:
df -h
Sprawdź również inody (jeśli są wyczerpane, nie można tworzyć plików):
df -i
3. Analiza największych katalogów
Znajdź katalogi zajmujące najwięcej miejsca:
du -ahx / | sort -rh | head -n 20
Lub:
ncdu /
ncdu to interaktywne narzędzie terminalowe pokazujące największe pliki i foldery.
4. Czyszczenie logów systemowych
Systemd i rsyslog mogą zapychać dysk logami:
journalctl --disk-usage
Aby usunąć stare logi:
journalctl --vacuum-size=100M
Albo według wieku:
journalctl --vacuum-time=7d
Sprawdź również:
ls -lh /var/log
5. Usuwanie niepotrzebnych pakietów
W zależności od dystrybucji:
- Debian/Ubuntu:
sudo apt autoremove sudo apt clean - Fedora/RHEL:
sudo dnf autoremove sudo dnf clean all - Arch:
sudo pacman -Rns $(pacman -Qdtq) sudo pacman -Sc
6. Stare jądra systemu
Stare wersje kernela potrafią zajmować dużo miejsca:
- Debian/Ubuntu:
dpkg -l | grep linux-image sudo apt remove linux-image-x.x.x-xxx - Fedora:
sudo dnf remove kernel-oldversion
Zostaw co najmniej jedno starsze jądro na wszelki wypadek.
7. snap, flatpak, docker
Snap:
snap list --all
sudo snap remove --purge nazwa --revision stara
Flatpak:
flatpak uninstall --unused
Docker:
docker system prune -a
8. Ukryte pliki w katalogach
Zawsze sprawdzaj ukryte pliki (zaczynające się od kropki), np. .cache, .local, .npm:
du -sh .[!.]* *
9. /tmp, /var/tmp
Tymczasowe pliki mogą się nie usuwać automatycznie. Wyczyść ręcznie:
sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*
10. Katalogi użytkowników
Katalogi typu /home/nazwa/.cache potrafią rosnąć do gigabajtów. Przykłady do wyczyszczenia:
- Cache przeglądarki
- Pliki
~/.thumbnails .npm,.cargo,.gradle,.m2
11. Procesy korzystające z usuniętych plików
Usunięcie pliku nie zawsze zwalnia miejsce, jeśli proces nadal z niego korzysta:
lsof | grep deleted
Zrestartuj proces lub system.
12. Automatyzacja czyszczenia
Użyj cron, systemd-timers lub tmpreaper do okresowego czyszczenia /tmp, logów, cache i innych danych tymczasowych.
13. Monitorowanie przestrzeni
Zainstaluj narzędzia do monitoringu:
ncduglancesdufmonit,prometheus-node-exporter,netdata
14. Repartycjonowanie lub nowy dysk
Jeśli czyszczenie nie wystarcza:
- Powiększ partycję LVM
- Dodaj nowy dysk i zamontuj go w zajętym katalogu (
/var,/home,/srv) - Przenieś dane i podmontuj z
fstab
15. Dobre praktyki
- Monitoruj dysk automatycznie (skrypty lub
monit) - Ogranicz
SystemMaxUsewjournald.conf - Regularnie uruchamiaj
apt autoremove,docker prune - Przenoś dane do osobnych partycji
- Stosuj quotas dla użytkowników
Podsumowanie
Brak miejsca na dysku Linux to problem, który można w większości przypadków szybko zidentyfikować i naprawić. Najważniejsze to regularnie monitorować przestrzeń, automatyzować czyszczenie oraz być świadomym, co i gdzie zajmuje najwięcej miejsca. Dzięki temu unikniesz awarii, błędów systemu i frustracji związanej z nagłą utratą funkcjonalności.






