Kontrola místa na disku a souborů v Linuxu, Použijte df -h zobrazit využití souborového systému, du -sh měřit adresáře a find / -type f -size +1G k vyhledání velkých souborů. Zkombinujte je s nástroji jako ncdu, kontroly inodů (df -i) a čištění protokolů (journalctl --vacuum-size) pro analýzu a bezpečné uvolnění prostoru.
Efektivní správa úložiště začíná tím, že v Linuxu zjistíte, jak kontrolovat místo na disku a rychle určit, co ho spotřebovává. V této příručce vám ukážu praktické a spolehlivé metody používané v reálných produkčních serverech k měření využití disku, vyhledávání velkých souborů, pochopení rozdílů mezi df a du a čištění místa bez narušení vašeho systému.
Ať už používáte VPS, dedikovaný server nebo lokální počítač, toto je pracovní postup, který funguje.
Rychlý přehled: Příkazy, které budete používat nejčastěji

- Zkontrolujte využití souborového systému:
df -hT(čitelné pro člověka, zobrazit typ souborového systému) - Zkontrolujte využití inodu:
df -i - Velikosti adresářů nejvyšší úrovně:
du -sh /* - Seřadit adresáře podle velikosti:
du -sh * | sort -h - Omezení na jeden souborový systém:
du -x / - Interaktivní analyzátor:
ncdu / - Najít velké soubory (>1 GB):
find / -xdev -type f -size +1G -printf "%s %p\n" | sort -nr | head -50 - Zkontrolujte osiřelé (smazané, ale otevřené) soubory:
lsof +L1 - Zkontrolujte velikost deníku:
journalctl --disk-usage; snížit:journalctl --vacuum-size=500M
Pochopení využití disku v Linuxu (df vs. du, inody, připojení)
Než se pustíte do samotných příkazů, rychlý úvod vám pomůže vyhnout se běžným chybám a ušetřit čas.
df vs. du: Jaký je mezi nimi rozdíl?
- df (bez disku): Zobrazuje volné a využité místo na připojený souborový systémČte metadata souborového systému – skvělé pro zjištění „jak je tento disk plný?“.
- du (využití disku): Vypočítává skutečnou velikost soubory a adresáře procházením souborového systému. Ideální pro otázku „který adresář je velký?“.
Mohou se neshodnout, pokud byly soubory smazány, ale procesy je stále uchovávají otevřené, nebo pokud se jedná o snapshotové/overlay souborové systémy (např. Docker, Btrfs). Vždy se dohodněte s... lsof +L1, snímky a úložiště kontejnerů.
Inody a proč jsou důležité
Každý soubor používá inode. Můžete mít volné místo, ale žádné volné inody, což způsobí selhání zápisu. Ověřte si to u df -iMiliony malých souborů (soubory mezipaměti/dočasné soubory) běžně vyčerpávají inody.
Přípojné body a pobyt na jednom disku
Použijte lsblk -f zobrazit disky, přípojné body a typy souborových systémů. Při analýze omezte procházení na jeden souborový systém pomocí -x in du or -xdev in find aby se zabránilo přecházení na jiné hory, jako například /boot, /home, /var, NFS nebo překryvné vrstvy Dockeru.
Zkontrolujte místo na disku pomocí df
Základní příkazy df
# Human-readable disk usage with filesystem type
df -hT
# Exclude temporary filesystems
df -hTx tmpfs -x devtmpfs
# Show inode usage
df -i
# Focus on a specific mount (e.g., root)
df -hT /Tipy pro interpretaci: Dávejte pozor na Use% překročení 80–90 %. U kritických serverů spustit upozornění při 80 %, aby se předešlo snížení výkonu nebo selhání zápisu. Zkontrolujte neočekávaná připojení (např. překrytí, smyčková zařízení ze snímků nebo připojení ISO), která mohou zkreslit využití.
Určení typu souborového systému a jeho důsledků
- ext4/xfs: Běžné na serverech. Ext4 ve výchozím nastavení rezervuje místo pro root (často 5 %). Můžete to upravit pomocí
tune2fs -m 1 /dev/yourdev(používejte opatrně, je nutný root). - btrfs: Snapshoty a podsvazky mohou spotřebovávat místo, i když soubory vypadají jako smazané. Použijte
btrfs filesystem df /a manage snímky. - zfs: Datové sady a snímky vyžadují nástroje specifické pro ZFS.
Analýza velikostí adresářů pomocí nástroje du
Objevování shora dolů
# Size of root directories (top level)
sudo du -sh /* 2>/dev/null | sort -h
# Drill into a heavy directory, e.g., /var
sudo du -sh /var/* 2>/dev/null | sort -h
# Show summary only
du -sh /home/user
# Limit to one filesystem to avoid crossing mounts
sudo du -x -h / 2>/dev/null | sort -h | tail -20Použijte du -sh * uvnitř podezřelého adresáře pro rychlou identifikaci růstu. 2>/dev/null potlačuje chyby oprávnění; předpřidává sudo dle potřeby na serverech pro dosažení kompletních výsledků.
Vyloučení vzorů a kontrola hloubky
# Exclude cache and VCS directories
du -sh --exclude="*.cache" --exclude=".git" /path
# Limit depth to show just top N levels
du -h --max-depth=1 /var | sort -hInteraktivní analýza s ncdu
ncdu je analyzátor disků založený na curses, který je rychlý a uživatelsky přívětivý.
# Install and run ncdu (Debian/Ubuntu)
sudo apt update && sudo apt install -y ncdu
sudo ncdu /
# RHEL/CentOS/AlmaLinux
sudo dnf install -y ncdu
sudo ncdu /Navigace pomocí kláves se šipkami a procházení velkých adresářů. Toto je moje oblíbená volba pro rychlé třídění zaneprázdněné servery.
Nalezení velkých souborů a informace o jejich rostoucí velikosti
Spolehlivě vyhledávejte velké soubory
# Largest files (>=1G) on the current filesystem
sudo find / -xdev -type f -size +1G -printf "%s %p\n" 2>/dev/null | sort -nr | head -50
# Human-friendly listing with ls -lh after finding candidates
sudo find /var -type f -size +500M -exec ls -lh {} \; 2>/dev/null | sort -k5 -hBěžní viníci: výpisy databází, mediální archivy, tarbally v /root or /home, obrazy virtuálních počítačů pod /var/lib/libvirt, vrstvy Dockeru a protokoly pod nimi /var/log.
Soubory protokolů a systemd journald
# See how much space journald uses
journalctl --disk-usage
# Cap logs to 500 MB total
sudo journalctl --vacuum-size=500M
# Or keep only last 7 days
sudo journalctl --vacuum-time=7dProhlédněte si také klasické protokoly: /var/log/*.log, rotované protokoly (.gz) a protokoly aplikací (Nginx, Apache, MySQL, uzel). Ujistěte se, že je logrotate nastaveno nakonfigurováno pro vaše služby a nastaveno zachování zdravého rozumu.
Smazáno, ale stále zabírá místo (osiřelé soubory)
Když proces uchovává otevřený soubor, který byl smazán, df ukazuje vysoké využití, ale u duIdentifikujte se s:
# Show deleted-but-open files
sudo lsof +L1 | grep -i deletedRestartujte problematickou službu, abyste uvolnili popisovač (např. sudo systemctl restart nginx). Zkracování souborů protokolu je také bezpečné, pokud proces stále zapisuje: : > /path/to/logfile.
Speciální případy: Docker, Snap, Flatpak, databáze
Úložiště Dockeru a kontejnerů
# See Docker disk usage summary
sudo docker system df
# Remove unused images/containers/networks (review carefully)
sudo docker system prune -af --volumesNa hostitelích s vysokou mírou fluktuace kontejnerů se mohou osiřelé vrstvy a svazky nafukovat. /var/lib/dockerProvádějte prořezávání pouze v případě, že chápete dopad. V případě Kubernetes používejte čištění s ohledem na cluster nebo okna údržby uzlů.
Snap a Flatpak
# Snap old revisions
snap list --all | awk '/disabled/{print $1, $3}' | while read snapname revision; do sudo snap remove "$snapname" --revision="$revision"; done
# Flatpak cleanup
flatpak uninstall --unused -y
flatpak remove --delete-data <app-id>Soubory Snap ve výchozím nastavení uchovávají více revizí; odstraněním zakázaných revizí se uvolní místo. Mezipaměti a běhové moduly Flatpaku se také časem zvětšují.
Databáze a zálohy
- MySQL/MariaDB: Kontrola
/var/lib/mysqlobrovskýibdataNebo binární protokoly mohou rychle narůstat. Střídejte binlogy a upravujte velikost protokolů InnoDB. - PostgreSQL: Kontrolovat
/var/lib/postgresqlapg_walDlouhodobě probíhající transakce mohou blokovat čištění. - Zálohy: Přesunout archivy z kořenového disku. Komprimovat pomocí
zstdorxzpro lepší poměry, když CPU umožňuje.
Bezpečné vyčištění místa na disku
Mezipaměti balíčků
# Debian/Ubuntu
sudo apt-get autoremove -y
sudo apt-get clean
sudo apt-get autoclean
# RHEL/CentOS/AlmaLinux
sudo dnf autoremove -y
sudo dnf clean allProtokoly a dočasné soubory
# Rotate and compress logs
sudo logrotate -f /etc/logrotate.conf
# Clear system temp (systemd)
sudo systemd-tmpfiles --clean
# Truncate a large log safely
: > /var/log/app/app.logNeodstraňujte celé adresáře protokolů; služby očekávají existenci cest. Preferujte rotaci a zkrácení.
Stará jádra (při použití balíčku managed jádra)
# Ubuntu/Debian example (review output before removing)
dpkg --list | grep linux-image
sudo apt-get autoremove --purge -yUjistěte se, že spuštěné jádro není odstraněno. Ponechte alespoň jedno známé funkční jádro pro vrácení zpět.
Velké mezipaměti: běhové prostředí jazyka a nástroje pro sestavení
- Node.js:
npm cache clean --force, odstranitnode_modulesve starých stavbách. - Krajta: prořezávat
~/.cache/pip, virtualenvs se již nepoužívají. - Hudební skladatel:
composer clear-cache.
Proaktivní monitorování a upozornění
Nastavte si včasná varování, abyste se nikdy neprobudili s plným diskem. Jednoduchý skript založený na cronu vám může poslat e-mail, když využití překročí prahové hodnoty.
#!/usr/bin/env bash
set -euo pipefail
THRESHOLD=80
ALERT="ops@example.com"
df -hP -x tmpfs -x devtmpfs | awk -v t="$THRESHOLD" '
NR>1 {gsub("%","",$5); if ($5 >= t) printf "ALERT: %s is at %s%% on %s\n",$6,$5,$1 }' | \
while read -r line; do
echo "$line" | mail -s "Disk Space Alert" "$ALERT"
doneOn managed servery na adrese YouStable, spojujeme upozornění na úrovni operačního systému s monitorováním platformy a proaktivní podporou, takže anomálie disku jsou zachyceny dříve, než ovlivní provozuschopnost. Pokud provozujete kritické úlohy, zvážit a managed VPS nebo dedikovaný server plán s vestavěným monitorováním a reakcí 24 hodin denně, 7 dní v týdnu.
Tipy pro řešení problémů ze skutečných serverů
Když se df a du neshodují
- Zkontrolujte smazané a otevřené soubory:
lsof +L1. - Potvrďte body připojení:
mount | column -t,lsblk -f. - Zvažte snapshoty (Btrfs/ZFS) nebo překryvy kontejnerů, které ovlivňují
df.
Vyčerpání inodů
- Najít adresáře s mnoha malými soubory:
sudo find /var -xdev -type f | sed -n '1,5p'a analyzovat horké cesty pomocídu --inodes -d1 /var | sort -n(pokud je podporováno). - Vyčistěte mezipaměti aplikací, dočasné adresáře pro nahrávání a úložiště relací.
Chyby souborového systému nebo náhlý výpadek místa
- Kontrola
dmesgajournalctl -kpro chyby vstupně/výstupních operací disku. - Běh
fsckna nepřipojených souborových systémech během údržbových oken. - Na ext4 zvažte úpravu rezervovaných bloků:
sudo tune2fs -m 1 /dev/sdXNpro datové svazky bez oprávnění root (nenastavujte na 0 na oddílech s operačním systémem bez pochopení rizika).
Praktický postup pro kontrolu místa na disku a souborů
- Krok 1:
df -hTidentifikovat celý souborový systém a typ. - Krok 2:
df -iaby se vyloučily problémy s inody. - Krok 3:
du -sh /* | sort -hnajít největší adresáře nejvyšší úrovně. - Krok 4: Projděte si více pomocí
du -sh /var/* | sort -h, pakdu -sh /var/log/*or/var/lib/*. - Krok 5:
findvelké soubory; ověřte protokoly a složky databáze. - Krok 6: Řešení speciálních případů (journald, Docker, snaps, zálohy).
- Krok 7: Bezpečné čištění (rotace, zkrácení, prořezávání mezipamětí, odstraňování nepoužívaných jader/obrazů).
- Krok 8: Přidejte monitorování a měsíční kontrolu trendů růstu.
Nejčastější dotazy
Jak zkontroluji místo na disku v Linuxu jedním příkazem?
Použijte df -hT pro jasný přehled všech připojených souborových systémů, jejich velikostí, použitého/volného místa a typů. Chcete-li zkontrolovat konkrétní připojení, přidejte jeho cestu: df -hT /.
Jaký je rozdíl mezi df a du?
df čte metadata souborového systému a zobrazuje volné/použité místo pro každé připojení; du Prochází adresáře za účelem měření velikosti souborů. Pokud se neshodují, hledejte smazané otevřené soubory, snímky nebo překryvné souborové systémy (Docker).
Jak rychle najdu velké soubory v Linuxu?
Běh sudo find / -xdev -type f -size +1G -printf "%s %p\n" | sort -nr | headPak ověřte pomocí ls -lh a dle potřeby vyčistěte nebo archivujte. Použijte ncdu pro interaktivní zobrazení.
Jak mohu bezpečně vyčistit protokoly?
Použijte logrotate otáčet/komprimovat protokoly a journalctl --vacuum-size pro žurnály systemd. Chcete-li okamžitě zmenšit velký log, zkraťte ho: : > /path/to/log.logNeodstraňujte adresáře protokolů.
Proč se df zobrazuje v plné velikosti, ale du ne?
Pravděpodobně smazané soubory, které zůstaly otevřené spuštěným procesem. Ověřte si to u lsof +L1 a restartujte problematickou službu. Snímky a vrstvy kontejnerů mohou také způsobovat neshody.
Jak zkontroluji využití inodu?
Běh df -iPokud jsou inody téměř 100 %, vyhledejte a odstraňte adresáře s mnoha malými soubory (mezipaměti, relace, dočasné nahrávání). Zvažte konsolidaci malých souborů nebo změnu strategie ukládání.
Jaký je nejbezpečnější způsob, jak uvolnit místo na produkčním serveru?
Dělejte zálohy, identifikujte velké spotřebitele s du/find, rotovat/zkracovat protokoly, prořezávat mezipaměti balíčků a aplikací a odstraňovat pouze nepoužívané obrazy/jádra. Pokud je to možné, otestujte kroky čištění ve fázi testování a naplánujte údržbu pro restarty.
Závěr
Se správným pracovním postupem df pro celkový obraz, du/ncdu Pro detailní analýzu a cílené čištění můžete s jistotou kontrolovat místo na disku v Linuxu a předcházet výpadkům.
Pokud se raději zaměříte na své aplikace, YouStableJe managed VPS a dedikované servery Zahrnují proaktivní monitorování a odbornou pomoc, aby úložiště zůstalo v pořádku a vaše provozuschopnost zachována.