一篇讲明确监控运维命令

监控类命令

watch命令

watch命令是一个用于在命令行界面下口头指定命令或脚本,并周期性地显示其输入结果的适用程序。它可以协助你监督命令的实时输入,以便继续跟踪命令的口头状况。

watch命令的经常出现语法如下:

watch [选项] 命令

其支持的选项如下:

经过经常使用watch命令,你可以繁难地监督系统形态、实时检查日志文件的变动、观察进程的运转状况等。它在调试和监控系统时十分有用,以及在须要继续追踪某些命令输入的状况下经常使用。

前面跟双引号

假设衔接的命令比拟长,可以经常使用双引号括起来的方式 例如:

watch -n 5 -d "ps -aux | grep java"

ps命令

ps命令是一个用于检查正在运转的进程消息的适用程序。它提供了多种用法和选项,以下是一些经常出现的用法:

ps -ef --forest
ps -f --forest -p <PID>
ps -ef --forest --forest
ps -ef | grep <进程名>
ps -u <用户名>

pstree命令

pstree命令是一个用于以树状结构显示进程档次相关的适用程序。它以可读性较好的方式显示进程之间的父子相关,协助用户更好地理解和剖析系统中的进程结构。

pstree命令通常在Linux和Unix系统中预装,无需额外装置。你可以间接在终端中经常使用该命令。上方是经常使用pstree命令的基本语法:

pstree [选项]

普通状况下,你可以间接运转pstree命令来显示用户的一切进程及其档次相关。它会以树状结构的方式输入进程档次,并标示进程之间的父子相关。

pstree命令还提供一些选项来定制其行为,例如:

你可以组合经常使用这些选项来满足你的需求,例如:pstree -p -h会显示进程的PID,并以高亮方式突出显示进程及其后人进程。

须要留意的是,pstree命令或许须要以超级用户(root)权限运转,以显示一切进程的完整档次结构。你可以经常使用sudo pstree命令来失掉完整的进程档次消息。

free 命令

free命令用于显示系统的内存经常使用状况和替换空间(swap)状况。上方是free命令的详细用法:

free [选项]

罕用的选项包括:

以下是一些罕用的示例:

free命令的输入结果包括以下字段:

这些字段形容了系统内存的不同方面和用途。以下是这些字段之间的相关:

总体上,used包括了shared、buffers、cached和实践被进程经常使用的内存。而free则示意未被系统和进程经常使用的内存,包括未被缓冲缓和存的闲暇内存。

须要留意的是,这些值是基于时辰的快照,内存经常使用状况是灵活变动的,因此在不同时期查问时,这些值或许会有所不同。

df命令、du命令和fdisk命令

这三个命令都是检查硬盘经常使用状况的命令

df命令

df命令用于显示文件系统的磁盘空间经常使用状况。它提供了多种选项,用于定制输入的格局和内容。以下是一些罕用的选项:

可以经常使用这些选项的组合来满足特定的需求。例如:

df -h -x <文件系统类型>
df -i --total

请留意,<文件系统类型>是指文件系统的标识,如ext4、ntfs、vfat等。你可以经过df --help命令失掉完整的选项列表和用法说明。

du命令

du命令用于显示目录或文件的磁盘空间经常使用状况。它可以协助你确定文件和目录所占用的磁盘空间大小。以下是一些罕用的du命令选项:

你可以经常使用这些选项的组合来满足不同的需求。以下是一些示例:

du -h <目录或文件>
du -sh <目录>
du -a <目录>
du --max-depth=2 <目录>

请留意,<目录或文件>是指要检查磁盘空间经常使用状况的目录门路或文件门路。你可以经过du --help命令失掉完整的选项列表和用法说明。

fdisk命令

fdisk命令是一个用于检查和治理磁盘分区的命令行工具。它可以协助你检查磁盘的分区消息、创立新的分区、删除分区等。以下是一些罕用的fdisk命令选项:

fdisk /dev/sda

请留意,经常使用fdisk命令启动分区操作须要以超级用户(root)权限运转。此外,对磁盘启动分区操作是一个潜在的风险操作,请确保在启动分区操作之前备份关键的数据。

以下是一个繁难的分区操作示例:

fdisk /dev/sda

检查cpu状况

top命令

PID USERPRNIVIRTRESSHR S%CPU%MEMTIME+ COMMAND

1692815 root 20 0 17.7g 1.5g 20264 S 6.3 4.7 5:53.00 java

以上是top命令的一个结果,咱们来繁难解读一下:

`:义务占用的内存百分比。

以上是对top命令结果的详细解释,它提供了关于系统义务、CPU、内存和进程的关键消息。top命令有许多选项可以用于定制输入和控制显示的内容。以下是一些罕用的top命令选项:

mpstat命令

上方是该命令的一次性结果

Linux 5.10.0-15-amd64 (debian-2) 06/07/2023x86_64(16 CPU) 03:01:22 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 03:01:22 PM all 0.22 0.00 0.19 0.00 0.00 0.00 0.00 0.00 0.00 99.59

繁难解读一下

上方是每一列的含意:

关于示例中的数据行:

这些统计消息显示了在报告生成的时期点上,系统中的 CPU 经常使用状况。

上方是一些罕用的mpstat命令选项:

检查网络状况

netstat命令

netstat命令有多个选项,可以依据须要来显示网络衔接、路由表和网络统计消息。以下是一些罕用的netstat命令选项:

上方是一个结果

Proto RefCnt Flags Type State I-Node PID/Program name Path unix 2 [ ] DGRAM 579005 26313/systemd /run/user/0/systemd/notify unix 2 [ ACC ] STREAM LISTENING 13693 1228/zabbix_server /run/zabbix/zabbix_server_rtc.sock

逐行启动剖析:

这些消息提供了关于网络衔接的详细消息,包括衔接类型、形态、进程关联和相关门路。

ss命令

ss命令是用于检查套接字(socket)消息的工具,具备比netstat更极速和更弱小的性能。以下是一些罕用的ss命令选项:

看看例子

State Recv-Q Send-Q Local Address:Port Peer Address:Port ProcessESTAB 0 0 20.20.40.232:ssh 10.110.0.9:23033CLOSE-WAIT 32 0 xxx.xxx.xxx.xxx:58836 xxx.xxx.xxx.xxx:https

逐行剖析为: 依据提供的ss命令结果,逐行启动剖析:

这些消息提供了关于套接字的详细消息,包括套接字形态、数据队列大小和本地/远程地址与端口。

traceroute命令

traceroute命令用于跟踪数据包从本地主机到目的主机的门路。它经过发送一系列的数据包,逐跳地测量和显示每个跳点的提前和门路消息。以下是一些罕用的traceroute命令选项:

traceroute命令的结果通常会显示每个跳点的消息,包括跳点的序号、IP地址、主机名(假设可解析)、提前和跃点数(TTL)。以下是traceroute命令或许显示的一些经常出现结果:

须要留意的是,由于网络环境的变动和路由战略的差异,不同跟踪的结果或许会有所不同。

当traceroute命令的结果中,IP地址列显示为星号(*)时,示意不可取得该跳点的IP地址消息。这通常是由于网络设备或防火墙性能的要素,造成不可失掉到该跳点的准确IP地址。这种状况下,traceroute不可确定经过的网络节点详细的IP地址。或许的要素包括:

在这种状况下,traceroute依然会显示其余可用消息,如跳点的序号、提前时期和跃点数(TTL),但不可提供详细的IP地址。

telnet命令

telnet命令是一个用于远程登录或测试网络衔接的工具。以下是telnet命令的一些经常出现选项:

和traceroute相似

ifconfig命令

ifconfig命令用于检查和性能网络接口的消息,包括IP地址、网络掩码、MAC地址等。以下是一些经常出现的ifconfig命令选项:

这些只是ifconfig命令的一些罕用选项,实践上还有更多选项和性能可用。为了失掉详细的选项列表和用法说明,您可以在命令行中输入man ifconfig以检查ifconfig命令的手册页。请留意,ifconfig在一些新的Linux发行版中已被ip命令所取代,因此倡导尽量经常使用ip命令启动网络接口的性能和治理。

来看一个例子

eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 20.20.40.232 netmask 255.255.248.0 broadcast 20.20.47.255 inet6 fe80::2eea:7fff:fe93:ef5e prefixlen 64 scopeid 0x20 ether 2c:ea:7f:93:ef:5e txqueuelen 1000 (Ethernet) RX packets 39320669 bytes 46025532065 (42.8 GiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 37370 bytes 5499509583 (5.1 GiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 17lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10loop txqueuelen 1000 (Local Loopback) RX packets 5399237 bytes 819904930 (781.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 5399237 bytes 819904930 (781.9 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

依据提供的输入,咱们可以剖析两个网络接口:eno1和lo。

综上所述,eno1是一个优惠的以太网接口,具备IPv4和IPv6地址,而lo是一个本地环回接口,用于在本地启动回环测试和通讯。

杀死进程的kill命令

kill命令可以发送不同的信号给进程,以便控制其行为。以下是一些经常出现的kill命令信号及其对应的编号:

除了上述经常出现的信号外,还有其余信号可供经常使用,详细的信号列表可以经过kill -l命令检查。该命令会列出系统支持的一切信号及其对应的编号。

例如,可以经过以下命令检查信号列表:

杀死某个称号的进程

ps -aux | grep 'python3 main.py' | awk '{print $2}' | xargs kill -9

kill、pkill和killall命令

kill、pkill和killall命令都用于终止正在运转的进程,但它们在经常使用方式和作用范围上有所不同。

罕用选项:

须要留意的是,经常使用这些命令时要小心确认要终止的进程,免得异常封锁关键的进程。在经常使用强迫终止信号(如9号信号)时,进程或许不可启动反常的清算操作,因此倡导在必要时经常使用,并确保备份数据。

您可能还会对下面的文章感兴趣: