ps aux command and PS command explained
Deze tutorial legt uit hoe je het ps commando in Linux kunt gebruiken. Het geeft ook 10 + praktische voorbeelden van het ps-commando. Lees hoe u de uitvoer van de opdracht ps aux in detail kunt lezen.
een korte introductie van het ps commando
het PS (process status) commando is een van de meest gebruikte commando ‘ s in Linux. Meestal wordt het gebruikt om de meer en gedetailleerde informatie over een specifiek proces of alle processen te krijgen. Het wordt bijvoorbeeld gebruikt om te weten of een bepaald proces draait of niet, wie draait welk proces in het systeem, welk proces gebruikt hoger geheugen of CPU, hoe lang een proces draait, enz.
LAB Setup
voor de praktijk, start een aantal toepassingen en laat ze draaien. Schakel het gebruikersaccount en herhaal hetzelfde proces.
stel nu dat je een systeembeheerder bent en als systeembeheerder wil je weten wat er gaande is in het systeem.In dit geval kunt u het ps-commando gebruiken om de benodigde informatie te verkrijgen.
met het ps-commando
open terminal en voer het ps-commando
zonder optie en argument toont het ps-commando alleen het proces dat wordt uitgevoerd onder het ingelogde gebruikersaccount van de huidige terminal.
je vraagt je misschien af waarom het ps commando twee processen laat zien terwijl we tot nu toe geen proces hebben uitgevoerd vanaf deze terminal.
Well … eerste proces toont het proces waaronder deze terminal wordt geopend. Dit proces blijft open, totdat de terminal wordt geopend.
tweede proces toont het laatst uitgevoerde commando in deze terminal.
opties specificeren met het ps-commando
het ps-commando accepteert opties in drie stijlen.
BSD UNIX style : – in deze stijl worden opties geleverd zonder leading dash (zoals “aux”).
AT & T Unix style: – in deze stijl worden opties geleverd met een voorloopstreepje (zoals”- aux”).
GNU Linux style: – in deze stijl worden opties geleverd met dubbele voorloopstreepjes (zoals “–sort”).
hoewel het ps commando opties in de mix stijl accepteert, moet je altijd maar één stijl gebruiken om de opties op te geven.
basisvoorbeelden van het ps-commando
om alle lopende processen in het systeem af te drukken, gebruikt u een van de volgende commando ‘ s.
$ps –A$ps -e
De Opties A en e geven een beknopt overzicht van het uitvoeren processes.To print het gedetailleerde overzicht, gebruik de opties f (full format) en F (extra full format) met deze opties.
om dezelfde uitvoer in BSD Unix stijl weer te geven, gebruikt u de opties”aux”.
het “ps aux” commando is het meest gebruikte commando door Linux beheerders. Voordat we naar het volgende voorbeeld gaan, laten we de opties die in dit commando worden gebruikt in detail begrijpen.
ps aux commando opties
a: – Deze optie drukt de lopende processen van alle gebruikers af.
u: – deze optie toont de kolom gebruiker of eigenaar in de uitvoer.
x:- Deze optie drukt de processen af die niet zijn uitgevoerd vanuit de terminal.
gezamenlijk printen de opties ” aux ” alle lopende processen in het systeem, ongeacht waar ze zijn uitgevoerd.
the ps aux command output description column by column
kolom | Description | gebruiker | het gebruikersaccount waaronder dit proces wordt uitgevoerd | PID | proces-ID van dit proces |
%CPU | CPU tijd gebruikt door dit proces (in percentage). |
% MEM | fysiek geheugen dat door dit proces wordt gebruikt (in percentage). |
VSZ | virtueel geheugen dat door dit proces wordt gebruikt (in bytes). |
RSS | Resident Set Size, het niet-swappable fysieke geheugen dat wordt gebruikt door dit proces (in KiB) | TTY | Terminal van waaruit dit proces wordt gestart. Vraagteken (?) teken geeft aan dat dit proces niet wordt gestart vanuit een terminal. |
Stat | processtatus. Uitgelegd in de volgende tabel. |
BEGIN | Start-tijd en datum van dit proces |
TIJD | Totale CPU-tijd gebruikt door dit proces |
COMMANDO | De opdracht met alle argumenten die begon dit proces |
ps-aux-stat-code met omschrijving
D | uninterruptible slapen (meestal IO) |
R | uitvoeren of runnable (op de run queue) |
S | onderbreekbare slapen (het wachten op een event te voltooien) |
T | gestopt door job control signal |
t | gestopt door debugger tijdens het traceren | w | paging (niet geldig sinds de 2.6.xx kernel) |
x | dood (mag nooit gezien worden) |
Z | opgeheven (“zombie”) – proces, beëindigd wordt, maar niet geoogst door de bovenliggende |
< | hoge prioriteit (niet leuk voor andere gebruikers) |
N | lage prioriteit (leuk voor andere gebruikers) |
L | pagina ‘ s vast in het geheugen (voor real-time en op maat IO) |
s | is een sessie-leider |
l | multi-threaded (met behulp van CLONE_THREAD, zoals NPTL pthreads doen) |
+ | is in de foreground process group |
belangrijke punten
- het CPU-gebruik wordt uitgedrukt als het percentage van de tijd dat gedurende de gehele levensduur van een proces wordt gebruikt.
- de velden grootte en RSS tellen niet mee voor sommige delen van een proces, waaronder de paginatabellen, kernel stack, struct thread_info en struct task_struct.
- grootte is de virtuele grootte van het proces (code+data+stack).
- processen gemarkeerd met <ter dood gebracht> zijn dode processen (zogenaamde” zombies”) die overblijven omdat hun ouder ze niet correct heeft vernietigd.
- als de lengte van de gebruikersnaam groter is dan de lengte van de kolom, wordt de gebruikersnaam afgekapt.
10 + praktische voorbeelden van het ps-commando
om alle processen weer te geven die onder het root-gebruikersaccount worden uitgevoerd, gebruikt u het volgende commando.
$ps -U root -u root
In dit commando:-
-U: – selecteer het proces op basis van echte gebruikers-ID of naam.
– u: – selecteer het proces op basis van effectieve gebruikers-ID of naam.
RUID (Real User ID) vertegenwoordigt de naam van de gebruiker, terwijl EUID (Effective User ID) de gebruiker beschrijft wiens bestandstoegangsrechten door het proces worden gebruikt.
om alle processen weer te geven die door een specifiek gebruikersaccount worden uitgevoerd, gebruikt u het volgende commando.
$ps –U –u
om alle processen die onder een bepaalde groep draaien weer te geven, gebruik je het volgende commando.
$ps –G
voor een gedetailleerd overzicht kunnen we de optie –G ook combineren met de optie –F.
$ps –FG
om alle processen in de hiërarchie weer te geven, kunnen we het volgende commando gebruiken.
$ps –A --forest
alleen specifieke kolom
standaard toont het ps-commando alle kolommen. Als we alleen geïnteresseerd zijn in bepaalde kolommen,kunnen we de uitvoer beperken door de vereiste kolomnamen als argumenten op te geven.
bijvoorbeeld, om alleen PID -, gebruiker-en CMD-kolommen te bekijken, kunnen we het volgende commando gebruiken.
$ps –eo pid,user,cmd
het proces vinden dat het hoogste geheugen gebruikt
standaard sorteert het ps-commando de uitvoer niet. Door sorteervolgorde in te stellen op % MEM, kunnen we de processen vinden die hogere herinneringen verbruiken.
om de sorteervolgorde in te stellen, wordt de optie –sort= gebruikt. We kunnen deze optie ook combineren met andere opties om de meer specifieke uitvoer te krijgen.
laten we bijvoorbeeld alleen de specifieke velden weergeven en ze ordenen op geheugengebruik.
$ps –eo pid,user,%mem,cmd --sort=-%mem
begrenzende uitvoer
standaard beperkt het ps-commando het resultaat niet in uitvoer.Als we alleen geïnteresseerd zijn in het kennen van de top drie processen die het hoogste geheugen verbruiken,in plaats van het weergeven van de uitvoer van het ps commando in terminal kunnen we het omleiden naar het head Commando.
standaard toont het head commando top 10 regels van de opgegeven bron.We kunnen dit standaardgedrag overschrijven door de vereiste regelnummers op te geven.
om alleen de top drie processen weer te geven, kunnen we de optie “-n 4” gebruiken met het head Commando.
voor 3 Resultaten, geef het cijfer 4 als argument. Net als in de uitvoer van het ps-commando wordt de eerste regel bezet door de titels.
het proces vinden dat de hoogste CPU gebruikt
net zoals we de hoogste geheugenverslindende processen hebben uitgezocht,kunnen we ook de hoogste PROCESSORVERSLINDENDE processen vinden door de uitvoer te sorteren op basis van de CPU-kolom.Bijvoorbeeld het volgende commando print top 3 processen geordend door CPU-gebruik.
$ps –eo pid,user,%cpu,cmd –-sort=-%cpu | head –n 4
zoeken naar het totale aantal processen dat door een gebruiker wordt uitgevoerd
om het totale aantal processen dat door een gebruiker wordt uitgevoerd te berekenen, gebruik het volgende commando
$ps –U –u | wc –l
Leave a Reply