ps aux-kommandoen og ps-kommandoen forklart
denne veiledningen forklarer hvordan du bruker ps-kommandoen I Linux. Det gir også 10 + praktiske eksempler på ps-kommandoen. Lær hvordan du leser utgangen av ps aux-kommandoen i detalj.
en kort introduksjon av ps-kommandoen
ps (process status) – kommandoen er En Av De mest brukte kommandoene I Linux. Vanligvis brukes det til å få mer og detaljert informasjon om en bestemt prosess eller alle prosesser. For eksempel brukes det til å vite om en bestemt prosess kjører eller ikke, hvem som kjører hvilken prosess i systemet, hvilken prosess bruker høyere minne eller CPU, hvor lenge en prosess kjører, etc.
LAB Setup
for å øve, start noen programmer og hold dem i gang. Bytt brukerkonto og gjenta den samme prosessen.
anta nå at du er systemadministrator og er systemadministrator du vil vite hva som skjer i systemet.I dette tilfellet kan du bruke ps-kommandoen for å få den nødvendige informasjonen.
Bruke ps-kommandoen
Åpne terminal Og kjør ps-kommandoen
ps-kommandoen viser bare prosessen som kjører under den innloggede brukerkontoen fra gjeldende terminal.Du lurer kanskje på hvorfor ps-kommandoen viser to prosesser mens vi ikke har utført noen prosess fra denne terminalen så langt.
vel… første prosess viser prosessen der denne terminalen åpnes. Denne prosessen forblir åpen, til terminalen åpnes.
Andre prosess viser den siste utførte kommandoen i denne terminalen.
Angi alternativer med ps-kommandoen
ps-kommandoen godtar alternativer i tre stiler.
BSD UNIX-stil: – i denne stilen leveres alternativer uten ledende dash (for eksempel «aux»).
på& T Unix-stil: – i denne stilen leveres alternativene med en ledende dash (for eksempel «- aux»).
GNU Linux stil: – i DENNE stilen, er alternativene leveres med doble ledende streker(for eksempel «- sort»).
SELV OM PS-kommandoen godtar alternativer i mix-stilen, bør du alltid bruke bare en stil for å angi alternativene.
Grunnleggende eksempler på ps-kommandoen
hvis du vil skrive ut alle kjørende prosesser i systemet, bruker du en av følgende kommandoer.
$ps –A$ps -e
alternativene A og e gir oppsummert oversikt over kjøringen processes.To skriv ut den detaljerte oversikten, bruk alternativene f (fullformat) og F (ekstra fullformat) med disse alternativene.
for å vise samme utgang i Bsd Unix-stil, bruk alternativene «aux».
kommandoen «ps aux» er Den mest brukte kommandoen Av Linux-administratorer. Før vi går til neste eksempel, la oss forstå alternativene som brukes i denne kommandoen i detalj.
ps aux-kommandovalg
a: – dette alternativet skriver ut kjørende prosesser fra alle brukere.
u: – dette alternativet viser bruker-eller eierkolonne i utdata.
x:- Dette alternativet skriver ut prosessene som ikke er utført fra terminalen.
Samlet alternativene » aux » skrive ut alle kjørende prosessen i systemet uansett hvor de har blitt utført.
ps aux-kommandoen utdata beskrivelse kolonne for kolonne
Kolonne | Beskrivelse |
BRUKER | brukerkontoen under hvilken denne prosessen kjører |
PID | prosess-id for denne prosessen |
%cpu | cpu-tid brukt av denne prosessen (i prosent). |
%mem | Fysisk minne brukt av denne prosessen(i prosent). |
VSZ | Virtuelt minne som brukes av denne prosessen (i byte). | RSS | Resident Set Size, det ikke-swapable fysiske minnet som brukes av denne prosessen (i KiB) |
TTY | Terminal som denne prosessen startes fra. Spørsmålstegn (?) tegn representerer at denne prosessen ikke er startet fra en terminal. |
Stat | Prosess tilstand. Forklart i neste tabell. | START | Starttid og dato for denne prosessen |
TID | TOTAL CPU-tid brukt av denne prosessen |
KOMMANDO | kommandoen med alle dens argumenter som startet denne prosessen |
PS aux stat kode med beskrivelse
s | AVBRYTBAR søvn (venter på at en hendelse skal fullføres) | |
t | stoppet av jobbkontrollsignal | |
t | stoppet av debugger under sporing | |
w | paging (ikke gyldig siden 2.6.x | død (bør aldri bli sett) |
Z | nedlagte («zombie») prosess, avsluttet, men ikke høstet av sin overordnede | |
< | høy prioritet (ikke hyggelig for andre brukere) | |
lav prioritet (hyggelig for andre brukere) |
nøkkelpunkter
- CPU-bruk er uttrykt som prosentandelen av tid brukt kjører i løpet av hele levetiden til en prosess.
- FELTENE STØRRELSE og RSS teller ikke noen deler av en prosess, inkludert sidetabellene, kjernestakken, struct thread_info og struct task_struct.
- STØRRELSE er den virtuelle størrelsen på prosessen (kode+data+stack).
- Prosesser merket < nedlagte > er døde prosesser (såkalte «zombier») som forblir fordi deres foreldre ikke har ødelagt dem riktig.
- hvis lengden på brukernavnet er større enn lengden på visningskolonnen, vil brukernavnet bli avkortet.
10 + praktiske eksempler på ps-kommandoen
for å vise all prosess som kjører under roten brukerkonto, bruk følgende kommando.
$ps -U root -u root
I denne kommandoen:-
-U: – Velg prosessen basert på ekte bruker-ID eller navn.
-u: – Velg prosessen basert på effektiv bruker-ID eller navn.
RUID (Ekte Bruker-ID) representerer navnet på brukeren, MENS EUID (Effektiv Bruker-Id) beskriver brukeren hvis filtilgangstillatelser brukes av prosessen.
for å vise all prosess som kjører av en bestemt brukerkonto, bruk følgende kommando.
$ps –U –u
bruk følgende kommando for å vise alle prosesser som kjører under en bestemt gruppe.
$ps –G
for en detaljert oversikt kan vi også kombinere –G-alternativet med-F-alternativet.
$ps –FG
for å vise all prosess i hierarkiet kan vi bruke følgende kommando.
$ps –A --forest
Viser bare spesifikk kolonne
som standard viser ps-kommandoen alle kolonner. Hvis vi bare er interessert i bestemte kolonner, kan vi begrense utgangen ved å angi de nødvendige kolonnenavnene som argumenter.
for eksempel, for å vise bare pid, BRUKER OG CMD kolonner, kan vi bruke følgende kommando.
$ps –eo pid,user,cmd
Finne prosessen som bruker det høyeste minnet
ps-kommandoen sorterer ikke utdataene som standard. Ved å sette sorteringsrekkefølge til %MEM, kan vi finne prosessene som forbruker høyere minner.
for å angi sorteringsrekkefølgen, brukes — sort=. Vi kan også kombinere dette alternativet med andre alternativer for å få mer spesifikk utgang.
La Oss for eksempel bare vise de spesifikke feltene og bestille dem etter minnebruk.
$ps –eo pid,user,%mem,cmd --sort=-%mem
Begrensende utdata
ps-kommandoen begrenser ikke resultatet i utdata som standard.Hvis vi bare er interessert i å vite de tre beste prosessene som bruker det høyeste minnet, i stedet for å vise ps-kommandoens utgang i terminal, kan vi omdirigere den til hovedkommandoen.
som standard viser hovedkommandoen topp 10 linjer fra den angitte kilden.Vi kan overstyre denne standardvirkemåten ved å angi de nødvendige linjenumrene.
for å vise bare topp tre prosesser, kan vi bruke «-n 4» alternativet med hovedkommandoen.
for 3 resultater, angi sifferet 4 som argument. Som i ps-kommandoens utgang, er den første linjen opptatt av titlene.Akkurat som vi fant ut de høyeste minneforbrukende prosessene, kan vi også finne de høyeste CPU-forbrukerprosessene ved å sortere utdataene basert på CPU-kolonnen.For eksempel følgende kommando skriver topp 3 prosesser bestilt AV CPU-bruk.
$ps –eo pid,user,%cpu,cmd –-sort=-%cpu | head –n 4
Finne totalt antall prosesser som kjører av en bruker
for å finne ut det totale antallet prosesser som kjører av en bruker, bruk følgende kommando
$ps –U –u | wc –l
Leave a Reply