Pomocí příkazu df je snadné zjistit, kdy na disku dochází místo. Dalším problémem pro správce systému je vědět, co dělat, když k tomu dojde.
Dalším užitečným příkazem, který vám pomůže, je příkaz du. Příkaz du zobrazuje využití disku pro konkrétní adresář (ve výchozím nastavení aktuální adresář). Toto je rychlý způsob, jak zjistit, zda máte v systému zjevná disková prasata.
Ve výchozím nastavení příkaz du zobrazuje všechny soubory, adresáře a podadresáře v aktuálním adresáři a ukazuje, kolik diskových bloků každý soubor nebo adresář zabírá. Pro adresář standardní velikosti to může být docela výpis. Zde je částečný seznam použití příkazu du:
$ du 484 ./.gstreamer-0.10 8 ./Templates 8 ./Download 8 ./.ccache/7/0 24 ./.ccache/7 368 ./.ccache/a/
Číslo vlevo na každém řádku je počet diskových bloků, které každý soubor nebo adresář zabere. Všimněte si, že výpis začíná ve spodní části adresáře a postupuje nahoru přes soubory a podadresáře obsažené v adresáři.
Pokud při spuštění příkazu du narazíte na níže uvedenou chybu:
du: command not found
můžete zkusit nainstalovat níže uvedený balíček podle vaší volby distribuce:
Distribuce | Příkaz |
---|---|
OS X | brew install coreutils |
Debian | apt-get install coreutils |
Ubuntu | apt-get install coreutils |
Alpine | apk add coreutils |
Arch Linux | pacman -S coreutils |
Kali Linux | apt-get install coreutils |
CentOS | yum install coreutils |
Fedora | dnf install coreutils |
Raspbian | apt-get install coreutils |
Příklady příkazů du
1. Chcete-li získat využití místa pro všechny:
# du -a
2. Chcete-li místo využití disku vytisknout původní velikost:
# du --apparent-size
3. Chcete-li nahlásit použití ve velikosti bloku s mezerou:
# du -B=SIZZE # du --block-size=1024
4. Chcete-li vytisknout použití v původní velikosti 1:
# du -b # du --bytes
5. Vytvoření celkového součtu:
# du -c # du --total
6. Chcete-li dereferencovat pouze symbolické odkazy, které jsou uvedeny na příkazovém řádku:
# du -D # du --dereference-args
7. Chcete-li tisknout velikosti ve formátu čitelném pro člověka:
# du -h
8. Chcete-li tisknout velikosti ve formátu čitelném pro člověka s výkony 1000, nikoli 1024:
# du --si
9. Chcete-li vytisknout použití s velikostí bloku 1024, tj. 1k:
# du -k
10. Mnohonásobné počítání velikostí při pevném propojení:
# du -l # du --count-links
11. Chcete-li vytisknout použití s velikostí bloku 1024*1024=1048576, tj. 1M:
# du -m
12. Chcete-li dereferencovat všechny symbolické odkazy:
# du -L # du --dereference
13. Nenásledovat žádné symbolické odkazy (toto je výchozí):
# du -P # du --no-dereference
14. Chcete-li ukončit každý výstupní řádek 0 bajtem místo nového řádku:
# du -0 # du --null
15. Chcete-li nezahrnout velikost podadresářů:
# du -S # du --separate-dirs
16. Chcete-li zobrazit pouze součet pro každý argument:
# du -x # du --one-file-system
17. Chcete-li vyloučit soubory, které odpovídají jakémukoli vzoru v FILE:
# du -X # du --exclude-from=FILE
18. Chcete-li vyloučit soubory, které odpovídají PATTERN:
# du --exclude=PATTERN
19. Chcete-li vytisknout součet pro adresář:
# du --max-depth=N
20. Chcete-li zobrazit čas poslední úpravy libovolného souboru v adresáři:
# du --time
21. Chcete-li zobrazit čas jako WORD místo času úpravy:atime, access, use, ctime nebo status:
# du --time=WORD
22. Zobrazení časů pomocí stylu STYLE:
# du --time-style=STYLE
23. Získání nápovědy:
# du --help
24. Chcete-li získat verzi:
# du --version
Závěrečné myšlenky
Příkaz du sám o sobě může být poněkud zbytečný. Je hezké vidět, kolik místa na disku zabírá každý jednotlivý soubor a adresář, ale může to postrádat smysl, když se musíte brodit stránkami a stránkami s informacemi, než najdete to, co hledáte.
S příkazem du můžete použít následující parametry příkazového řádku, aby byly věci trochu čitelnější:
- -c :Vytvoří celkový součet všech uvedených souborů.
- -h :Velikosti tisku ve formě čitelné pro člověka s použitím K jako kilobajt, M jako megabajt a G jako gigabajt.
- -s :Shrňte každý argument.