Linux-Methodenbeispiel zum Anzeigen aller Informationen des Prozesses

Linux-Methodenbeispiel zum Anzeigen aller Informationen des Prozesses

Auf dem Server läuft ein Taskprozess. Wenn wir ihn mit ps -ef | grep task anzeigen, erhalten wir nur einige grundlegende Informationen. Wenn wir den entsprechenden Dateipfad und den vollständigen Pfad des Startbefehls kennen müssen, wissen wir nicht, wo wir anfangen sollen.

Heute zeige ich Ihnen eine Methode, mit der Sie alle Informationen des Prozesses anzeigen können, einschließlich des vollständigen Pfads des Startbefehls, des vollständigen Pfads der entsprechenden Datei und anderer Informationen: ls -l /proc/PID

Wenn Sie beispielsweise „ps -ef | grep webhook“ verwenden, um den Prozess anzuzeigen, können Sie nur die folgenden Informationen abrufen:

> ps -ef | grep webhook
root 15902 1 0 Aug15 ? 00:00:00 python -u src/webhook.py
root 30639 30612 0 22:50 pts/0 00:00:00 grep --color=auto webhook

Führen Sie dann ls -l /proc/15902 aus.

> ll /proc/15902
dr-xr-xr-x 2 root root 0 18. September 22:52 attr
-rw-r--r-- 1 root root 0 18. September 22:52 automatische Gruppe
-r-------- 1 root root 0 18. September 22:52 auxv
-r--r--r-- 1 root root 0 18. September 22:52 cgroup
--w------ 1 root root 0 18. September 22:52 clear_refs
-r--r--r-- 1 root root 0 15. Aug. 16:48 cmdline
-rw-r--r-- 1 root root 0 18. September 22:52 Komm
-rw-r--r-- 1 root root 0 18. September 22:52 coredump_filter
-r--r--r-- 1 root root 0 18. September 22:52 CPU-Set
lrwxrwxrwx 1 root root 0 15. August 16:48 cwd -> /services/apps/webhook
-r-------- 1 root root 0 18. Sep 22:52 Umgebung
lrwxrwxrwx 1 root root 0 15. August 16:48 exe -> /usr/bin/python2.7
dr-x------ 2 root root 0 15. Aug. 16:48 fd
dr-x------ 2 root root 0 18. September 22:52 fdinfo
-rw-r--r-- 1 root root 0 18. September 22:52 gid_map
-r-------- 1 root root 0 18. September 22:52 io
-r--r--r-- 1 root root 0 Sep 18 22:52 Grenzen
...

Es gibt mehrere Hauptdateien, auf die wir uns konzentrieren können:

  • cwd: das Verzeichnis, in dem sich die Datei befindet
  • exe: Der vollständige Pfad zum auszuführenden Befehl
  • environ: Umgebungsvariablen beim Ausführen von Befehlen

Auffüllen:

#lsof listet die aktuell geöffneten Systemdateien auf, wird oft mit der Option -i verwendet, um zu sehen, welches Programm einen Port belegt [root@bogon ~]# lsof -i:80
BEFEHL PID BENUTZER FD TYP GERÄTEGRÖSSE/AUS KNOTENNAME
httpd 6701 root 4u IPv6 64259 0t0 TCP *:http (HÖREN)
httpd 6702 Apache 4u IPv6 64259 0t0 TCP *:http (HÖREN)
httpd 6703 Apache 4u IPv6 64259 0t0 TCP *:http (HÖREN)
httpd 6704 Apache 4u IPv6 64259 0t0 TCP *:http (HÖREN)
httpd 6705 Apache 4u IPv6 64259 0t0 TCP *:http (HÖREN)
httpd 6706 Apache 4u IPv6 64259 0t0 TCP *:http (HÖREN)
[root@bogon ~]# lsof -i:22
BEFEHL PID BENUTZER FD TYP GERÄTEGRÖSSE/AUS KNOTENNAME
sshd 931 root 3u IPv4 20955 0t0 TCP *:ssh (HÖREN)
sshd 931 root 4u IPv6 20965 0t0 TCP *:ssh (HÖREN)
sshd 3926 root 3u IPv4 36374 0t0 TCP bogon:ssh->bogon:53436 (HERGESTELLT)
[root@bogon ~]# 


#Alle Informationen zu Prozessen für alle Benutzer auf dem Terminal abrufen [root@bogon ~]# ps -aux
BENUTZER PID %CPU %MEM VSZ RSS TTY STAT STARTZEIT BEFEHL
root 1 0.0 0.4 128092 4724 ? Ss Jun25 0:03 /usr/lib/systemd/syste
Wurzel 2 0,0 0,0 0 0 ? S 25. Juni 0:00 [kthreadd]
Wurzel 3 0,0 0,0 0 0 ? S 25. Juni 0:00 [ksoftirqd/0]
Wurzel 6 0,0 0,0 0 0 ? S 25. Juni 0:00 [kworker/u256:0]
Wurzel 7 0,0 0,0 0 0 ? S 25. Juni 0:00 [Migration/0]
Wurzel 8 0,0 0,0 0 0 ? S 25. Juni 0:00 [rcu_bh]
Wurzel 9 0,0 0,0 0 0 ? R 25. Juni 0:01 [rcu_sched]
Wurzel 10 0,0 0,0 0 0 ? S 25. Juni 0:00 [Watchdog/0]
Wurzel 12 0,0 0,0 0 0 ? S< 25. Juni 0:00 [khelper]
root 13 0.0 0.0 0 0 ? S 25. Juni 0:00 [kdevtmpfs]
Wurzel 14 0,0 0,0 0 0 ? S< 25. Juni 0:00 [netns]
Wurzel 15 0,0 0,0 0 0 ? S 25. Juni 0:00 [khungtaskd]
Wurzel 16 0,0 0,0 0 0 ? S< Jun25 0:00 [Zurückschreiben]
Wurzel 17 0,0 0,0 0 0 ? S< 25. Juni 0:00 [kintegrityd]
Wurzel 18 0,0 0,0 0 0 ? S< 25. Juni 0:00 [Bioset]
Wurzel 19 0,0 0,0 0 0 ? S< 25. Juni 0:00 [kblockd]
Wurzel 20 0,0 0,0 0 0 ? S< 25. Juni 0:00 [md]
Wurzel 26 0,0 0,0 0 0 ? S 25. Juni 0:00 [kswapd0]
Wurzel 27 0,0 0,0 0 0 ? SN 25. Juni 0:00 [ksmd]
root 28 0.0 0.0 0 0 ? SN Jun25 0:00 [große Seitenaufrufe]
Wurzel 29 0,0 0,0 0 0 ? S 25. Juni 0:00 [fsnotify_mark]
root 30 0.0 0.0 0 0 ? S< Jun25 0:00 [Krypto]
Wurzel 38 0,0 0,0 0 0 ? S< 25. Juni 0:00 [kthrotld]
Wurzel 40 0,0 0,0 0 0 ? S< 25. Juni 0:00 [kmpath_rdacd]
Wurzel 41 0,0 0,0 0 0 ? S< 25. Juni 0:00 [kpsmoused]
root 43 0.0 0.0 0 0 ? S< Jun25 0:00 [ipv6_addrconf]
Wurzel 62 0,0 0,0 0 0 ? S< 25. Juni 0:00 [deferwq]
root 94 0.0 0.0 0 0 ? S Jun25 0:00 [kauditd]
Wurzel 233 0,0 0,0 0 0 ? S< 25. Juni 0:00 [mpt_poll_0]
Wurzel 234 0,0 0,0 0 0 ? S< 25. Juni 0:00 [ata_sff]
Wurzel 235 0,0 0,0 0 0 ? S< Jun25 0:00 [mpt/0]
Wurzel 241 0,0 0,0 0 0 ? S 25. Juni 0:00 [scsi_eh_0]
Wurzel 243 0,0 0,0 0 0 ? S< 25. Juni 0:00 [scsi_tmf_0]
Wurzel 245 0,0 0,0 0 0 ? S 25. Juni 0:00 [scsi_eh_1]
Wurzel 246 0,0 0,0 0 0 ? S 25. Juni 0:00 [kworker/u256:2]
. . . . . .


#Alle Prozessnummern eines Serviceprogramms abrufen [root@bogon ~]# pgrep httpd
6701
6702
6703
6704
6705
6706
#Beenden Sie den Prozess, killall beendet alle Prozesse nach Programmnamen [root@bogon ~]# killall httpd
[root@bogon ~]# pgrep httpd
[root@bogon ~]# 
#kill kill-Programm [root@bogon ~]# cat a.sh #Tote Schleife #!/bin/bash
während wahr
Tun
  echo "linux">/dev/null
Erledigt
[root@bogon ~]# ./a.sh
^Z
[1]+ Gestoppt ./a.sh
[root@bogon ~]# ps
  PID TTY ZEIT CMD
 3930 Punkte/1 00:00:00 bash
 11719 Punkte/1 00:00:01 Uhr
 11729 Punkte/1 00:00:00 Punkte
[root@bogon ~]# kill 11719 #Ich habe dieses Problem zufällig entdeckt, der Grund ist noch nicht klar [root@bogon ~]# ps
  PID TTY ZEIT CMD
 3930 Punkte/1 00:00:00 bash
 11719 Punkte/1 00:00:01 Uhr
 11733 Punkte/1 00:00:00 Punkte
[root@bogon ~]# kill -9 11719 #Da ein gewöhnlicher Kill nicht töten kann, senden Sie ein Signal -9, um einen Kill direkt zu erzwingen. Das Problem ist gelöst [root@bogon ~]# ps
  PID TTY ZEIT CMD
 3930 Punkte/1 00:00:00 bash
 11734 Punkte/1 00:00:00 Punkte
[1]+ Getötet ./a.sh
[root@bogon ~]# ./a.sh &
[1] 11735
[root@bogon ~]# ps
  PID TTY ZEIT CMD
 3930 Punkte/1 00:00:00 bash
 11735 Punkte/1 00:00:01 Uhr
 11736 Punkte/1 00:00:00 Punkte
[root@bogon ~]# kill 11735 #Gewöhnliche im Hintergrund laufende Programme können direkt beendet werden
[root@bogon ~]# ps
  PID TTY ZEIT CMD
 3930 Punkte/1 00:00:00 bash
 11737 Punkte/1 00:00:00 Punkte
[1]+ Beendet ./a.sh
[root@bogon ~]#

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Zeigen Sie die vom Prozess in Linux belegte Portnummer an
  • So zeigen Sie Prozessstapelinformationen in Linux an
  • So zeigen Sie die Anzahl der von einem Prozess geöffneten Dateihandles an und ändern sie in Linux
  • Detailliertes Verständnis der Anzeige der Prozessspeichernutzung unter Linux
  • 4 Möglichkeiten zum Anzeigen von Prozessen in LINUX (Zusammenfassung)

<<:  Detaillierte Erklärung zur Verwendung der ziehbaren Textfeldkomponente von Vue.js

>>:  Grafisches Tutorial zur Installation und Konfiguration von MySQL (CentOS7)

Artikel empfehlen

Schreiben und Verstehen von Pfeilfunktionen und diesem in JS

Inhaltsverzeichnis Vorwort 1. So schreiben Sie Fu...

Von Vue berechnete Eigenschaften

Inhaltsverzeichnis 1. Grundlegende Beispiele 2. B...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.21

Notieren Sie die Installations- und Konfiguration...

30 hervorragende Beispiele für Farbabstimmung im Webdesign

Heute habe ich in diesem Artikel 30 hervorragende ...

Beispiel für das Einrichten einer Whitelist in Nginx mithilfe des Geomoduls

Ursprüngliche Konfiguration: http { ...... Verbin...

Ausführliche Erklärung zur Docker-Maschine

Unterschiede zwischen Docker und Docker Machine D...

MySQL-Leistungsoptimierungs-Index-Pushdown

Index Condition Pushdown (ICP) wird in MySQL 5.6 ...

So verwenden Sie benutzerdefinierte CSS-Variablen in Vue

Inhaltsverzeichnis Die benutzerdefinierte CSS-Var...

So konfigurieren Sie den Whitelist-Zugriff in MySQL

Schritte zum Konfigurieren des Whitelist-Zugriffs...

JavaScript, um das Bild mit der Maus zu bewegen

In diesem Artikel wird der spezifische JavaScript...