Každodenní úkoly sysadmina jsou pro každého vždy jiné; existují však jednoduché úlohy, které se na spravovaných systémech provádějí stejně. V době, kdy bylo místo na disku v době administrátorů rizikovým faktorem, bylo životně důležité najít adresář nebo souborový systém k ladění.
V dnešní době, především ve virtuálních strojích, je stejně důležité mít spravované systémy zdravé a s prostorem dostupným pro provádění jejich procesů a přihlašování do jejich log souborů.
[ Také by se vám mohlo líbit: Skriptování Linuxu:3 návody na smyčky while v Bash ]
Nejlepší způsob, jak začít, je používat nejjednodušší příkazy propojením jejich výstupů jako vstupů s novým provedením, čímž se vytvoří to, co je známé jako jednořádkové. To znamená, že pomocí interpretu příkazového řádku načtete standardní výstup příkazu a vložíte jej jako vstupní proměnnou dalšího příkazu, k tomu příkaz xargs pomůže tuto proměnnou přijmout a provést ji.
Podívejte se na praktický příklad:
Ticket RH0502201-1:Produkční server prodenv posílá upozornění „málo místa na disku v kořenovém souborovém systému“. Je požadováno vyčištění souborového systému.
-
Přejděte na server a zkontrolujte místo v
/filesystem
:
# df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/prodenv--vg-root 720G 720G 0 100% /
-
Přejděte do kořenového adresáře, vypište seznam adresářů a pro výpočet místa na disku použitého v každém adresáři použijte
pipe
axargs
pro odesláníls
výstup příkazu dodu
příkaz:
# ls | xargs du -sk
-
S
pipe
znovu použijte příkaz sort k vypsání výstupu od nejnižšího po nejvyšší místo na disku použité v adresářích:
# ls | xargs du -sk | sort -n
-
V tomto případě jsou potřeba pouze adresáře s nejvíce obsazeným místem na disku, takže bychom mohli seznam omezit na posledních pět adresářů v seznamu. Pomocí dalšího potrubí a příkazu tail:
# ls | xargs du -sk | sort -n | tail -5
Poznámka : Pokud se chcete vyhnout chybové zprávě, kde je du
příkaz nemohl získat přístup, odešlete standardní chybový výstup do zařízení /dev/null:
# ls | xargs du -sk 2> /dev/null | sort -n | tail -5
-
S definovaným seznamem adresářů použijte AWK k vytvoření nového seřazeného seznamu adresářů, sloupec dva původního seznamu:
# ls | xargs du -sk 2> /dev/null | sort -n | tail -5 | awk '{ print $2 }'
-
Seřazený seznam se znovu zadá jako proměnná do
du
k zobrazení použitého prostoru v lidsky čitelném formátu. Použijte jinoupipe
axargs
:
# ls | xargs du -sk 2> /dev/null | sort -n | tail -5 | awk '{ print $2 }' | xargs du -sh
-
Ověřte proveditelnost smazání nebo komprimace souborů, které zahlcují souborový systém, abyste uvolnili co nejvíce místa na disku.
Pravděpodobně je možné vyhnout se krokům 5 a 6 a provést čištění přímo; v mnoha případech však tyto adresáře patří nějaké aplikaci a upozorňují na to odpovědné k provedení čištění nebo jednoduše jako důkaz o provedeném procesu pro dokumentaci řešení problému.
Konečně naše jednovrstvá vypadá následovně:
# ls | xargs du -sk 2> /dev/null | sort -n | tail -5 | awk '{ print $2 }' | xargs du -sh
Tato jednovrstvá je součástí mého arzenálu používaného při každodenních úkolech jako správce systému, doufám, že vám bude užitečný. co ty? Jaké jednovrstvé máš to v rukávu?
[ Získejte tuto bezplatnou e-knihu:Správa clusterů Kubernetes pro figuríny. ]