系统信息及进程管理命令

系统信息及进程管理

一、系统信息查看

常用命令:uname、hostnam、hostnamectl、uptime、df、du、free、lscpu

1、uname

(1)、命令简介

uname 是一个在 Unix 和类 Unix 系统(如 Linux、macOS)中常用的命令行工具,用于显示系统信息。它的名称来源于 “Unix name”。

(2)、命令选项清单

#命令语法:uname [选项]
#选项									说明
-a 或 --all 				显示所有信息(相当于同时使用 -snrvmpio)。
-s 或 --kernel-name			显示内核名称(如 "Linux"、"Darwin")。
-n 或 --nodename			显示网络节点的主机名。
-r 或 --kernel-release		显示内核版本(如 "5.4.0-80-generic")。
-v 或 --kernel-version		显示内核的构建信息或版本详情。
-m 或 --machine				显示硬件架构(如 "x86_64"、"arm64")。
-p 或 --processor			显示处理器类型(可能与 -m 相同,部分系统不支持)。
-i 或 --hardware-platform	显示硬件平台(部分系统不支持)。
-o 或 --operating-system	显示操作系统名称(如 "GNU/Linux")。

(3)、常用命令示例

root@master:~# uname -a #显示所有信息
Linux master 5.15.0-143-generic #153-Ubuntu SMP Fri Jun 13 19:10:45 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
root@master:~# uname -s	#显示内核名称
Linux
root@master:~# uname -m #显示硬件架构
x86_64
root@master:~# uname -r #显示内核版本
5.15.0-143-generic

2、hostname

(1)、命令简介

hostname 是一个用于 查看或临时修改系统主机名 的命令,适用于大多数 Unix/Linux 系统。它比 hostnamectl 更基础,但功能较为有限(特别是在 systemd 系统中,hostnamectl 是更现代的替代方案)。

(2)、命令选项清单

#命令语法:hostname [选项] [新主机名]  # 查看或设置主机名
#选项			说明					常用示例								输出示例
无选项		显示当前主机名			hostname							ubuntu
-a			显示所有主机别名			hostname -a							(通常为空)
-A			显示所有FQDN(长主机名)	hostname -A						ubuntu.example.com
-b			若主机名为空,设为默认		sudo hostname -b				(无输出,设置默认名)
-d			显示DNS域名				hostname -d						example.com
-f			显示完整FQDN				hostname -f						ubuntu.example.com
-F <文件>	从文件读取主机名			sudo hostname -F /etc/newhost	(无输出,设置主机名)
-i			显示主IP(依赖hosts)		hostname -i						127.0.0.1(可能不准确)
-I			显示所有IP地址			hostname -I						192.168.1.100 10.0.0.5
-s			显示短主机名				hostname -s						ubuntu
-y			显示NIS域名				hostname -y						nisdomain
-V/-h		显示版本/帮助				hostname -V						hostname 3.23

(3)、常用命令示例

root@master:~# hostname	#显示当前主机名
master
root@master:~# hostname -a #显示所有主机别名,未设置输出为空root@master:~# hostname -A	#显示所有FQDN(长主机名)
192.168.0.117 172.17.0.1 
root@master:~# hostname -b 	#若主机名为空,设为默认
master
root@master:~# hostname -d	#显示DNS域名,本机未设置
root@master:~# hostname -f	#显示完整FQDN
master
root@master:~# hostname -i	#显示主IP(依赖hosts)
192.168.0.117 172.17.0.1 fe80::20c:29ff:feb6:e83e
root@master:~# hostname -I	#显示所有IP地址
192.168.0.117 172.17.0.1 
root@master:~# hostname -s	#显示短主机名
master
root@master:~# hostname -y	#显示NIS域名,本机未设置
hostname: Local domain name not set
root@master:~# hostname -V	#显示版本/帮助
hostname 3.23
root@master:~# echo "Test" > hostname_test
root@master:~# hostname -F ./hostname_test #读取文件内容,临时设置新hostname
root@master:~# hostname
Test

3、hostnamectl

(1)、命令简介

hostnamectlsystemd 提供的命令行工具,用于 管理系统主机名和相关系统信息(如操作系统、内核版本、硬件架构等)。它是现代 Linux 发行版(如 Ubuntu、CentOS、Fedora 等)中推荐的主机名管理工具,相比传统的 hostname 命令功能更强大,且修改永久生效。

(2)、命令选项清单

#命令语法:hostnamectl [选项] [子命令] [参数]
#选项				说明
--static		显示静态主机名(来自 /etc/hostname)		hostnamectl --static
--transient		显示临时主机名(运行时)					hostnamectl --transient
--pretty		显示用户友好的主机名(可自定义)				hostnamectl --pretty
--json=pretty	以 JSON 格式输出(易读)					hostnamectl --json=pretty
-H/--host		远程操作其他主机(需 SSH 权限)				hostnamectl -H user@remote
--help			显示帮助信息								hostnamectl --help
--version		显示版本信息								hostnamectl --version
#子命令
status 				- 显示当前主机信息
hostname [NAME] 	- 查看/设置系统主机名
icon-name [NAME] 	- 查看/设置图标名称
chassis [NAME] 		- 查看/设置设备类型,desktop(台式机)、laptop(笔记本)、server(服务器)、vm(虚拟机)等
deployment [NAME] 	- 查看/设置部署环境
location [NAME] 	- 查看/设置物理位置

(3)、常用命令示例

root@master:~# hostnamectl status #或直接hostnamectl ,显示当前主机信息Static hostname: master
Transient hostname: TestIcon name: computer-vmChassis: vmMachine ID: f5d70adfffc44e54b0fa69c294f4cac0Boot ID: ef1c4ed4701745048a077dadda5a0afeVirtualization: vmwareOperating System: Ubuntu 22.04.5 LTS              Kernel: Linux 5.15.0-143-genericArchitecture: x86-64Hardware Vendor: VMware, Inc.Hardware Model: VMware20,1
root@Test:~# hostname  #原主机名
Test
root@Test:~# hostnamectl set-hostname "master" #设置新主机名
root@Test:~# hostname 	#显示更改后主机名
master
root@Test:~# hostnamectl set-chassis server #设置主机类型为server-服务器
root@Test:~# hostnamectl chassis
server	#设置成功
# 通过 SSH 修改远程主机
root@Test:~# hostnamectl -H root@192.168.1.100 set-hostname "node01"
# 检查当前主机名是否被正确解析
root@Test:~# hostnamectl --static
# 若服务(如 Nginx)依赖 FQDN,确保 /etc/hosts 包含:
# 192.168.1.100 web01.example.com web01
root@Test:~# hostnamectl location "1-1"      #设置机架号   
root@Test:~# hostnamectl location
1-1

4、uptime

(1)、命令简介

uptime 是一个简单但实用的 Linux/Unix 命令,用于 显示系统的运行时间、当前登录用户数以及系统负载。它可以帮助管理员快速了解系统的运行状态。

(2)、命令选项清单

#命令语法:uptime [选项]
#选项		说明
-p		仅显示系统运行时间(简洁模式)
-s		显示系统启动时间(since)
-h		以人类可读格式输出(如 "3 days")
-V		显示版本信息

(3)、常用命令示例

root@Test:~# uptime #输出为系统时间 运行时间 当前登录用户数量 系统1分钟、5分钟、15分钟的平均负载。
14:25:29 up 1 day,  1:14,  3 users,  load average: 0.00, 0.01, 0.00
#14:25:29 系统时间
#up 1 day,  1:14 运行时间
#3 users当前登录用户数量
#load average: 0.00, 0.01, 0.00 系统1分钟、5分钟、15分钟的平均负载
root@Test:~# uptime -p #查看系统运行时间
up 1 day, 1 hour, 16 minutes
root@Test:~# uptime -s #查看系统启动时间
2025-07-21 13:11:20

5、df

(1)、命令简介

df(Disk Filesystem)用于 查看磁盘空间使用情况,显示文件系统的总容量、已用空间、可用空间及挂载点信息。是 Linux/Unix 系统中最常用的磁盘管理命令之一。

(2)、命令选项清单

#命令语法:df [选项] [文件或目录]
#选项		说明
-h			以易读格式显示(如 KB、MB、GB)
-T			显示文件系统类型(如 ext4、xfs)
-i			显示 inode 使用情况(而非磁盘空间)
-a			显示所有文件系统(包括伪文件系统如 proc)
-x <类型>	排除指定类型的文件系统
--total		在最后一行显示总计信息

(3)、常用命令示例

root@Test:~# df #查看磁盘空间
Filesystem                        1K-blocks    Used Available Use% Mounted on
tmpfs                                201020    1184    199836   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv  11218472 8192824   2433984  78% /
tmpfs                               1005096       0   1005096   0% /dev/shm
tmpfs                                  5120       0      5120   0% /run/lock
/dev/sda2                           1992552  258544   1612768  14% /boot
/dev/sda1                           1098632    6228   1092404   1% /boot/efi
tmpfs                                201016       4    201012   1% /run/user/1000
root@Test:~# df -h #易读格式输出
Filesystem                         Size  Used Avail Use% Mounted on
tmpfs                              197M  1.2M  196M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv   11G  7.9G  2.4G  78% /
tmpfs                              982M     0  982M   0% /dev/shm
tmpfs                              5.0M     0  5.0M   0% /run/lock
/dev/sda2                          2.0G  253M  1.6G  14% /boot
/dev/sda1                          1.1G  6.1M  1.1G   1% /boot/efi
tmpfs                              197M  4.0K  197M   1% /run/user/1000
root@Test:~# df -Th #显示文件系统类型
Filesystem                        Type   Size  Used Avail Use% Mounted on
tmpfs                             tmpfs  197M  1.2M  196M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv ext4    11G  7.9G  2.4G  78% /
tmpfs                             tmpfs  982M     0  982M   0% /dev/shm
tmpfs                             tmpfs  5.0M     0  5.0M   0% /run/lock
/dev/sda2                         ext4   2.0G  253M  1.6G  14% /boot
/dev/sda1                         vfat   1.1G  6.1M  1.1G   1% /boot/efi
tmpfs                             tmpfs  197M  4.0K  197M   1% /run/user/1000
root@Test:~# df -i #查看inode使用情况,磁盘不满,但是inode使用率100%也会导致磁盘无法写入
Filesystem                        Inodes  IUsed  IFree IUse% Mounted on
tmpfs                             251274    800 250474    1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 719488 139448 580040   20% /
tmpfs                             251274      1 251273    1% /dev/shm
tmpfs                             251274      3 251271    1% /run/lock
/dev/sda2                         131072    310 130762    1% /boot
/dev/sda1                              0      0      0     - /boot/efi
tmpfs                              50254     25  50229    1% /run/user/1000
root@Test:~# df -h /home #查看指定目录大小
Filesystem                         Size  Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv   11G  7.9G  2.4G  78% /

6、du

(1)、命令简介

du(Disk Usage)用于 统计文件和目录的磁盘使用情况,是排查存储空间问题的核心工具。与 df 不同,du 从文件层级计算实际占用空间,而非文件系统级别。

(2)、命令选项清单

#命令语法:du [选项] [文件/目录]
#选项						说明
-h						以易读格式显示(KB/MB/GB)
-s						仅显示总用量(不递归子目录)
-a						显示所有文件(包括普通文件)
--max-depth=N			限制递归深度(如 --max-depth=1)
-c						最后显示总计
--exclude="PATTERN"		排除匹配的文件/目录
--time					显示文件修改时间

(3)、常用命令示例

root@Test:/opt# du -h #查看当前目录占用空间
4.0K    ./containerd/bin
4.0K    ./containerd/lib
12K     ./containerd
692M 
root@Test:/opt# du -sh /opt #仅显示目录总大小(不显示子目录)
692M    /opt
root@Test:/opt# du -h --max-depth=1 /opt/ #显示目录及其子目录大小(限制深度为1)
12K     /opt/containerd
692M    /opt/
root@Test:/opt# du -ah /opt	#显示所有文件(包括普通文件)
4.0K    /opt/containerd/bin
4.0K    /opt/containerd/lib
12K     /opt/containerd
692M    /opt/vulnerables.tar
692M    /opt
root@Test:/opt# du -h --exclude="*.tar" /opt #排除特定文件(tar)类型
4.0K    /opt/containerd/bin
4.0K    /opt/containerd/lib
12K     /opt/containerd
16K     /opt

7、free

(1)、命令简介

free 用于 查看系统内存(RAM)和交换空间(Swap)的使用情况,是 Linux 系统监控的必备工具。它能直观显示内存总量、已用量、空闲量及缓存/缓冲区的占用情况。

(2)、命令选项清单

#命令语法:free [选项]
#选项			说明
-h			以人类可读格式显示(KB/MB/GB)
-s <秒>		每隔 N 秒自动刷新(如 -s 2)
-c <次数>	与 -s 联用,设置刷新次数
-t			显示 物理内存 + Swap 的总和
-w			分开显示缓存(cache)和缓冲区(buffers)
--help		显示帮助信息

(3)、常用命令示例

root@Test:/opt# free -h #查看内存信息total        used        free      shared  buff/cache   available
Mem:           1.9Gi       278Mi        68Mi       1.0Mi       1.6Gi       1.5Gi
Swap:          2.0Gi       0.0Ki       2.0Gi
#total:总内存量。
#used:已用内存(包括缓存和缓冲区)。
#free:完全未被使用的内存。
#shared:多个进程共享的内存(如 tmpfs)。
#buff/cache:内核缓存(buffers)和页面缓存(cache)占用的内存。
#buffers:块设备(如磁盘)的临时缓存。
#cache:文件系统的页面缓存(加速文件读写)。
#available:真正可用的内存(含缓存可回收部分,更准确)。
#Swap:交换空间的使用情况。
root@Test:/opt# free -h -s 2 -c 2 #每隔 2 秒刷新一次(共 2 次)total        used        free      shared  buff/cache   available
Mem:           1.9Gi       277Mi        68Mi       1.0Mi       1.6Gi       1.5Gi
Swap:          2.0Gi       0.0Ki       2.0Gitotal        used        free      shared  buff/cache   available
Mem:           1.9Gi       277Mi        68Mi       1.0Mi       1.6Gi       1.5Gi
Swap:          2.0Gi       0.0Ki       2.0Gi
root@Test:/opt# free -th #显示总和(物理内存 + Swap)total        used        free      shared  buff/cache   available
Mem:           1.9Gi       277Mi        68Mi       1.0Mi       1.6Gi       1.5Gi
Swap:          2.0Gi       0.0Ki       2.0Gi
Total:         3.9Gi       278Mi       2.1Gi

8、lscpu

(1)、命令简介

lscpu 用于 显示 CPU 架构信息,包括处理器型号、核心数、线程数、缓存大小等。它是 Linux 系统下快速获取 CPU 硬件信息的标准工具。

(2)、命令选项清单

#命令语法:lscpu [选项]
#选项			说明
-a			显示所有信息(包括离线 CPU)
-b			仅显示在线 CPU 的信息
-c			只显示指定的列(如 -c=CPU,Core,Socket)
-J			以 JSON 格式输出
-p			以可解析的格式输出(用于脚本)
-s <目录>	从指定目录读取 CPU 信息(默认为 /sys)
-x			以十六进制显示 CPU 掩码

(3)、常用命令示例

root@Test:/opt# lscpu 
Architecture:             x86_64CPU op-mode(s):         32-bit, 64-bitAddress sizes:          45 bits physical, 48 bits virtualByte Order:             Little Endian
CPU(s):                   2On-line CPU(s) list:    0,1
Vendor ID:                GenuineIntelModel name:             Intel(R) Core(TM) i3-8100 CPU @ 3.60GHzCPU family:           6Model:                158Thread(s) per core:   1Core(s) per socket:   2Socket(s):            1Stepping:             11BogoMIPS:             7199.99Flags:                fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single pti ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 xsaves arat md_clear flush_l1d arch_capabilities
Virtualization features:  Hypervisor vendor:      VMwareVirtualization type:    full
Caches (sum of all):      L1d:                    64 KiB (2 instances)L1i:                    64 KiB (2 instances)L2:                     512 KiB (2 instances)L3:                     6 MiB (1 instance)
NUMA:                     NUMA node(s):           1NUMA node0 CPU(s):      0,1
Vulnerabilities:          Gather data sampling:   Unknown: Dependent on hypervisor statusItlb multihit:          KVM: Mitigation: VMX unsupportedL1tf:                   Mitigation; PTE InversionMds:                    Mitigation; Clear CPU buffers; SMT Host state unknownMeltdown:               Mitigation; PTIMmio stale data:        Mitigation; Clear CPU buffers; SMT Host state unknownReg file data sampling: Not affectedRetbleed:               Mitigation; IBRSSpec rstack overflow:   Not affectedSpec store bypass:      Mitigation; Speculative Store Bypass disabled via prctl and seccompSpectre v1:             Mitigation; usercopy/swapgs barriers and __user pointer sanitizationSpectre v2:             Mitigation; IBRS; IBPB conditional; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI SW loop, KVM SW loopSrbds:                  Unknown: Dependent on hypervisor statusTsx async abort:        Not affected
#字段						说明
#Architecture			CPU 架构(如 x86_64、aarch64)
#CPU(s)					逻辑 CPU 总数(物理核心 × 线程数)
#Thread(s) per core		每个核心的线程数(超线程技术)
#Core(s) per socket		每个物理 CPU 的核心数
#Socket(s)				物理 CPU 插槽数(服务器常见多插槽)
#Model name				CPU 型号
#CPU MHz				当前 CPU 频率
#L1d/L1i/L2/L3 cache	各级缓存大小
root@Test:/opt# lscpu | grep -E "Architecture|CPU\(s\)|Model name|MHz" #简化查看
Architecture:                         x86_64
CPU(s):                               2
On-line CPU(s) list:                  0,1
Model name:                           Intel(R) Core(TM) i3-8100 CPU @ 3.60GHz
NUMA node0 CPU(s):                    0,1
root@Test:/opt# lscpu | grep "Thread(s) per core" #查看是否启用超线程
Thread(s) per core:                   1
root@Test:/opt# lscpu -J #以json格式输出
root@Test:/opt# lscpu -p | grep -v "^#" | cut -d "," -f 2 | sort -u | wc -l #统计物理核心数
2
root@Test:/opt# cat /proc/cpuinfo | grep flags | head -1 #检查 CPU 支持的指令集
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single pti ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 xsaves arat md_clear flush_l1d arch_capabilities

二、进程管理

**常用命令:**ps、top、kill、pkill、bg/fg

1、ps

(1)、命令简介

ps 命令是 Linux/Unix 系统中用于查看当前进程状态的工具,全称为 Process Status。它可以显示正在运行的进程信息,如进程 ID(PID)、CPU 占用、内存使用、运行时间等。

(2)、命令选项清单

#命令语法:ps [选项]
#选项(可以组合使用)		说明(选项前有-是UNIX 风格,不加的是BSD 风格)
-e 或 -A				显示所有进程(包括其他用户的进程)
-f						完整格式输出(UID, PID, PPID, CMD 等)
-u <user>				显示指定用户的进程
-p <PID>				显示指定 PID 的进程
-C <cmd>				按命令名过滤(如 ps -C nginx)
--sort=<key>			按指定字段排序(如 --sort=-%cpu 按 CPU 降序)
-o <fields>				自定义输出字段(如 ps -eo pid,cmd,%mem)
-H						显示进程层次结构(缩进表示父子关系)
--forest				树状显示进程关系(类似 pstree)
a						显示所有终端关联的进程(包括其他用户的)
u						以用户友好格式显示(含 CPU、内存等)
x						显示不关联终端的进程(如守护进程)
l						长格式输出(更多详细信息)
j						显示作业控制信息(会话 ID、进程组 ID)
-T						显示线程(LWP 列表示线程 ID)
  • 使用-o参数时,自定义常用字段如下

    • pcpu:CPU占用百分比

    • pmem:内存占用百分比

    • vsz:虚拟内存大小(KB)

    • rss:实际内存占用(KB)

    • stat:进程状态(如 S=睡眠, R=运行, Z=僵尸)

  • ps输出内容中UID、PID、PPID、C、STIME、TTY、TIME、CMD说明

  • 列名全称说明
    UIDUser ID运行该进程的用户 ID(或用户名,取决于 ps 选项)。
    PIDProcess ID进程的唯一标识号(杀死进程时使用,如 kill PID)。
    PPIDParent Process ID父进程的 PID(启动该进程的进程 ID)。
    CCPU UtilizationCPU 占用率(百分比,通常是一个时间段的平均值)。
    STIMEStart Time进程启动的时间(格式为 HH:MM月-日,取决于系统)。
    TTYTeleTYpe进程关联的终端设备(? 表示无终端,如守护进程)。
    TIMECPU Time进程占用 CPU 的总时间(格式为 HH:MM:SS)。
    CMDCommand启动进程的命令(包括参数,可能是截断的)。

(3)、常用命令示例

root@master:~# ps -ef #查看全部进程,以下仅为部分示例
UID          PID    PPID  C STIME TTY          TIME CMD
root           1       0  0 Jul21 ?        00:00:02 /sbin/init
root           2       0  0 Jul21 ?        00:00:00 [kthreadd]
root           3       2  0 Jul21 ?        00:00:00 [rcu_gp]
root@master:~# ps -u root -f  #查看root用户的所有进程,以下仅为部分示例
UID          PID    PPID  C STIME TTY          TIME CMD
root           1       0  0 Jul21 ?        00:00:02 /sbin/init
root           2       0  0 Jul21 ?        00:00:00 [kthreadd]
root@master:~# ps -p 17190 -o pid,cmd #仅显示PID=17190的进程pid,cmd信息PID CMD17190 [kworker/u4:2-events_power_efficient]
root@master:~# ps -e --sort=-%mem | head -n 5  #查看内存占用最高的5个进程PID TTY          TIME CMD923 ?        00:00:12 dockerd844 ?        00:00:25 containerd837 ?        00:00:07 snapd521 ?        00:00:08 multipathd
root@master:~# ps aux  #显示所有进程(类似 `ps -ef`,但含 %CPU/%MEM)
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.5 166340 11784 ?        Ss   Jul21   0:02 /sbin/init
root           2  0.0  0.0      0     0 ?        S    Jul21   0:00 [kthreadd]
root           3  0.0  0.0      0     0 ?        I<   Jul21   0:00 [rcu_gp]
root           4  0.0  0.0      0     0 ?        I<   Jul21   0:00 [rcu_par_gp]
root@master:~# ps aux | grep nginx	#查找nginx相关进程
root       17364  0.0  0.1   6480  2264 pts/1    S+   10:07   0:00 grep --color=auto nginx
root@master:~# ps aux --sort=-%cpu #按CPU占用降序排序
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.5 166340 11784 ?        Ss   Jul21   0:02 /sbin/init
root           2  0.0  0.0      0     0 ?        S    Jul21   0:00 [kthreadd]
root           3  0.0  0.0      0     0 ?        I<   Jul21   0:00 [rcu_gp]
root@master:~# ps -T -p 17190 # 查看PID=17190 的线程PID    SPID TTY          TIME CMD17190   17190 ?        00:00:00 kworker/u4:2-flush-8:0
root@master:~# ps -e u   #混合使用选项,显示所有进程,BSD 风格的 `u` 格式
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.5 166340 11784 ?        Ss   Jul21   0:02 /sbin/init
root           2  0.0  0.0      0     0 ?        S    Jul21   0:00 [kthreadd]
root@master:~# ps -f -u root	# 使用`-f`(完整格式)和`-u`(用户过滤)
UID          PID    PPID  C STIME TTY          TIME CMD
root           1       0  0 Jul21 ?        00:00:02 /sbin/init
root           2       0  0 Jul21 ?        00:00:00 [kthreadd]
root@master:~# ps -f --forest #树状结构显示当前窗口进程
UID          PID    PPID  C STIME TTY          TIME CMD
root       17333   17332  0 09:48 pts/1    00:00:00 sudo su
root       17334   17333  0 09:48 pts/1    00:00:00  \_ su
root       17335   17334  0 09:48 pts/1    00:00:00      \_ bash
root       17370   17335  0 10:10 pts/1    00:00:00          \_ ps -f --forest
root@master:~# ps -A -ostat,ppid | grep -e '[Zz]'  #查找僵尸进程及其父进程,如有需要可以kill查找到进程

2、top

(1)、命令简介

top 是 Linux 系统中一个 实时动态 查看系统进程和资源占用情况的命令行工具,比 ps 更直观,适合监控系统运行状态。

(2)、命令选项清单

#命令行参数(启动时指定选项)
参数							说明
top -d 2				设置刷新间隔为 2 秒(默认 3 秒)
top -p 1234,5678		仅监控指定 PID(多个 PID 用 , 分隔)
top -u mysql			仅显示指定用户(如 mysql)的进程
top -b -n 3 > top.log	以批处理模式运行 3 次后退出,结果保存到文件
top -H -p 1234			显示某个进程的所有线程(配合 -p 使用)
#交互式操作常用快捷键
快捷键				功能
q				退出 top
k				杀死进程(输入 PID 后发送信号,默认 SIGTERM)
r				调整进程优先级(renice,输入 PID 和新的 NI 值)
h				显示帮助
Shift + P		按 CPU 使用率 排序(默认)
Shift + M		按 内存使用率 排序
Shift + T		按 运行时间 排序
Shift + N		按 PID 排序
1				显示所有 CPU 核心的单独使用率
z				切换彩色/黑白显示
c				显示完整命令(包括参数)
W				保存当前配置到 ~/.toprc(下次启动生效)

(3)、常用命令示例

root@master:~# top #直接输入top进入交互界面
top - 10:18:06 up 1 day, 21:06,  3 users,  load average: 0.00, 0.00, 0.00
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
MiB Mem :   1963.1 total,    110.4 free,    292.4 used,   1560.3 buff/cache
MiB Swap:   2048.0 total,   2047.5 free,      0.5 used.   1477.5 avail Mem PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                                                                                                                              1 root      20   0  166340  11784   8356 S   0.0   0.6   0:02.22 systemd                                                                                                                              2 root      20   0       0      0      0 S   0.0   0.0   0:00.00 kthreadd
#第1行:系统运行时间、用户数、平均负载(1/5/15 分钟)。
#第2行:任务状态(运行、睡眠、停止、僵尸进程)。
#第3行:CPU 使用率(us=用户空间, sy=内核, id=空闲)。
#第4行:内存使用(total/free/used/buffers)。
#第5行:交换分区(Swap)使用情况。
#进程列表:
#PID:进程 ID
#USER:运行用户
#%CPU:CPU 占用率
#%MEM:内存占用率
#COMMAND:进程名#部分操作场景
#1、查找当前占用最高CPU最多的进程
运行 top。
按 Shift + P(按 CPU 排序)。
观察最上方的进程#2、查看当前CPU各核心占用
运行 top。
按 1,可以看到个核心使用率。
top - 10:22:23 up 1 day, 21:11,  3 users,  load average: 0.00, 0.00, 0.00
Tasks: 182 total,   1 running, 181 sleeping,   0 stopped,   0 zombie
%Cpu0  :  0.3 us,  0.0 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu1  :  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

3、kill

(1)、命令简介

kill 是 Linux/Unix 系统中用于 终止进程 的命令,它通过发送特定的 信号(Signal) 来控制进程的行为(如结束、重启、暂停等)。

(2)、命令选项清单

#命令语法:kill [-s sigspec | -n signum | -sigspec] pid | jobspec ...kill -l [sigspec]
#语法说明:
pid|jobspec:(
1)pid:进程 ID(如 kill 1234 发送 SIGTERM 给 PID 1234)。(2)jobspec:作业 ID(如 kill %1 发送 SIGTERM 给作业 1,仅限 shell 内置命令支持)。
-s sigspec / -n signum / -sigspec:
指定信号,可以是信号名称(如 -s SIGKILL)、信号编号(如 -n 9)或直接写信号名/编号(如 -9 或 -SIGKILL)。
-l / -L:
列出所有支持的信号名称。可搭配参数查询特定编号对应的信号名(如 kill -l 9 输出 KILL)。命令选项					说明
-s sig			使用信号名称(如 -s SIGINT)。
-n sig			使用信号编号(如 -n 2 等价于 SIGINT)。
-l [sigspec]	列出信号名称(无参数时列出全部,有参数时翻译编号,如 kill -l 9)。
-L				同 -l(兼容性选项)。

信号编号说明:

#信号编号		信号名	作用						示例
1			SIGHUP	挂起(重新加载配置)		kill -1 1234
2			SIGINT	中断(等同 Ctrl+C)	kill -2 1234
9			SIGKILL	强制终止(不可被捕获)	kill -9 1234
15			SIGTERM	默认终止(允许进程清理)	kill -15 1234
18			SIGCONT	继续运行已暂停的进程	kill -18 1234
19			SIGSTOP	暂停进程(不可被捕获)	kill -19 1234
#全部标准信号
kill -l1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP6) 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
#说明
常见标准信号(1-31)
SIGHUP (1):终端挂起或控制进程终止。常用于通知守护进程重新加载配置。
SIGINT (2):键盘中断(如 Ctrl+C),请求终止进程。
SIGQUIT (3):键盘退出(如 Ctrl+\),请求终止并生成核心转储。
SIGILL (4):非法指令,通常因执行无效的机器指令触发。
SIGTRAP (5):调试陷阱,由调试器使用(如断点)。
SIGABRT (6):调用 abort() 触发的异常终止。
SIGBUS (7):总线错误(非法内存访问,如未对齐访问)。
SIGFPE (8):算术错误(如除以零)。
SIGKILL (9):强制终止信号(不可捕获或忽略)。
SIGUSR1 (10):用户自定义信号 1。
SIGSEGV (11):段错误(无效内存访问)。
SIGUSR2 (12):用户自定义信号 2。
SIGPIPE (13):管道破裂(写入无读端的管道)。
SIGALRM (14):定时器超时(由 alarm() 设置)。
SIGTERM (15):终止请求(可捕获,优雅退出)。
SIGSTKFLT (16):协处理器栈错误(已废弃)。
SIGCHLD (17):子进程状态改变(终止或停止)。
SIGCONT (18):恢复已停止的进程(不可忽略)。
SIGSTOP (19):停止进程的执行(不可捕获或忽略)。
SIGTSTP (20):终端停止请求(如 Ctrl+Z)。
SIGTTIN (21):后台进程尝试读取终端。
SIGTTOU (22):后台进程尝试写入终端。
SIGURG (23):紧急数据(如带外数据到达套接字)。
SIGXCPU (24):CPU 时间超限。
SIGXFSZ (25):文件大小超限。
SIGVTALRM (26):虚拟定时器超时。
SIGPROF (27):性能分析定时器超时。
SIGWINCH (28):终端窗口大小改变。
SIGIO (29):异步 I/O 事件(文件描述符就绪)。
SIGPWR (30):电源故障(UPS 电池低电量)。
SIGSYS (31):无效的系统调用。
实时信号(34-64)
SIGRTMIN 到 SIGRTMAX:实时信号(优先级高于标准信号),编号范围因系统而异(通常 34-64)。
特点:
支持排队(同一信号多次触发不会丢失)。
可通过 sigqueue() 发送附加数据。
常用于高可靠性应用(如实时调度)。

(3)、常用命令示例

root@master:/data# ps -ef | grep test
root       17981   17335  0 12:34 pts/1    00:00:00 sh test.sh
root       17984   17335  0 12:34 pts/1    00:00:00 grep --color=auto test
root@master:/data# kill 17981 #根据进程pid停止程序(不加信号参数,默认是kill -15,等待程序执行完成退出)
root@master:/data# ps -ef | grep test
root       17988   17335  0 12:34 pts/1    00:00:00 grep --color=auto test
root@master:/data# kill -19 17989    #暂停进程
root@master:/data# [1]+  Stopped                 nohup sh test.sh
root@master:/data# ps -f | grep 17989
root       17989   17335  0 12:35 pts/1    00:00:00 sh test.sh
root       18024   17989  0 12:38 pts/1    00:00:00 [sleep] <defunct>
root       18035   17335  0 12:39 pts/1    00:00:00 grep --color=auto 17989
root@master:/data# kill -18 17989     #恢复进程
root@master:/data# ps -f | grep 17989
root       17989   17335  0 12:35 pts/1    00:00:00 sh test.sh
root       18036   17989  0 12:39 pts/1    00:00:00 sleep 10
root       18038   17335  0 12:39 pts/1    00:00:00 grep --color=auto 17989
root@master:/data# kill -9 17989 #强制结束进程
root@master:/data# ps -f | grep 17989
root       18048   17335  0 12:40 pts/1    00:00:00 grep --color=auto 17989
[1]+  Killed                  nohup sh test.sh

4、pkill

(1)、命令简介

pkill 是 Linux 系统中用于 通过进程名或其他属性终止进程 的命令,相比 kill(需要手动指定 PID),它可以直接按名称匹配进程并发送信号,更加高效。

(2)、命令选项清单

#命令语法:pkill [选项] <模式>
#模式:可以是进程名、用户、终端等(支持正则表达式)。
#默认信号:SIGTERM(15),类似 kill。
#选项			说明
-<信号>		指定发送的信号(如 -9 强制终止)
-u <用户>	终止指定用户的进程
-f			匹配完整的命令行(而不仅是进程名)
-x			精确匹配进程名(避免误杀)
-n			只终止最新(最新启动)的匹配进程
-o			只终止最旧(最早启动)的匹配进程
-t <终端>	终止指定终端关联的进程

(3)、常用命令示例

root@master:/data# ps -ef | grep nginx #查看nginx进程
root       18811       1  0 12:56 ?        00:00:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
www-data   18814   18811  0 12:56 ?        00:00:00 nginx: worker process
www-data   18815   18811  0 12:56 ?        00:00:00 nginx: worker process
root       18953   18072  0 12:57 pts/3    00:00:00 grep --color=auto nginx
root@master:/data# pkill nginx  #根据关键字,杀死名为nginx进程
root@master:/data# ps -ef | grep nginx  
root       18958   18072  0 12:57 pts/3    00:00:00 grep --color=auto nginx
root@master:~# ps -ef  | grep "www-data" #查看www-data用户启动进程
www-data   19104   18963  0 12:59 ?        00:00:00 nginx: worker process
www-data   19105   18963  0 12:59 ?        00:00:00 nginx: worker process
root       19113   19090  0 12:59 pts/1    00:00:00 grep --color=auto www-data
root@master:~# pkill -u www-data -9    #强制杀死www-data用户启动进程   
root@master:~# ps -ef  | grep "www-data" #可以看到www-data用户启动进程被重新拉起
www-data   19115   18963  0 13:00 ?        00:00:00 nginx: worker process
www-data   19116   18963  0 13:00 ?        00:00:00 nginx: worker process
root       19118   19090  0 13:00 pts/1    00:00:00 grep --color=auto www-data
#其他部分场景命令示例:
pkill -x "bash"      # 仅终止进程名严格等于 "bash" 的进程
pkill -f "python3 app.py"  # 终止命令行包含 "python3 app.py" 的进程
pkill -n chrome      # 终止最近启动的 "chrome" 进程
pkill -o mysql       # 终止最早启动的 "mysql" 进程
pkill -t pts/1       # 终止终端 pts/1 上的所有进程

5、bg/fg

(1)、命令简介

bgfg 是 Linux/Unix 系统中用于控制 后台(Background)前台(Foreground) 作业(Jobs)的命令,常用于管理正在运行或暂停的任务。

(2)、命令选项清单

#命令语法:bg [%作业号]  
#命令语法:fg [%作业号]

(3)、常用命令示例

root@master:~# ping 192.168.0.118 
PING 192.168.0.118 (192.168.0.118) 56(84) bytes of data.
64 bytes from 192.168.0.118: icmp_seq=1 ttl=64 time=0.290 ms
64 bytes from 192.168.0.118: icmp_seq=2 ttl=64 time=0.130 ms
^Z  #ctrl+z挂起进程
[1]+  Stopped                 ping 192.168.0.118
root@master:~# jobs #查看当前作业
[1]+  Stopped                 ping 192.168.0.118
root@master:~# bg 1 #恢复编号为1的作业,并在后台运行
[1]+ ping 192.168.0.118 &
root@master:~# 64 bytes from 192.168.0.118: icmp_seq=3 ttl=64 time=0.194 ms
64 bytes from 192.168.0.118: icmp_seq=4 ttl=64 time=0.136 ms
64 bytes from 192.168.0.118: icmp_seq=5 ttl=64 time=0.110 ms
64 bytes from 192.168.0.118: icmp_seq=6 ttl=64 time=0.102 ms
64 bytes from 192.168.0.118: icmp_seq=7 ttl=64 time=0.124 ms
64 bytes from 192.168.0.118: icmp_seq=25 ttl=64 time=0.101 ms
64 bytes from 192.168.0.118: icmp_seq=26 ttl=64 time=0.108 ms
^C #手动执行crtl+c强制终止
root@master:~# 64 bytes from 192.168.0.118: icmp_seq=27 ttl=64 time=0.157 ms #命令继续执行
64 bytes from 192.168.0.118: icmp_seq=28 ttl=64 time=0.145 ms
64 bytes from 192.168.0.118: icmp_seq=29 ttl=64 time=0.103 msroot@master:~# ping 192.168.0.118
PING 192.168.0.118 (192.168.0.118) 56(84) bytes of data.
64 bytes from 192.168.0.118: icmp_seq=1 ttl=64 time=0.173 ms
64 bytes from 192.168.0.118: icmp_seq=2 ttl=64 time=0.121 ms
^Z #ctrl+z挂起进程
[1]+  Stopped                 ping 192.168.0.118
root@master:~# jobs #查看当前作业
[1]+  Stopped                 ping 192.168.0.118
root@master:~# fg 1 #恢复编号为1的作业,恢复前台运行
ping 192.168.0.118
64 bytes from 192.168.0.118: icmp_seq=3 ttl=64 time=0.140 ms
64 bytes from 192.168.0.118: icmp_seq=4 ttl=64 time=0.102 ms
64 bytes from 192.168.0.118: icmp_seq=5 ttl=64 time=0.142 ms
64 bytes from 192.168.0.118: icmp_seq=6 ttl=64 time=0.147 ms
^C ##手动执行crtl+c强制终止
--- 192.168.0.118 ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 14426ms
rtt min/avg/max/mdev = 0.102/0.137/0.173/0.022 ms #命令执行结束
root@master:~# 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/91950.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/91950.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Z字形变换】

代码思路分析&#xff1a;Z 字形变换 1. 边界情况处理 if (r 1 || r > n) return s;r 1&#xff1a;只有一行&#xff0c;直接返回原字符串&#xff08;无需变换&#xff09;。r > n&#xff1a;行数大于等于字符串长度&#xff0c;每行只有一个字符&#xff0c;直接返…

VBA中类的解读及应用第二十五讲:把源数据赋给类利用类完成查找

《VBA中类的解读及应用》教程【10165646】是我推出的第五套教程&#xff0c;目前已经是第一版修订了。这套教程定位于最高级&#xff0c;是学完初级&#xff0c;中级后的教程。类&#xff0c;是非常抽象的&#xff0c;更具研究的价值。随着我们学习、应用VBA的深入&#xff0c;…

Vue3核心语法进阶(Hook)

Vue3 自定义 Hook&#xff1a;让你的代码像乐高一样“可复用”&#xff01;大家好&#xff0c;我是你们的前端小伙伴&#xff01;上一篇我们聊了 Vue3 的生命周期&#xff0c;今天咱们继续深入 Vue3 的核心利器——自定义 Hook&#xff08;Custom Hook&#xff09;。如果你已经…

工控领域协议之Modbus

Modbus 是一种通信协议&#xff0c;用于工业自动化领域中的设备之间的通信。它是一种串行通信协议&#xff0c;广泛应用于连接不同设备、传感器和执行器的工业控制系统。 Modbus 在工业控制系统、自动化设备、能源管理系统等领域得到广泛应用。 Modbus 协议的基本特点&#xff…

大件垃圾识别 mAP↑28%:陌讯多模态融合算法实战解析

一、行业痛点&#xff1a;大件垃圾识别的现实困境在城市环卫智能化转型过程中&#xff0c;大件垃圾&#xff08;如废旧家具、电器等&#xff09;的自动化识别与分拣成为关键环节。据住建部《城市环境卫生发展报告》显示&#xff0c;传统人工分拣模式下大件垃圾识别准确率不足 6…

vk框架或者普通函数封装的一些函数可以拿取使用【会持续更新】

1.身份证校验【通用】/*** function isIDCard* description 判断是否为有效的身份证号码。* param {string} idCard - 待验证的身份证号码。* returns {boolean} 返回验证结果。*/ pubFun.isIDCard function (idCard) {// 身份证号码为15位或者18位&#xff0c;15位时全为数字…

如何给Word和WPS文档添加密码或取消密码

要保护Word和WPS文档&#xff0c;可以为它们加密&#xff0c;加密有两类&#xff1a;打开密码和修改密码。密码设置有两个入口&#xff0c;一个是在另存为&#xff0c;一个是在文件菜单。Word和WPS文字的路径略有不同&#xff0c;微软Office和WPS的其他套件也是如此操作。一、W…

uni-app项目gitignore文件示例

uni-app 忽略以下文件和目录 DS_Store 忽略 UniApp 编译生成的小程序相关目录 unpackage/ uni_modules/ 忽略编辑器自动生成的文件 idea/ vscode/ 忽略日志文件 logs/ 忽略临时文件 temp/ 忽略构建工具自动生成的文件 build/ 忽略 npm 安装的包文件 package-lock.json yarn.loc…

LeetCode 135:分糖果

LeetCode 135&#xff1a;分糖果问题本质与核心挑战 给定孩子的评分数组&#xff0c;需满足 “每个孩子至少1颗糖果&#xff0c;相邻评分高的孩子糖果更多”&#xff0c;求最少糖果总数。核心挑战&#xff1a; 相邻约束是双向的&#xff08;左→右和右→左都需满足&#xff09;…

【QT】安装与配置

个人主页&#xff1a;Guiat 归属专栏&#xff1a;QT 文章目录1. QT简介与准备工作1.1 什么是QT1.2 QT的版本选择1.3 系统要求检查2. QT安装方式详解2.1 官方在线安装器2.2 离线安装包2.3 包管理器安装3. Windows平台安装配置3.1 Windows安装步骤3.2 环境变量配置3.3 Visual Stu…

Java从入门到精通 - 算法、正则、异常

算法、正则、异常 此笔记参考黑马教程&#xff0c;仅学习使用&#xff0c;如有侵权&#xff0c;联系必删 文章目录算法、正则、异常1. 常见算法1.1 简单认识算法1.1.1 什么是算法&#xff1f;1.1.2 为什么要学习算法&#xff1f;1.2 排序算法1.2.1 冒泡排序1.2.1.1 实现冒泡排…

题单【排序】

P1271 【深基9.例1】选举学生会 P1271 【深基9.例1】选举学生会 - 洛谷 【方法一】快速排序 使用sort()&#xff0c;注意数组的范围&#xff01;&#xff01;&#xff01; #include<bits/stdc.h> using namespace std;int a[2000000],n,m;int main() {cin>>n>&g…

【机器学习】(算法优化二)提升算法之:AdaBoost与随机梯度

文章目录一、 AdaBoost&#xff1a;自适应提升算法1、AdaBoost数学原理详解1.1、 目标函数1.2、 样本权重更新的逻辑1.3、 模型权重计算的含义1.4、 AdaBoost的核心思想2、为什么AdaBoost如此有效&#xff1f;二、 随机梯度提升算法&#xff1a;梯度优化下更精细的优化1、随机梯…

力扣 hot100 Day65

75. 颜色分类 给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums &#xff0c;原地 对它们进行排序&#xff0c;使得相同颜色的元素相邻&#xff0c;并按照红色、白色、蓝色顺序排列。 我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 必须在不使用库内置的 sort 函…

12.Linux 磁盘管理

Linux : 磁盘管理 一、磁盘设备命名规则磁盘类型设备命名模式示例特点SATA/SCSI/SAS/dev/sdXsda&#xff08;第一块硬盘&#xff09; sda1&#xff08;第一块硬盘第一分区&#xff09;机械硬盘/通用接口NVMe/dev/nvmeXnYpZnvme0n1&#xff08;第一通道第一块盘&#xff09; …

《Linux服务与安全管理》| DHCP服务器安装和配置

《Linux服务与安全管理》| DHCP服务器安装和配置 目录 《Linux服务与安全管理》| DHCP服务器安装和配置 一、点击“编辑虚拟机设置”&#xff0c;配置三台虚拟机为“仅主机”模式。 二、server01开机&#xff0c;root用户登录&#xff0c;输入nmtui&#xff0c;进入图形界面…

赛博威携手Dify,助力AI在企业的场景化落地

人工智能正以前所未有的速度重塑商业世界。我们经历了从理论探索到大语言模型&#xff08;LLM&#xff09;的爆发式增长&#xff0c;如今&#xff0c;一个以“AI Agent&#xff08;智能体&#xff09;”为核心的新阶段已然来临。AI Agent代表了人工智能应用的未来形态。它不再被…

嵌入式硬件中三极管推挽电路控制与实现

我们昨天讲到了这个电路。 如果 A 电是 PWM 波,那么请问 B 点是不是 PWM 波呢?那么,当 PWM 为高时, B 点的电流是从哪里流过来的?

数据结构——查找(三、树形查找)

一、二叉排序树&#xff08;BST&#xff09;1、二叉排序树的定义构造一棵二叉排序树的目的并不是排序&#xff0c;而是提高查找、插入和删除关键字的速度二叉排序树&#xff08;也称二叉搜索树&#xff09;或者是一颗空树&#xff0c;或者是具有以下性质的二叉树1、若左子树非空…

八股——Kafka相关

文章目录1、 消息队列的作用什么&#xff1f;思&#xff1a;消息队列是什么?消息队列的定义消息队列的工作原理消息队列的作用消息队列的常见类型消息队列的简单例子2、Kafka 集群的架构是什么样子的&#xff1f;3、Kafka 消费者组和生产者组是什么&#xff1f;定义与核心作用…