12.Linux для Начинающих - Процессы и Память: top, free, ps
Innehållsförteckning:
I Linux kallas en löpande instans av ett program process. Ibland, när du arbetar på en Linux-maskin, kan du behöva ta reda på vilka processer som för närvarande körs.
Det finns många kommandon som du kan använda för att hitta information om processerna, med
ps
,
pstree
och
top
som de mest använda.
Den här artikeln förklarar hur man använder
ps
kommandot för att lista de processer som för närvarande körs och visa information om dessa processer.
Hur man använder
ps
Command
Den allmänna syntaxen för
ps
kommandot är följande:
ps
Av historiska och kompatibla skäl accepterar
ps
kommandot flera olika typer av alternativ:
- UNIX-stilalternativ, föregås av en enda streck.BSD-stilalternativ, används utan bindestreck.GNU långa alternativ, föregås av två streck.
Olika alternativstyper kan blandas, men i vissa fall kan konflikter uppstå, så det är bäst att hålla sig till en alternativtyp.
BSD- och UNIX-alternativ kan grupperas.
I sin enklaste form kommer
ps
att skriva ut fyra kolumner med information för minst två processer som körs i det aktuella skalet, själva skalet och de processer som körs i skalet när kommandot anropades, när det används utan något alternativ.
ps
Utgången innehåller information om skalet (
bash
) och processen som körs i detta skal (
ps
, kommandot som du skrev):
PID TTY TIME CMD 1809 pts/0 00:00:00 bash 2043 pts/0 00:00:00 ps
De fyra kolumnerna är märkta
PID
,
TTY
,
TIME
och
CMD
.
-
PID- Process-ID. Vanligtvis, när du körpskommandot, är den viktigaste informationen som användaren letar efter processen PID. Genom att känna till PID kan du döda en felaktig process.TTY- Namnet på kontrollterminalen för processen.TIME- Den ackumulerade CPU-tiden för processen, visas i minuter och sekunder.CMD- Namnet på kommandot som användes för att starta processen.
Utgången ovan är inte särskilt användbar eftersom den inte innehåller mycket information. Den verkliga kraften i
ps
kommandot kommer när den startas med ytterligare alternativ.
ps
kommandot accepterar ett stort antal alternativ som kan användas för att visa en specifik grupp av processer och annan information om processen, men endast en handfull behövs i den dagliga användningen.
ps
används oftast med följande kombination av alternativ:
BSD-formulär:
ps aux
- Alternativet säger
psatt visa alla användares processer. Endast de processer som inte är associerade med en terminal och processer från gruppledare visas inte.ustår för ett användarorienterat format som ger detaljerad information om processerna. Alternativetxinstruerarpsatt lista processerna utan en kontrollterminal. Det är främst processer som startas vid starttid och körs i bakgrunden.
Kommandot visar information i elva kolumner märkta
USER
,
PID
,
%CPU
,
%MEM
,
VSZ
,
RSS
,
STAT
,
START
,
TTY
,
TIME
och
CMD
.
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.8 77616 8604 ? Ss 19:47 0:01 /sbin/init root 2 0.0 0.0 0 0 ? S 19:47 0:00…
Vi har redan förklarat
PID
,
TTY
,
TIME
och
CMD
etiketter. Här är en förklaring av andra etiketter:
-
USER- Användaren som kör processen.%CPU- Processen för processen.%MEM- Procentandelen av processens bosatta inställda storlek på det fysiska minnet på maskinen.VSZ- Virtuellt minnesstorlek för processen i KiB.RSS- Storleken på det fysiska minnet som processen använder.STAT- Processstatskoden, somZ(zombie),S(sover) ochR(kör).START- Tiden när kommandot startade.
Alternativet
f
säger
ps
att visa en trädvy av föräldrar till barn-processer:
ps auxf
Med
ps
kommandot kan du också sortera utgången. Till exempel, för att sortera utdata baserat på minnesanvändningen, skulle du använda:
ps aux --sort=-%mem
UNIX-form:
ps -ef
- Alternativet
-einstruerarpsatt visa alla processer.-fstår i fullformatlista, som ger detaljerad information om processerna.
Kommandot visar information i åtta kolumner märkta
UID
,
PID
,
PPID
,
C
,
STIME
,
TIME
och
CMD
.
UID PID PPID C STIME TTY TIME CMD root 1 0 0 19:47 ? 00:00:01 /sbin/init root 2 0 0 19:47 ? 00:00:00…
Etiketter som inte redan har förklarats har följande betydelse:
-
UID- Samma somUSER, användaren som kör processen.PPID- ID för överordnad process.C- Samma som%CPU, process CPU-användningen.STIME- Samma somSTART, den tid då kommandot startade.
Om du bara
linuxize
se de processer som körs som en specifik användare skriver du följande kommando, där
linuxize
är användarens namn:
Användardefinierat format
Alternativet
o
låter dig ange vilka kolumner som ska visas när du kör
ps
kommandot.
Om du till exempel bara
COMMAND
skriva ut information om
PID
och
COMMAND
kör du en av följande kommandon:
ps -efo pid, comm
Använda
ps
med andra kommandon
ps
kan användas i kombination med andra kommandon genom piping.
ps -ef | less
Utgången från
ps
kommandot kan filtreras med
grep
. För att bara visa processen som tillhör rotanvändaren skulle du till exempel köra:
Slutsats
ps
kommandot är ett av de mest använda kommandona vid felsökning av problem på Linux-system. Det har många alternativ, men vanligtvis använder de flesta användare antingen
ps aux
eller
ps -ef
att samla information om körprocesser.
För mer information om
ps
, skriv
man ps
i din terminal.
Oktober månad kan ha dominerats mer eller mindre av Ubuntu Linux för de som förutser den senaste Quantal Quetzal-versionen, men i veckan gjorde Linux Mint-projektet ett spännande meddelande om
I synnerhet lanserade Linux Mint-projektet på tisdag att det nu har en onlinebutik komplett med flera datorer som erbjuder Linux Mint förladdad. "
Samlingen "Linux Diversity": Ett kit, 10 Linux distros
Om du handlar om ett nytt OS , kommer den här uppsättningen att ge dig en mängd olika de senaste populära alternativen.
Linux: Linux Live USB Creator gör det lättare att installera Linux
Linux har alltid stött på de flesta som något för komplicerat att installera och lära. Men med Linux Live USB Creator kan du nu installera ett av många Linux-operativsystem på din USB-stick och använda det helt enkelt.







