Holen Sie sich eine Momentaufnahme der Laufenden Prozesse in Ihren Linux-computer mit dem Befehl ps. Suchen Sie die Prozesse nach Namen, Benutzer-oder sogar terminal mit so viel oder so wenig Details wie nötig. Wir zeigen Ihnen, wie.
Prozess-Management unter Linux
Das schlagende Herz von allen Linux-und Unix-artigen Betriebssystemen ist der kernel. Unter Ihren vielen Aufgaben ist die Zuordnung von system-Ressourcen wie RAM und CPU-Zeit. Diese müssen jongliert werden in Echtzeit, so dass Sie alle Laufenden Prozesse zu bekommen und Ihren Gerechten Anteil, entsprechend der Priorität jeder Aufgabe.
Manchmal können Aufgaben lock-up, oder geben Sie eine Endlosschleife geraten oder nicht mehr reagiert, aus anderen Gründen. Oder Sie können weiterhin ausgeführt werden, aber fressen zu viel CPU-Zeit oder RAM, oder Verhalten sich einige gleichermaßen anti-sozialen Weg. Manchmal Aufgaben, die getötet werden müssen als eine Barmherzigkeit für alle beteiligten. Der erste Schritt. Natürlich ist zu identifizieren, den Prozess in Frage.
Aber vielleicht haben Sie keine Aufgabe oder performance-Probleme auf allen. Vielleicht sind Sie einfach neugierig, welche Prozesse laufen im inneren des Computers ausführen, und Sie möchten, einen Blick unter die Haube. Der ps-Befehl erfüllt beide dieser Bedürfnisse. Es gibt Ihnen eine Momentaufnahme von dem, was passiert im inneren Ihres Computers “gerade jetzt.”
ps ist flexibel genug, um Ihnen genau die Informationen, die Sie brauchen, in genau dem format, das Sie möchten, es. In der Tat, die ps hat sehr viele Optionen. Die hier beschriebenen Möglichkeiten gerecht zu werden, die für die meisten alltäglich braucht. Wenn Sie brauchen, um tiefer in die ps als wir genommen haben, es in diesem Artikel, Sie werden feststellen, dass unsere Einführung macht der man-Seite leichter zu verdauen.
Auflisten Von Prozessen
Der einfachste Weg, um mit ps zu fire it up ohne Parameter:
ps
ps zeigt eine Liste der Prozesse, die gestartet, indem der Benutzer, der den Befehl ausgeführt.
Die vier Säulen sind:
- PID: Die Prozess-ID des Prozesses.
- TTY: der name Der Konsole, der Benutzer ist eingeloggt.
- ZEIT: Der CPU-Rechenzeit, die der Prozess verwendet hat.
- CMD: Der name des Befehls, mit denen der Prozess gestartet
Listing-Prozess für Alle Benutzer
durch das hinzufügen der e-Mail (wählen Sie ” alle Prozesse) können wir machen ps Liste der gestarteten Prozesse, die durch alle Benutzer, nicht nur der Benutzer, der die Ausführung des ps-Befehls. Weil das wird eine lange Liste, wir sind Rohrleitungen in weniger.
ps -e | weniger
Der Prozess-Liste wird dann in weniger.
Wir haben viele weitere Einträge in die Liste, aber wir sehen den gleichen vier Spalten vor. Die Einträge mit einem Fragezeichen ? in der Spalte TTY wurden nicht gestartet in einem terminal-Fenster.
Zeigt Prozess-Hierarchie
Manchmal kann es helfen, um herauszufinden, ein Problem zu identifizieren oder einen bestimmten Prozess, wenn Sie sehen, welche Prozesse gestartet, andere Prozesse. Wir verwenden die -H (Hierarchie) option zu tun.
ps -eH | weniger
Die Einrückung zeigt an, welche Prozesse sind Eltern, welche anderen Prozesse.
Um ein wenig mehr Klarheit, können wir Fragen, ps, fügen Sie einige ASCII-Linien und zeichnen Sie die Hierarchie als Baum. Die Möglichkeit, dies zu tun ist –Wald-option.
ps -äh –Wald | weniger
Dies macht es einfacher, zu verfolgen, welche Prozesse sind die Eltern der anderen Prozesse.
Auflisten von Prozessen nach Namen
Sie können leiten Sie die Ausgabe von ps durch grep Listen-Einträge, die haben Namen, die Ihrer Sucheingabe entsprechen. Hier sind wir auf der Suche nach Einträgen, die mit dem “firefox” Suchbegriff:
ps -e | grep firefox
In diesem Fall ist die Ausgabe eine einzelne Eintrag für den Prozess, in dem wir interessiert sind. Natürlich hätten wir starteten mehrere Instanzen von Firefox, es wäre mehr als ein Element in der Liste zurückgegeben.
Zeigt Mehr Spalten in der Ausgabe
Weitere Spalten hinzufügen, um die Ausgabe, verwenden Sie die -f (full-format) auswählen.
ps -ef | less
Eine zusätzliche Menge von Spalten sind enthalten in der Ausgabe von ps.
Die Spalten sind:
- UID: Die Benutzer-ID des Eigentümers dieses Prozesses.
- PID: Die Prozess-ID des Prozesses.
- PPID: Parent-Prozess-ID des Prozesses.
- C: Die Zahl der Kinder, die der Prozess hat.
- STIME: Start Zeit. Die Zeit, wenn der Prozess begonnen.
- TTY: der name Der Konsole, der Benutzer ist eingeloggt.
- ZEIT: Der CPU-Rechenzeit, die der Prozess verwendet hat.
- CMD: Der name des Befehls, startete der Prozess.
Durch die Verwendung der-F – (extra-voll-format) option, die wir bekommen können, noch mehr Spalten:
ps -eF | less
Die Spalten erhalten wir diese Zeit benötigen, den Bildschirm zu scrollen seitwärts offenbaren Sie alle.
Drücken Sie die “Pfeil nach Rechts” – Taste verschiebt die Anzeige nach Links.
Die Spalten, die wir jetzt bekommen sind:
- UID: Die Benutzer-ID des Eigentümers dieses Prozesses.
- PID: Die Prozess-ID des Prozesses.
- PPID: Parent-Prozess-ID des Prozesses.
- C: Die Zahl der Kinder, die der Prozess hat.
- SZ: die Größe, RAM-Seiten das Prozess-abbild.
- RSS: Resident set size. Dies ist die nicht getauscht physikalischen Speicher durch den Prozess.
- PSR: Der Prozessor, dass der Prozess zugeordnet ist.
- STIME: Start Zeit. Die Zeit, wenn der Prozess begonnen.
- TTY: der name Der Konsole, der Benutzer ist eingeloggt.
- ZEIT: Der CPU-Rechenzeit, die der Prozess verwendet hat.
- CMD: Der name des Befehls, startete der Prozess.
Listing-Prozesse mit Prozess-ID
Sobald Sie gefunden haben, die Prozess-ID des Prozesses, der Sie interessiert, können Sie es mit dem ps-Befehl zum auflisten der details des Prozesses. Verwenden Sie die -p (wählen Sie mit Prozess-ID) option, dies zu erreichen:
ps -p 3403
Die details für diesen Prozess sind aufgeführt:
Sie sind nicht nur eine Prozess-ID. Sie können eine Liste von Prozess-IDs, getrennt durch Leerzeichen.
Listing-Prozesse durch den Befehl
Die -C (Befehl) option ermöglicht Ihnen die Suche nach einem Prozess mit dem Befehl name. Das ist der name des Befehls, startete der Prozess. Dies ist leicht Verschieden von der Befehlszeile aus, die womöglich Pfad-Namen und-Parametern oder Optionen.
ps -C shutter
Die details des Verschluss-Prozess aufgeführt sind.
Liste der Prozesse die von einem Benutzer
Zu sehen, wie die Prozesse, die im Besitz eines bestimmten Benutzers, die-u (user-Liste) option:
ps -u Maria
Die Prozesse des Benutzer-Konto mary angezeigt.
Liste der Prozesse die von Terminal
Um zu sehen, die Prozesse in Verbindung mit einem TTY, verwenden Sie die-t (wählen Sie von TTY-option). Ohne ein TTY-Nummer, die -t option, Berichte über die Prozesse im Zusammenhang mit der aktuellen terminal-Fenster.
tty
ps -t
Die tty-Befehl meldet, dass dies pseudo-teletype 0. Die Prozesse aufgeführt, die von ps -t-sind alle im Zusammenhang mit TTY pts/0.
Wenn wir an eine TTY-Nummer auf der Befehlszeile, dann sollten wir einen Bericht über die Prozesse im Zusammenhang mit TTY.
ps -t 1
Diese Zeit, die Prozesse sind alle im Zusammenhang mit TTY pts/1.
RELATED: Was ist ein TTY auf Linux? (und Wie Sie das tty-Kommando)
Auswahl der Spalten für die Anzeige
Mit der-o (format) option können Sie auswählen, welche Spalten Sie haben möchten, enthalten in der Ausgabe von ps. Geben Sie die Spalten mit Namen. Die (lange) Liste der Spaltennamen kann man auf der man-Seite im Abschnitt “Standard Format Specifiers.” In diesem Beispiel wir die Wahl haben, die CPU-Zeit (pcpu) und die Kommandozeilen-Argumente (args) in der Ausgabe enthalten.
ps -e -o pcpu,args | weniger
Die Ausgabe enthält nur unsere beiden angeforderten Spalten.
Das Sortieren Der Ausgabe von Spalten
Sie können die Ausgabe sortiert für Sie durch die Nutzung des –sort-option. Lassen Sie uns Sortieren Sie die Ausgabe nach der CPU-Spalte:
ps -e -o pcpu,args –sort-pcpu| weniger
Der Bindestrich “-” auf der pcpu Sortieren parameter gibt eine absteigende Sortierreihenfolge.
Sehen Sie die zehn am meisten CPU-intensive Prozesse, leiten Sie die Ausgabe über den Kopf Befehl:
ps -e -o pcpu,args –sort-pcpu | head -10
Wir erhalten eine sortierte, Liste abgeschnitten.
Wenn wir weitere Spalten hinzufügen, auf unserer Anzeige, wir können Sortieren nach mehreren Spalten. Fügen wir die pmem-Spalte. Dies ist der Prozentsatz der Arbeitsspeicher des Computers verwendet wird, das durch den Prozess. Ohne Bindestrich, oder mit einem Pluszeichen ” +”, um die Sortierreihenfolge ist aufsteigend.
ps -e -o pcpu,pmem,args –sort-pcpu,pmem | head -10
Wir bekommen unsere extra-Spalte, und die neue Spalte enthalten ist, in der Sortierung. Die erste Spalte ist sortiert, bevor Sie in der zweiten Spalte und der zweiten Spalte in aufsteigender Reihenfolge sortiert wird, weil wir nicht setzen Sie einen Bindestrich in pmem.
Wir machen es ein bisschen mehr nützlich, und fügen Sie in den Prozess-ID-Spalte (pid), so können wir sehen, wie diese Nummer von jedem Prozess in unserer Auflistung.
ps -e -o pid,pcpu,pmem,args –sort-pcpu,pmem | head -10
Jetzt können wir die Prozesse identifizieren.
Töten Prozesse mit Prozess-ID
Wir haben eine Reihe von Möglichkeiten, Prozesse zu identifizieren, einschließlich name, Befehls -, Benutzer-und terminal. Wir haben auch überdachte Möglichkeiten, Prozesse zu identifizieren, die durch Ihre dynamische Attribute, wie die CPU-Nutzung und Speicher.
So, die eine oder andere Weise, wir können die Prozesse identifizieren, die ausgeführt werden. Durch das wissen um die Prozess-ID, können wir (wenn wir müssen) zu töten, alle diese Prozesse mit dem kill-Befehl. Wenn wir Sie töten wollten Prozess 898, würden wir dieses format verwenden:
sudo kill-898
Wenn alles gut geht, wird der Prozess automatisch beendet.
VERWANDTE: Wie man Prozesse Killen Aus dem Linux-Terminal
Prozesse mit bestimmten Namen beenden
Der pkill-Kommando können Sie die Prozesse nach Namen beenden. Stellen Sie sicher, dass Sie identifiziert haben, den richtigen Prozess! Dieser Befehl beendet die top-Verfahren.
sudo pkill top
Wieder, keine Nachrichten sind gute Nachrichten. Der Prozess wird automatisch beendet.
Töten Mehrere Prozesse mit Namen
Wenn Sie mehrere Kopien eines Prozesses oder eines Prozesses hervorgebracht hat eine Anzahl von Kind-Prozessen (wie Google Chrome tun können), wie können Sie töten Sie ab? Das ist genauso einfach. Wir verwenden den killall Befehl.
Wir haben zwei Exemplare des oben laufen:
ps -e | grep-top
Wir beenden mit diesem Befehl:
sudo killall top
Keine Antwort bedeutet, dass keine Probleme, so dass diese beiden Prozesse wurden beendet.
Eine Dynamische Ansicht mit top
Die Ausgabe von ps ist eine Momentaufnahme. Es wird nicht aktualisiert. Um eine Aktualisierung der Anzeige der Prozesse, verwenden Sie den Befehl top. Es bietet eine dynamische Ansicht der Prozesse laufen in Ihrem computer. Die Anzeige erfolgt in zwei teilen. Es ist ein dashboard-Bereich an der Spitze der Bildschirm, der aus Zeilen text und eine Tabelle im unteren Teil der Bildschirm, der aus Spalten.
Beginnen Sie oben mit diesem Befehl:
top
Die Spalten enthalten Informationen über die Prozesse:
- PID: Prozess-ID
- BENUTZER: Name des Besitzers des Prozesses
- PR: Prozess-Priorität
- NI: Den nice-Wert des Prozesses
- VIRT: Virtueller Speicher von Prozess
- RES: Resident verwendete Speicher durch den Prozess
- SHR: Shared memory verwendet, das durch den Prozess
- S: Status des Prozesses. Siehe die Liste unterhalb der Werte, die dieses Feld nehmen können
- %CPU: der Anteil der CPU-Zeit verwendet, durch die der Prozess seit dem letzten update
- %MEM: Anteil des physischen Speichers verwendet
- ZEIT+: Gesamt-CPU-Zeit verwendet, von der Aufgabe, die in Hundertstel Sekunden
- BEFEHL: name des Befehls oder über die Befehlszeile (name und command-line-Parameter), Wenn die Befehl-Spalte nicht sichtbar ist, drücken Sie die “Pfeil nach Rechts” – Taste.
Der status des Prozesses kann sein:
- D: Unterbrechungsfreie schlafen
- R: Running
- S: Schlafen
- T: Verfolgt (beendet)
- Z: Zombie
Drücken Sie die Taste “Q” zum beenden von oben.
RELATED: 37 Wichtige Linux-Befehle Sie Kennen Sollten
Bevor Sie den Prozess beenden
Stellen Sie sicher, es ist ein Sie nach und überprüfen Sie, dass es nicht dazu führen Sie irgendwelche Probleme. In allem, es lohnt sich zu überprüfen, mit dem -H (Hierarchie) und –Wald-Optionen, um sicherzustellen, dass es nicht irgendwelche wichtigen untergeordnete Prozesse, die Sie vergessen hatte, über.
LESEN SIE WEITER
- › 10 Einfache Schritte, um Bessere iPhone-und iPad-Sicherheit
- › Fonts und Browser-Erweiterungen, die Helfen, die mit Legasthenie im Web Lesen
- › Wie Benutze ich curl zum Herunterladen von Dateien Aus dem Linux-Kommandozeile
- › Wie Kann Mein ISP Sagen, ich bin Mit BitTorrent?
- › So richten Sie eine Smart-Garage