Linux-Betrieb und -Wartung, grundlegendes Prozessmanagement, Echtzeitüberwachung und -steuerung

Linux-Betrieb und -Wartung, grundlegendes Prozessmanagement, Echtzeitüberwachung und -steuerung

1. Im Hintergrund laufende Jobs

1.sleep 999 & (laufender Job)
[root@localhost ~]# sleep 999 &
[1] 3670
2.ps -ef|grep sleep (Prozess anzeigen)
[root@localhost ~]# ps -ef|grep sleep
root 3670 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3671 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3672 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3673 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3674 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3675 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3676 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3677 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3678 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3686 950 0 10:54 ? 00:00:00 schlafen 60
3.fg (das letzte anpassen)
[root@localhost ~]# fg
Schlaf 999
4.jobs (Aufgaben anzeigen)
[root@localhost ~]# Arbeitsplätze
[1] Schlaf 999 &
[3] Schlaf 999 &
[4] Schlaf 999 &
[6]- Schlaf 999 &
[7]+ Schlaf 999 
ctr1+z (Done) Abschließen 5. Beschreibung fg %N (angegebene Aufgabe aufrufen)
gestoppt
bg %3 (Laufstatus)
+ (Standardaktion)
- (der zweiten Operation)

2. Verwenden Sie Signale, um Prozesse zu steuern

Grundlegende Prozessmanagementsignale

Signal-ID Kurzname Definitionsname verwenden
1 HUP Aussetzen Ermöglichen Sie einem Prozess, die Konfigurationsdatei ohne Neustart erneut zu lesen und die neuen Konfigurationsinformationen wirksam werden zu lassen
2 INT Tastaturunterbrechung Unterbricht einen Vordergrundprozess. Strg+C verwendet das SIGINT-Signal
9 TÖTEN Unterbrechung, kann nicht abgefangen werden Führt zur sofortigen Beendigung des Programms. Kann nicht blockiert, ignoriert oder verarbeitet werden
15Standardwert BEGRIFF Beendigung Führt zum Beenden des Programms. Im Gegensatz zu SIGKILL kann es abgefangen, ignoriert oder verarbeitet werden. Fordern Sie die Beendigung eines Programms auf freundliche Weise an, sodass das Programm selbst aufräumen kann

Der Kill-Befehl sendet basierend auf der ID eines Prozesses ein Signal an ihn. Obwohl der Name kill lautet, kann dieser Befehl zum Senden beliebiger Signale verwendet werden, nicht nur von Signalen, die ein Programm beenden.

1. Zeigen Sie den Prozess an [root@localhost ~]# ps -ef|grep sleep
root 3670 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3672 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3673 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3675 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3676 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3901 950 0 10:59 ? 00:00:00 schlafen 60
root 3904 3642 0 10:59 pts/1 00:00:00 grep --color=auto sleep
2. Löschen Sie die angegebene Aufgabe [root@localhost ~]# kill %1
[root@localhost ~]# ps -ef|grep sleep
root 3672 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3673 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3675 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3676 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3901 950 0 10:59 ? 00:00:00 schlafen 60
root 3906 3642 0 11:00 pts/1 00:00:00 grep --color=auto sleep
[1] Schlaf 999
3.kill -l (alle unterstützten Programme auflisten)
[root@localhost ~]# kill -l
 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM
16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR
31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3
38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7
58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX
[root@localhost ~]
4. kill 3672 (Prozess löschen)
Zeigen Sie den Prozess an [root@localhost ~]# ps -ef|grep sleep
root 3672 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3673 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3675 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3676 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3925 950 0 11:00 ? 00:00:00 schlafen 60
root 4039 3642 0 11:00 pts/1 00:00:00 grep --color=auto sleep
[root@localhost ~]# töten 3672
[root@localhost ~]# ps -ef|grep sleep
root 3673 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3675 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3676 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3925 950 0 11:00 ? 00:00:00 schlafen 60
root 4054 3642 0 11:01 pts/1 00:00:00 grep --color=auto sleep
[3] Schlaf 99
5.killall sleep (alle Schlafdateien löschen)
Zeigen Sie den Prozess an: [root@localhost ~]# ps -ef|grep sleep
root 3673 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3675 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 3676 3642 0 10:54 pts/1 00:00:00 Schlaf 999
root 4164 950 0 11:01 ? 00:00:00 schlafen 60
root 4174 3642 0 11:01 pts/1 00:00:00 grep --color=auto sleep
Erfolgreich gelöscht [root@localhost ~]# ps -ef|grep sleep
root 4185 3642 0 11:02 pts/1 00:00:00 grep --color=auto sleep

3. Prozessaktivität überwachen

IO-Last

Die Auslastungszahl ist eine globale Zählerberechnung und ergibt sich aus der Summe aller CPUs.

Da Aufgaben, die aus dem Ruhezustand zurückkehren, möglicherweise auf andere CPUs umgeplant werden, ist es schwierig, jede CPU genau zu zählen, aber die Genauigkeit der Gesamtanzahl kann garantiert werden.

Die angezeigte durchschnittliche Auslastung repräsentiert alle CPUs.
Belastungswert anzeigen und überwachen

[root@localhost ~]# nach oben

1. Überprüfen Sie die Auslastung [root@localhost ~]# uptime
 11:12:36, 45 Minuten aktiv, 2 Benutzer, durchschnittliche Auslastung: 0,06, 0,01, 0,20
 2. Ladewert anzeigen und Monitoring durchführen [root@localhost ~]# top
oben – 11:15:03, 47 Minuten, 2 Benutzer, durchschnittliche Auslastung: 0,00, 0,00, 0,16
Aufgaben: 328 insgesamt, 1 läuft, 327 schläft, 0 gestoppt, 0 Zombie
%CPU(s): 0,0 us, 0,7 sy, 0,0 ni, 99,0 id, 0,0 wa, 0,3 hi, 0,0 si, 0,0 st
MiB Speicher: 804,8 insgesamt, 67,5 frei, 474,7 verwendet, 262,5 Buff/Cache
MiB Swap: 2048,0 insgesamt, 1427,5 frei, 620,5 verwendet. 196,8 verfügbarer Mem 
    PID USER PR NI VIRT RES SHR S %CPU %MEM ZEIT+ BEFEHL  
   3884 Wurzel 20 0 0 0 0 I 0,3 0,0 0:00,57 kworker+ 
   4404 Wurzel 20 0 64856 4880 4008 R 0,3 0,6 0:00,17 oben      
      1 Wurzel 20 0 245372 7252 4356 S 0,0 0,9 0:03.43 systemd  
      2 Wurzel 20 0 0 0 0 S 0,0 0,0 0:00,00 kthreadd 
      3 Wurzel 0 -20 0 0 0 I 0,0 0,0 0:00.00 rcu_gp   
      4 Wurzel 0 -20 0 0 0 I 0,0 0,0 0:00,00 rcu_par+ 
      6 Wurzel 0 -20 0 0 0 I 0,0 0,0 0:00,00 kworker+ 
      8 Wurzel 0 -20 0 0 0 I 0,0 0,0 0:00,00 mm_perc+ 
      9 Wurzel 20 0 0 0 0 S 0,0 0,0 0:00,24 ksoftir+ 
     10 Wurzel 20 0 0 0 0 I 0,0 0,0 0:00.35 rcu_sch+ 
     11 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migrieren+ 
     12 root rt 0 0 0 0 S 0.0 0.0 0:00.00 watchdo+ 
     13 Wurzel 20 0 0 0 0 S 0,0 0,0 0:00.00 cpuhp/0  
     15 Wurzel 20 0 0 0 0 S 0,0 0,0 0:00,00 kdevtmp+ 
     16 Wurzel 0 -20 0 0 0 I 0,0 0,0 0:00,00 netns    
     17 Wurzel 20 0 0 0 0 S 0,0 0,0 0:00,00 kauditd  
     18 Wurzel 20 0 0 0 0 S 0,0 0,0 0:00,00 khungta+ 
     Beschreibung Presse mtl
[root@localhost ~]# nach oben
Drücken Sie 1 zum Ausblenden
CPU-Informationen anzeigen

4. Echtzeit-Prozessüberwachung

Top wird verwendet, um eine dynamische Vollbildanzeige von Systeminformationen zu realisieren

//Interaktive Unterbefehle des obersten Befehls:
    M //Nach residenter Speichergröße sortieren, Standardsortierung nach CPU-Prozentsatz P //Nach CPU-Auslastung in Prozent sortieren T //Nach kumulierter Zeit sortieren (belegte CPU-Zeit) l //Durchschnittliche Auslastung und Startzeit anzeigen t //Prozess- und CPU-Statusinformationen anzeigen m //Speicherbezogene Informationen anzeigen c //Vollständige Befehlszeileninformationen anzeigen q //Obersten Befehl beenden k //Einen Prozess beenden 1 //Alle CPU-Informationen anzeigen s //Aktualisierungszeitintervall ändern us //Zeigt Benutzerbereich an;
    sy // zeigt Kernelspeicher an;
    ni //Zeigt die Anpassung des Nice-Werts und des CPU-Auslastungsverhältnisses an;
    id // gibt den Leerlaufprozentsatz an;
    wa //Gibt den Prozentsatz der Zeit an, die auf den Abschluss der E/A gewartet wird.
    hi // zeigt einen Hard Interrupt an, den Prozentsatz der Zeit, der vom Hardware-Interrupt eingenommen wird;
    si // gibt den Prozentsatz der Zeit an, die durch Soft-Interrupts belegt ist;
    st // steht für „stehlen“, also die Zeit, die durch Virtualisierungstechnologie gestohlen wird (z. B. beim Ausführen einer virtuellen Maschine)
PR //Priorität NI //Nice-Wert VIRT //Virtueller Speichersatz RES //Residenter Speichersatz SHR //Größe des gemeinsam genutzten Speichers S //Prozessstatus

Oben sind die Details zur Echtzeitüberwachung und -steuerung des grundlegenden Prozessmanagements für Betrieb und Wartung von Linux aufgeführt. Weitere Informationen zu den Betriebs- und Wartungsprozessen von Linux finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • Tutorial zur Bedienung und Wartung von Linux, grundlegende Swap-Partition und LVM-Verwaltung
  • Linux-Betrieb und -Wartung – Tutorial zur grundlegenden Datenträgerverwaltung
  • Grundlegendes Prozessmanagement und Analyse der Umgebungszusammensetzung bei Linux-Betrieb und -Wartung
  • Grundlagen zu Betrieb und Wartung unter Linux - Tutorial zu statischen httpd-Webseiten

<<:  Layui implementiert den Bestätigungscode der Anmeldeschnittstelle

>>:  Neue interaktive Erfahrungen mit Online-Werbung bei der Website-Erstellung (grafisches Tutorial)

Artikel empfehlen

Reines CSS zum Hinzufügen von Stil zur ausgewählten Implementierung (kein Skript)

Ändern Sie den Standardstil der Auswahl, normalerw...

js, um einen einfachen Bild-Drag-Effekt zu erzielen

In diesem Artikel wird der spezifische Code von j...

Designperspektive Technologie ist ein wichtiges Kapital der Designfähigkeit

Ein Designsoldat fragte: „Kann ich nur reines Des...

So lösen Sie das Problem, dass Seata die MySQL 8-Version nicht verwenden kann

Mögliche Gründe: Der Hauptgrund, warum Seata MySQ...

Farbverlaufseffekt im HTML-Hintergrund durch CSS-Stil erreicht

Screenshots der Effekte: Implementierungscode: Cod...

mySql SQL-Abfrageoperation für statistische Mengen

Ich werde nicht viel Unsinn erzählen, schauen wir...

So aktualisieren Sie alle Python-Bibliotheken in Ubuntu 18.04 auf einmal

Was ist Pip pip ist ein Python-Paketverwaltungsto...

So installieren Sie Grafana und fügen Influxdb-Überwachung unter Linux hinzu

Installieren Sie Grafana. Die offizielle Website ...

Vue realisiert die Funktion zum Hochladen von Fotos auf den PC

In diesem Artikelbeispiel wird der spezifische Co...