NOC online · 24/7Longview, TX · +1 323 412 0665
KinetikatechServers · Security · Websites
CS

Linuxové příkazy

find: Linux Search, který umí všechno

find je nejnebezpečnější příkaz na produkčním serveru, a právě proto si zaslouží zvládnutí. Vypočítává, filtruje a provádí v jednom výrazu a každý klasický incident '/var here be dragons' se vrací zpět k náhledu, který někdo přeskočil. Zvyky jsou mechanické: nejprve procházet s -print nebo -ls, dávkovat s -exec ... +, procházet -print0 do xargs -0 a považovat -delete za rozhodnutí při druhém průchodu, nikdy ne jako první návrh.

Klíčové body

  1. Filtrujte podle metadat, nikoli pouze podle názvu: -type f, -mtime +30, -size +100M a -perm -o+w najděte liché soubory, které pojmenování a zprávy o stáří postrádají.
  2. Prohlédněte si každý destruktivní dotaz: najděte /var/www/uploads -name 'core.*' -ls nejprve, zaměňte -ls za -delete až poté, co si skutečně přečtete seznam; náhled je bezpečnostní kontrola, nikoli návrh.
  3. -exec cmd {} + dá soubory do několika vyvolání a překoná \; forma na velkých stromech; stejná syntaxe umožňuje 'rm každý odpovídající soubor v jednom procesu' bez chyby argument-list-too-long.
  4. Ve výchozím nastavení bezpečný výstup null: find . -name '*.old' -print0 | xargs -0 rm -v; plain pipes do xargs jsou známým vzorem ztráty dat v den, kdy název souboru obsahuje mezeru.
  5. -xdev a -maxdepth udržují procházku upřímnou: přestanou hledat v mountech a snapshotech, což zachrání jak běhové prostředí, tak vaše předpoklady o 'tomto adresáři'.
  6. Časová okna jsou přesná, pokud jsou dotázáni přesně: -mmin -1440 za posledních 24 hodin, -newermt '2026-01-01' od data, a pamatujte, že -xtime znamená 'před celými 24 hodinami', než to uvedete na tiketu.
  7. Schválně prořezávejte: najděte . -path '*/node_modules' -prune -o -name '*.js' -print přeskočí jeden adresář, který jinak převažuje nad zbytkem stromu co do velikosti a času.
  8. U nečitelných adresářů očekávejte nenulové ukončení; Řádky stderr jako 'Povolení odepřeno' jsou přeskočené soubory, nikoli data, takže skripty buď tolerují stav ukončení hledání, nebo jej explicitně kontrolují místo toho, aby předpokládaly čisté procházky.

Poznámka z terénu

Náš příběh o nejhorším nálezu – vymazání začal vzorem necitovaného jména, který se druhá skořápka rozšířila na tři slova proti proudu nálezu. Pravidlo je od té doby jednoduché: -print first, vždy citovat a -delete nikdy nezadá příkaz při prvním spuštění.

Časté dotazy

Můj find našel soubory, ale downstream příkaz neudělal nic. Proč?

Téměř vždy citace nebo prázdný vstup: vzor byl rozšířen shellem, než ho find viděl, nebo xargs neobdržel nic. Citujte vzory a pokaždé spárujte -print0 s xargs -0.

-smazat nebo rm po nalezení?

-delete je přímé, rychlé a neúprosné; nelze jej smíchat s -exec ve stejném výrazu. Nejprve spusťte odpovídající -print a přečtěte si jej; to je celá disciplína.

Proč se v systémových adresářích objevují chyby oprávnění k tisku?

Komponenty, které nemůžete číst tiskové chyby do stderr, a najít konec nenulový; filtrujte pomocí 2>/dev/null pro interaktivní pohodlí a nikdy tyto chyby neinterpretujte jako absenci souborů.

Rozdíl mezi -mtime a -ctime znovu?

-mtime je změna obsahu, -ctime je změna metadat (oprávnění, přejmenování, počet pevných odkazů); chown nebo pohyb narazí na ctime, aniž by se dotkl mtime, což zmate přesně jednu zprávu za čtvrtinu.

Jak Kinetikatech pomáhá s linuxové příkazy

Nemusíte se stát odborníkem na linuxové příkazy: Příkazy a skriptovací návyky, které rozhodují o tom, zda správce provozuje server nebo s ním bojuje: prohledávejte, transformujte, přenášejte a dohlížejte na text a procesy pomocí nástrojů, které jsou součástí každé základní instalace. Přesně proto existuje Zabezpečení linuxových serverů a Správa serverů: zprovoznění, zpevnění, monitoring a člověk ve službě dnem i nocí.

Promluvte si s inženýrem

Problém se serverem? Hacknutý web? Pomalé načítání?

Kritické problémy vyřešeny do 30 minut — nepřetržitě, 7 dní v týdnu.

Požádat o pohotovostní podporu support@kinetikatech.com