Sjekk løpende prosesser som en strømbruker
Er ditt Linux-system kjørt sakte? Eller er du bare nysgjerrig på hva som skjer under hetten? Det er et kraftig innebygd program kalt "ps" som lar brukerne vise et øyeblikksbilde av prosessene som kjører på et system. Vi diskuterer noen av alternativene som er tilgjengelige for ps, og etter konklusjonen bør du sjekke kjørende prosesser på linux-datamaskinen som en erfaren nerd.
Introduksjon
De fleste versjoner av ps
aksepterer BSD-stilalternativer (som kan grupperes og må IKKE brukes med et dash), UNIX-stilalternativer (som kan grupperes og må brukes med et dash) og GNU lange alternativer (som er forhåndsfortalt av to streker). For denne artikkelen vil vi blande og bruke flere alternativtyper, med en bias for UNIX-stiler. For eksempel:
ps -u root u -sort = pid
- UNIX STYLE
-u root
spesifiserer bruker = root - BSD STYLE
u
angir visning av brukerorientert format. Dette er et favorittalternativ, siden utdataformatet produsert ved å bruke dette, inneholder noen svært nyttig informasjon. - GNU LONG OPTION-
–sort
angir prosess sorteringsordre. I dette tilfellet sortere etter prosess ID (pid)
Denne artikkelen foretrekker UNIX-alternativer, og bruker bare BSD for korthet. For eksempel, kommandoen
ps u
viser prosessene av den nåværende brukeren som er koblet til en terminal, med et "brukerrettet" utgangsformat. For å få samme utdataformat ved hjelp av UNIX-valg krever alternativet
ps -o "bruker, pid, pcpu, pmem, vsz, rss, tty, stat, bsdstart, bsdtime, args"
Dette alternativet til argumentet er:
- bruker - det effektive bruker- eller brukernavnet til prosessen
- pid - prosess-id
- pcpu - CPU-tiden som brukes av prosessen divideres med tiden prosessen har kjørt
- pmem - prosentandelen av det fysiske minnet som brukes av prosessen
- vsz - den virtuelle minnestørrelsen til prosessen
- rss - ikke-byttet fysisk minne prosessen har brukt
- tty - den kontrollerende terminalen til prosessen
- stat - prosesstilstanden, bestemt ved bruk av prosessstatuskoder (les mannens sider for mer info)
- start_time - tiden kommandoen startet
- tid - den kumulative CPU-tiden som brukes av prosessen
- args - kommandoen brukes til å kjøre prosessen, sammen med sine argumenter. (Dette er en grunn til at det aldri er en god ide å kjøre en kommando og skriv inn passordet som et kommandolinjeprincip. Enhver annen bruker på systemet kan kjøre
ps
og se kommandoene du har kjørt, sammen med alle alternativer og argumenter som er bestått ).
Konvensjonen som brukes fremover, vil være kommandoen (ps) etterfulgt av BSD 'u'-alternativet for å spesifisere utdataformatering, og deretter UNIX- og GNU-alternativene etter behov.
Noen "PS" -alternativer
Kjører 'ps' uten argumenter viser en liste over prosesser med samme bruker-ID som inntrenger og tilknyttet samme terminal som inntrenger.
Slik viser du alle kjørende prosesser:
ps u -e
For å vise alle prosesser av den nåværende brukeren:
ps u-du `whoami`
For å vise alle prosesser av den nåværende brukeren, men sortert etter CPU-bruk (synkende).
MERK: I kommandoen nedenfor bruker vi '-pcpu' for å oppnå prosentuell cpu-bruk nedadgående. For stigende bruk '+ pcpu' eller bare 'pcpu.' Ta kontakt med mannssidene for flere sorteringsanordninger. Noen vanlige er pmem (minnebruk), start_time (tiden kommandoen ble kjørt) og tid (mengde CPU-tid som brukes av kommandoen).
ps u -u `whoami` - sorter = -pcpu
For å vise alle prosesser av den nåværende brukeren, i et treformat:
ps u -jH -u `whoami`
Ved hjelp av rør kan ps kombineres med hodet for å vise de beste prosessene. Den neste kommandoen sorterer først etter minnebruk, og piper gjennom hodet for å vise prosessene som bruker mest minne. Hodet viser de første ti linjene som standard, så denne kommandoen vil vise de ni øverste prosessene (Utgangshovedet er første linjen).
Merk: "% mem" og "pmem" er synonymt, som er "% cpu" og "pcpu".
ps u -u `whoami` - sortering = -% mem | hode
For å vise det samme for alle prosesser, uansett bruker, bruk alternativet -e
:
ps u -e - sorter = -% mem | hode
Konklusjon
Det er bokstavelig talt hundrevis av alternativer (selv om noen er aliaser), og vi vil gjerne høre om og se dine favoritt bruksmetoder. Vennligst del i kommentarene nedenfor.