it-swarm-eu.dev

Jak vidím, jaké procesy běží?

Používám Ubuntu Server 10.10 a rád bych viděl, jaké procesy běží. Vím, že na mém počítači běží PostgreSQL, ale nevidím to pomocí příkazů top nebo ps, takže předpokládám, že nezobrazují všechny spuštěné procesy. Existuje další příkaz, který ukáže všechny spuštěné procesy, nebo existují nějaké další parametry, které mohu použít s top nebo ps k tomu?

22
Jonas

Ze stránky ps man:

-e Vyberte všechny procesy. Stejné jako -A.

Tím pádem, ps -e zobrazí všechny procesy. Běžné možnosti pro „dej mi všechno“ jsou ps -ely nebo ps aux, posledně jmenovaný je styl BSD. Lidé pak tento výstup posílají do grep a hledají proces, jako v odpovědi xenoterracidu. Abychom také zabránili tomu, aby se ve výstupu také viděl grep, často uvidíte něco jako:

 ps -ef | grep [f]oo

kde foo je název procesu, který hledáte.

Pokud však hledáte konkrétní proces, doporučujeme použít příkaz pgrep, pokud je k dispozici. Věřím, že je k dispozici na serveru Ubuntu. Použití pgrep znamená, že se vyhnete výše uvedeným podmínkám závodu. Poskytuje také některé další funkce, které by pro replikaci vyžadovaly stále komplikovanější pokusy grep. Syntaxe je jednoduchá:

pgrep foo

kde foo je proces, který hledáte. Ve výchozím nastavení jednoduše vydá ID procesu (PID) procesu, pokud jej najde. Viz man pgrep pro další možnosti výstupu. Následující stránka mi připadala velmi užitečná:

http://mywiki.wooledge.org/ProcessManagement

26
Steven D

vyzkoušeli jste ps aux | grep postgres? opravdu by se mělo ukázat, pokud běží postgres. Pokud ne ... jak víte, že běží postgres?

(poznámka: je to běžná mylná představa, že je to ps -aux, ale není to správné)

3
xenoterracide