Häufig verwendete Anweisungen zur Systemüberwachung für den täglichen Betrieb und die Wartung von Linux-Systemservern


Computerarbeitsdiagramm

Bei der routinemäßigen Wartung von Diensten wird im Allgemeinen überprüft, ob die CPU-, Speicher-, Festplatten- und Netzwerkindikatoren normal sind.

1. oberster Befehl

Der Befehl top wird häufig zur Überwachung des Status von Linux-Systemen verwendet. Dabei handelt es sich um ein häufig verwendetes Leistungsanalysetool, das die Ressourcennutzung jedes Prozesses im System in Echtzeit anzeigt.

1.1 Befehlssyntax

top [选项]

1.2 Befehlsoptionen

Optionen veranschaulichen
-B Im Verarbeitungsmodus arbeiten
-C Zeigt die vollständige Befehlszeile statt nur den Befehlsnamen an
-D Bildschirmaktualisierungsintervall
-ich Leerlauf-Prozessschalter
-S Vertraulicher Modus
-S Akkumulationsmodus
-In用户名或UID Geben Sie den Benutzernamen an
-Ppid Geben Sie den Prozess an. Sie können mehrere PIDs angeben
-Nnumber Stoppen Sie nach den Bildschirmaktualisierungszeiten
-H Sehen Sie sich die untergeordneten Threads unter dem Prozess an

1.3 Detaillierte Erläuterung der Befehle

Ergebnis der Befehlsausführung:

[root@centos ~]# top
## 系统统计信息
top - 14:47:31 up 9 days, 21:24,  1 user,  load average: 0.00, 0.01, 0.05
Tasks: 183 total,   1 running, 182 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
KiB Mem :  1881884 total,  1170352 free,   273080 used,   438452 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.  1446460 avail Mem 


## 系统进程信息
  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                  
 1197 root      20   0 1169468  31704  14136 S   0.1  1.7   7:49.70 dockerd-current                                          
  788 root      20   0  275072   4976   3656 S   0.0  0.3   4:46.40 vmtoolsd                                                 
 1340 root      20   0  476448  13136   5416 S   0.0  0.7   5:19.59 docker-containe                                          
    9 root      20   0       0      0      0 S   0.0  0.0   0:10.06 rcu_sched                                                
10004 root      20   0       0      0      0 S   0.0  0.0   0:02.56 kworker/1:2                                              
13306 redis     20   0  143060   5796   1444 S   0.0  0.3   0:00.30 redis-server                                             
    1 root      20   0  193740   6828   4228 S   0.0  0.4   0:06.43 systemd                                                  
    2 root      20   0       0      0      0 S   0.0  0.0   0:00.08 kthreadd                                                 
    4 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H                                             
    6 root      20   0       0      0      0 S   0.0  0.0   0:00.07 ksoftirqd/0                                              
    7 root      rt   0       0      0      0 S   0.0  0.0   0:00.02 migration/0                                              
    8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh                                                   
   10 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 lru-add-drain

Systemstatistik:

## 任务队列信息
top - 14:47:31 up 9 days, 21:24,  1 user,  load average: 0.00, 0.01, 0.05

14:47:31 # 当前系统时间

up 9 days, 21:24 # 系统运行时间

1 user # 当前登录用户数

load average: 0.00, 0.01, 0.05 # 系统平均负载数,表示最近1分钟、最近5分钟、最近15分钟的系统平均负载数
## 进程统计信息
Tasks: 183 total,   1 running, 182 sleeping,   0 stopped,   0 zombie

183 total # 系统当前总进程数

1 running # 正在运行进程数

182 sleeping # 睡眠进程数

0 stopped # 停止进程数

0 zombie # 僵尸进程数
## CPU统计信息
%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

0.0 us # 用户空间CPU占用率

0.0 sy # 内核空间CPU占用率

0.0 ni # 用户进程空间改变过优先级的进程CPU的占用率

100.0 id # 空闲CPU占有率

0.0 wa # 等待输入输出的CPU时间百分比

0.0 hi # 硬件中断请求

0.0 si # 软件中断请求

0.0 st # 分配给运行在其它虚拟机上的任务的实际CPU时间
## 内存状态,单位是KB
KiB Mem :  1881884 total,  1170352 free,   273080 used,   438452 buff/cache

1881884 total # 物理内存总量

1170352 free # 空闲内存

273080 used # 已使用内存

438452 buff/cache # 内核缓存使用
## swap交换分区信息
KiB Swap:  2097148 total,  2097148 free,        0 used.  1446460 avail Mem 

2097148 total # 交换分区总量

2097148 free # 空闲交换分区

0 used # 已使用交换分区

1446460 avail Mem # 缓冲交换区

Informationen zum Systemprozess:

## 系统进程信息
  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                  
 1197 root      20   0 1169468  31704  14136 S   0.1  1.7   7:49.70 dockerd-current 
 
PID # 进程id

USER # 进程所有者的用户名

PR # 进程优先级

NI # nice值,负值表示高优先级,正值表示低优先级

VIRT # 进程使用的虚拟内存总量,VIRT=SWAP+RES,单位KB

RES	# 进程使用的、未被换出的物理内存大小,RES=CODE+DATA,单位KB

SHR # 共享内存大小,单位KB

S # 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程

%CPU # 上次更新到现在的CPU时间占用百分比

%MEM # 进程使用的物理内存百分比

TIME+ # 进程使用的CPU时间总计,单位1/100秒

COMMAND # 进程名称[命令名/命令行]

1. Drücken Sie1, um die Anzeige detaillierter CPU-Statistiken ein- oder auszuschalten

2. Drücken Sie die BuchstabentasteB, um den Anzeigeeffekt des aktuellen Prozesses ein- oder auszuschalten

3, top -H -p pid, überprüfen Sie den untergeordneten Thread unter der Prozess-PID

2. freier Befehl

Überprüfen Sie den physischen freien, genutzten und Swap-Speicherstatus

2.1 Befehlssyntax

free [选项]

2.2 Befehlsoptionen

Optionen veranschaulichen
-B Speichernutzung in Bytes anzeigen
-k Speichernutzung in KB anzeigen
-M Speichernutzung in MB anzeigen
Spalte „Pufferabgleich“ nicht anzeigen
-Snumber Überwachen Sie kontinuierlich die Speichernutzung
-T Speichersummenspalte anzeigen

2.3 Detaillierte Erläuterung der Befehle

Ergebnis der Befehlsausführung:

[root@centos ~]# free
              total        used        free      shared  buff/cache   available
Mem:        1881884      272696     1170692        9084      438496     1446824
Swap:       2097148           0     2097148

Mem # 表示物理内存统计
Swap # 表示物理内存统计(total=used+free)
used # 表示系统分配给缓存使用的数量(这里的缓存包括buffer和cache)
free # 表示空闲物理内存总数
shared # 表示共享内存
buff/cache #
available #

3. df-Befehl

Überprüfen Sie die Speicherplatznutzung von Festplattenpartitionen. Die Standardeinheit ist KB.

3.1 Befehlssyntax

df [选项]

3.2 Befehlsoptionen

Optionen veranschaulichen
-A Alle Dateisysteme anzeigen
-H Festplattennutzung anzeigen
-ich Überprüfen Sie die Inode-Nutzung

3.3 Detaillierte Erläuterung der Befehle

Ergebnis der Befehlsausführung:

[root@hecs-141089 bin]# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        893M     0  893M   0% /dev
tmpfs           909M     0  909M   0% /dev/shm
tmpfs           909M  8.5M  900M   1% /run
tmpfs           909M     0  909M   0% /sys/fs/cgroup
/dev/vda1        40G  2.7G   35G   8% /
tmpfs           182M     0  182M   0% /run/user/0

4. ps-Befehl

Prozessstatistiken anzeigen

4.1 Befehlssyntax

ps [选项]

4.2 Befehlsoptionen

Optionen veranschaulichen
-A Zeigt Informationen zu allen Prozessen unter dem aktuellen Terminal an, einschließlich der Prozesse anderer Benutzer
-In Geben Sie Prozessinformationen in einem benutzerorientierten Format aus
-X Zeigen Sie die Prozesse des aktuellen Benutzers in allen Terminals an
-Es ist Informationen zu allen Prozessen im System anzeigen
-l Prozessinformationen im Langformat anzeigen
-F Prozessinformationen im vollständigen Format anzeigen
-T Sehen Sie sich die untergeordneten Threads unter dem Prozess an

4.3 Detaillierte Erläuterung der Befehle

Ergebnis der Befehlsausführung:

[root@centos ~]# ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root         2     0  0 Oct31 ?        00:00:00 [kthreadd]
root         4     2  0 Oct31 ?        00:00:00 [kworker/0:0H]
root         6     2  0 Oct31 ?        00:00:00 [ksoftirqd/0]
[root@centos ~]# ps -aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    Oct31   0:00 [kthreadd]
root         4  0.0  0.0      0     0 ?        S<   Oct31   0:00 [kworker/0:0H]
root         6  0.0  0.0      0     0 ?        S    Oct31   0:00 [ksoftirqd/0]

5. Crontab-Befehl

Führen Sie ein Shell-Skript oder eine Reihe von Linux-Befehlen zu einem bestimmten Zeitpunkt aus

# 添加定时任务
crontab -e

# 每天早上3点运行/root/bin/backup.sh脚本
0 5 * * * /root/bin/backup.sh
# 分 时 日 月 周 命令


# 显示crontab文件
crontab -l

# 删除crontab文件
crontab -r

# 删除crontab文件前提醒用户
crontab -ir

6. Befehl „Port anzeigen“.

6.1 netstat-Befehl

Überprüfen Sie, welche Ports auf diesem Computer geöffnet sind. Alle Ports sind auf diesem Computer geöffnet

# 安装
yum -y install net-tools

# 列出所有端口
netstat -a

# 列出所有tcp端口
netstat -at

# 列出所有udp端口
netstat -au

6.2 lsof-Befehl

Überprüfen Sie den Status der belegten Ports

# 安装
yum -y install lsof

# 查看指定端口占用情况
lsof -i:22

# 查看指定进程打开了哪些文件、加载库、依赖库
lsof -p 13306

# 查看指定目录被那个进程打开
lsof /root

6.3 SS-Befehl

# 输出所有建立的连接(不包含监听的端口),包括 tcp, udp, and unix
ss

# 查看主机监听的tcp端口信息
ss -tnl

# 查看监听的tcp连接
ss -tna

6.4 NC-Befehl

Scannen Sie, welche Ports für eine bestimmte IP geöffnet sind

# 安装
yum -y install nc

# 查看ip指定端口是否开放
nc -z 192.168.123.75 22

# 超时等待查看ip指定端口是否开发
nc -w 3 -z 192.168.123.75 22

6.5 nmap-Befehl

Scannen Sie die angegebene IP-Portnummer

nmap 192.168.123.75

7. Überprüfen Sie die Systemressourcennutzung

7.1 Blickbefehl

Kann CPU, Lastdurchschnitt, Speicher, Netzwerkverkehr, Festplatten-E/A, andere Prozessoren sowie Datei- und Systemauslastung überwachen

# 安装
yum install -y glances

# 使用
glances

# 退出
q

Fügen Sie hier eine Bildbeschreibung ein

7.2 Nethogs-Befehl

Überprüfen Sie dynamisch, wie viel Datenverkehr ein bestimmter Prozess verbraucht, und erfahren Sie, welche Prozesse mit der Außenwelt kommunizieren.

# 安装
yum install -y nethogs

# 使用
nethogs

# 退出

Fügen Sie hier eine Bildbeschreibung ein

8. Netzwerkverkehr anzeigen

8.1 tcpdump-Befehl

Erfassen Sie Pakete, um den Netzwerkverkehr anzuzeigen

# 安装
yum -y install tcpdump

# 监听ens192接口上的所有流量并输出到控制台
tcpdump -i ens192

# 监听ens192接口与192.168.123.245通信的所有流量并输出到控制台
tcpdump -i ens192 host 192.168.123.245

# 监听ens192接口上所有传输层协议为TCP的流量并输出到控制台
tcpdump -i ens192 tcp

# 监听ens192接口上所有端口号为80的流量并输出到控制台
tcpdump -i ens192 port 80

# 监听ens192接口上所有来自192.168.123.245的流量并输出到文件packets.pcap
tcpdump -i ens192 src 192.168.123.245 -w packets.pcap

# 监听ens192接口上所有去往192.168.123.245的流量并输出到文件packets.pcap
tcpdump -i ens192 dst 192.168.123.245 -w packets.pcap

8.2 ifconfig-Befehl

Wird zum Konfigurieren und Anzeigen des spezifischen Status von Netzwerkschnittstellen verwendet

# 安装
yum -y install net-tools

# 显示所有已激活网卡信息
ifconfig

# 单独显示ens192网卡信息
ifconfig ens192

# 启动网卡ens192
ifconfig ens192 up

# 关闭网卡ens192
ifconfig ens192 down

# 设置能通过的最大数据包大小为 1500 bytes
ifconfig ens192 mtu 1500

# 开启网卡ens192的arp协议
ifconfig ens192 arp

#关闭网卡ens192的arp协议
ifconfig ens192 arp   

Fügen Sie hier eine Bildbeschreibung ein

8.3 iftop-Befehl

Es handelt sich um ein Echtzeit-Verkehrsüberwachungstool, mit dem die Verkehrsbedingungen im Netzwerk angezeigt werden können, einschließlich Echtzeitrate, Gesamtverkehr, durchschnittlicher Verkehr usw. Es werden keine historischen Daten erfasst, es gibt keine Berichte und es kann nur der Gesamtverkehr vom Beginn der Sendung bis heute angezeigt werden.

# 安装
yum install -y iftop

# 使用
iftop

# 退出
q

Fügen Sie hier eine Bildbeschreibung ein

Supongo que te gusta

Origin blog.csdn.net/rulaixiong/article/details/134338218
Recomendado
Clasificación