系統信息及進程管理命令

系統信息及進程管理

一、系統信息查看

常用命令: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
英文地址,請注明出處:http://en.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;定義與核心作用…