Heim >System-Tutorial >LINUX >Effizient und einfach, ein leistungsstarkes Tool zur Systemüberwachung im Linux-Batch-Modus

Effizient und einfach, ein leistungsstarkes Tool zur Systemüberwachung im Linux-Batch-Modus

王林
王林nach vorne
2024-02-13 17:00:13983Durchsuche

In Linux-Systemen müssen wir häufig Systemressourcen überwachen und anpassen, um den normalen Betrieb und die effiziente Nutzung des Systems sicherzustellen. Die Verwendung des Top-Befehls ist eine der gebräuchlichsten Methoden zur Systemüberwachung. Im tatsächlichen Betrieb ist die interaktive Schnittstelle des Top-Befehls jedoch nicht praktisch, insbesondere wenn die Systemauslastung hoch ist und die Echtzeitaktualisierung des Top-Befehls zu Problemen führt zusätzliche Systembelastung. In diesem Artikel wird ein effizienteres und einfacheres Systemüberwachungstool im Linux-Batch-Modus vorgestellt – der oberste Befehl im Batch-Modus.

Der Befehl

top wird verwendet, um Echtzeit-Verarbeitungsaktivitäten in einem Linux-System sowie vom Kernel verwaltete Aufgaben anzuzeigen. Es zeigt die CPU- und Speicherauslastung sowie andere Informationen wie laufende Programme an. Sie können die Optionen des Skriptmodus nutzen, um die Ausgabe von Top-Befehlen an andere Anwendungen oder Dateien zu übertragen.

So verwenden Sie den Top-Befehlsskriptmodus

In Centos8 führen wir die Befehle in diesem Artikel aus. Der folgende Befehl sortiert die Daten nach CPU-Auslastung und druckt die ersten 20 im Befehl angegebenen Zeilen.

[root@localhost ~]# top -bc -n 1 | head -20
top - 22:23:02 up 6 days, 12:36,  2 users,  load average: 0.00, 0.00, 0.00
Tasks: 186 total,   2 running, 184 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   1792.0 total,    886.5 free,    277.0 used,    628.4 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   1333.1 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
      1 root      20   0  176848  10824   8116 S   0.0   0.6   0:04.50 /usr/lib/systemd/s
ystemd --switch+
      2 root      20   0       0      0      0 S   0.0   0.0   0:00.01 [kthreadd]
      3 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 [rcu_gp]
      4 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 [rcu_par_gp]
      6 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 [kworker/0:0H-kblockd]
      9 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 [mm_percpu_wq]
     10 root      20   0       0      0      0 S   0.0   0.0   0:00.70 [ksoftirqd/0]
     11 root      20   0       0      0      0 I   0.0   0.0   0:02.64 [rcu_sched]
     12 root      rt   0       0      0      0 S   0.0   0.0   0:00.00 [migration/0]
     13 root      rt   0       0      0      0 S   0.0   0.0   0:00.45 [watchdog/0]
     14 root      20   0       0      0      0 S   0.0   0.0   0:00.00 [cpuhp/0]
     16 root      20   0       0      0      0 S   0.0   0.0   0:00.00 [kdevtmpfs]
     17 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 [netns]

Effizient und einfach, ein leistungsstarkes Tool zur Systemüberwachung im Linux-Batch-Modus
Wenn Sie nach Speichernutzung sortieren möchten, müssen Sie den folgenden Befehl verwenden:

[root@localhost ~]# top -bc -o +%MEM -n 1 | head -n 20
top - 22:26:01 up 6 days, 12:39,  2 users,  load average: 0.00, 0.00, 0.00
Tasks: 187 total,   1 running, 186 sleeping,   0 stopped,   0 zombie
%Cpu(s):  5.9 us,  5.9 sy,  0.0 ni, 88.2 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   1792.0 total,    834.6 free,    329.0 used,    628.4 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   1281.2 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
  22531 root      20   0  615344  75672  25780 S   0.0   4.1   0:00.80 node /usr/
local/bin/evilscan 192.+
    968 root      20   0  413544  35488  34188 S   0.0   1.9   0:02.32 /usr/libexec/sss
d/sssd_nss --uid +
    971 root      20   0  462996  34880  14700 S   0.0   1.9   0:00.65 /usr/libexec/plat
form-python -s /+
    997 root      20   0  612436  28888  14600 S   0.0   1.6   0:35.22 /usr/libexec/platfo
rm-python -Es +
    948 polkitd   20   0 1772752  23756  16596 S   0.0   1.3   0:00.30 /usr/lib/polkit-1/p
olkitd --no-de+
    980 root      20   0  753768  18484  15908 S   0.0   1.0   0:05.09 /usr/sbin/NetworkMan
ager --no-dae+
    813 root      20   0  118756  14588  13040 S   0.0   0.8   0:04.79 /usr/lib/systemd/sys
temd-journald
    966 root      20   0  402088  12008   9900 S   0.0   0.7   0:01.93 /usr/libexec/sssd/ss
sd_be --domai+
    950 root      20   0  395652  11736  10132 S   0.0   0.6   0:00.34 /usr/sbin/sssd -i 
--logger=files
      1 root      20   0  176848  10824   8116 S   0.0   0.6   0:04.50 /usr/lib/systemd/s
ystemd --switch+
   6620 root      20   0  152796  10216   8992 S   0.0   0.6   0:00.01 sshd: root [priv]
    840 root      20   0  115684   9876   7312 S   0.0   0.5   0:00.47 /usr/lib/systemd
/systemd-udevd
   6623 root      20   0   93708   9500   8112 S   0.0   0.5   0:00.04 /usr/lib/systemd/
systemd --user

Effizient und einfach, ein leistungsstarkes Tool zur Systemüberwachung im Linux-Batch-Modus
Die vom Befehl top im obigen Befehl verwendeten Optionen werden wie folgt erklärt:

  • -b: Skriptmodus ausführen
  • -c: Zeigen Sie den vollständigen Pfad des Befehls in der Spalte BEFEHL an
  • -n: Gibt die maximale Anzahl an Iterationen an, die top vor dem Ende produzieren soll.
  • -o: Definiert, nach welchem ​​Feld sortiert werden soll.

Verwenden Sie im Batch-Modus den oberen Befehl, um die Daten entsprechend der Nutzungsdauer des Prozesses anzuordnen. Es zeigt die gesamte CPU-Zeit an, die der Prozess seit seinem Start verbraucht hat. Verwenden Sie zum Anzeigen den folgenden Befehl:

[root@localhost ~]# top -bc -o TIME+ -n 1 | head -n 20
top - 22:31:20 up 6 days, 12:44,  2 users,  load average: 0.00, 0.04, 0.01
Tasks: 187 total,   1 running, 186 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   1792.0 total,    843.4 free,    320.1 used,    628.4 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   1290.0 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
    997 root      20   0  612436  28888  14600 S   0.0   1.6   0:35.24 /usr/libexec
/platform-python -Es +
    946 root      20   0  160120   6460   5656 S   0.0   0.4   0:06.08 /sbin/rngd -f
    980 root      20   0  753768  18484  15908 S   0.0   1.0   0:05.10 /usr/sbin/Netw
orkManager --no-dae+
    813 root      20   0  118756  14588  13040 S   0.0   0.8   0:04.79 /usr/lib/systemd
/systemd-journald
      1 root      20   0  176848  10824   8116 S   0.0   0.6   0:04.50 /usr/lib/systemd
/systemd --switch+
    727 root      20   0       0      0      0 S   0.0   0.0   0:02.77 [xfsaild/dm-0]
     11 root      20   0       0      0      0 I   0.0   0.0   0:02.65 [rcu_sched]
    968 root      20   0  413544  35488  34188 S   0.0   1.9   0:02.32 /usr/libexec/sss
d/sssd_nss --uid +
    966 root      20   0  402088  12008   9900 S   0.0   0.7   0:01.93 /usr/libexec/ss
sd/sssd_be --domai+
    954 chrony    20   0   29444   2652   2400 S   0.0   0.1   0:01.16 /usr/sbin/chronyd
    945 dbus      20   0   74704   5896   5096 S   0.0   0.3   0:01.15 /usr/bin/dbus-daemon --system --a+
     24 root      39  19       0      0      0 S   0.0   0.0   0:01.13 [khugepaged]
     10 root      20   0       0      0      0 S   0.0   0.0   0:00.79 [ksoftirqd/0]

Effizient und einfach, ein leistungsstarkes Tool zur Systemüberwachung im Linux-Batch-Modus
Sie können die Ausgabeergebnisse von top wie folgt in einer Datei speichern:

[root@localhost ~]# top -bc | head -30 > top-information.txt
Effizient und einfach, ein leistungsstarkes Tool zur Systemüberwachung im Linux-Batch-Modus

Zusammenfassung

Der Befehl

top wird verwendet, um Echtzeit-Verarbeitungsaktivitäten in einem Linux-System sowie vom Kernel verwaltete Aufgaben anzuzeigen. Es zeigt die CPU- und Speicherauslastung sowie andere Informationen wie laufende Programme an. Sie können die Optionen des Skriptmodus nutzen, um die Ausgabe von Top-Befehlen an andere Anwendungen oder Dateien zu übertragen.

Durch die Einleitung dieses Artikels können wir sehen, dass die Verwendung des top-Befehls im Batch-Modus in Linux-Systemen die Systemressourcen effizienter überwachen und die Belastung durch interaktive Schnittstellen vermeiden kann. Wir können in den Batch-Modus wechseln, indem wir den Parameter -b des Befehls top festlegen. Wir können auch andere Parameter verwenden, um die Ausgabeergebnisse anzupassen, das Aktualisierungsintervall festzulegen usw. Wir glauben, dass wir auf diese Weise das System einfacher und effizienter überwachen und anpassen und die Betriebseffizienz des Systems verbessern können.

Das obige ist der detaillierte Inhalt vonEffizient und einfach, ein leistungsstarkes Tool zur Systemüberwachung im Linux-Batch-Modus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:lxlinux.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen