大纲
| 推荐命令 | 作用 |
|---|---|
| df | 显示磁盘总容量、可用空间 |
| mount | 查看磁盘挂载 |
| lscpu | 查看cpu |
| w | cpu负载 |
| free | 查看内存 |
| vmstat | linux系统监控工具 |
| dmidecode | Linux系统中提取硬件信息 |
df
-
参数
参数 功能描述 示例 -a 显示所有文件系统,包括虚拟文件系统(如/proc) df -a -h 以GB/MB/KB等易读格式显示 df -h -H 类似-h,但采用1000进制(1k=1000字节) df -H -i 显示inode数量使用情况,而非磁盘容量 df -i -T 显示文件系统类型(如ext4、tmpfs) df -T -t 仅显示指定类型的文件系统 df -t ext4 -l 只显示本地文件系统,忽略网络文件系统 df -l -
示例
-
df -i文件系统 Inode 已用(I) 可用(I) 已用(I)% 挂载点 /dev/xxxx 49344512 27353 49317159 1% / /dev/sda1 524288 326 523962 1% /boot 有时候会发现磁盘没满,但会报异常,就是可能inode值满了, 一般出现在文件之类的服务上,可以查看补充inode说明
-
df -Th~]# df -Th 文件系统 类型 容量 已用 可用 已用% 挂载点 /dev/mapper/centos-root xfs 95G 1.4G 93G 2% / /dev/sda1 xfs 1014M 133M 882M 14% /boot
-
mount
-
基础参数
参数/选项 作用 示例 -a挂载 /etc/fstab中所有设备mount -a-t 类型指定文件系统类型 -t iso9660(光盘)、-t ntfs(Windows分区)-o 选项设置挂载属性 ro(只读)、rw(读写)、noatime(不更新访问时间)-r等价于 -o ro,只读挂载mount -r /dev/cdrom /mnt/cdrom -
场景化挂载选项(
-o参数)选项 功能说明 适用场景 loop将文件视为块设备挂载 挂载ISO镜像: -o loopro/rw只读/读写模式挂载(默认 rw)光盘镜像需 roiocharset指定字符集(解决中文乱码) Windows分区: iocharset=cp936soft/hardNFS挂载模式(软挂载超时终止/硬挂载持续重试) NFS网络共享 -
示例-临时挂载
-
挂载光盘
mkdir /mnt/cdrom # 创建挂载点 mount -t iso9660 /dev/cdrom /mnt/cdrom -
挂载 NFS
mount -t nfs nfs服务器:/path/to/abs /本机挂载目录 -
挂载NTFS移动硬盘
mount -t ntfs -o rw,iocharset=cp936 /dev/sdc1 /mnt/usbhd # iocharset 指定字符集(解决中文乱码) Windows分区:iocharset=cp93612
-
/etc/fstab
-
参数
字段顺序 字段名 含义 取值说明 1 设备标识 要挂载的设备或文件系统 设备路径(如 /dev/sda1)、UUID、LABEL、伪文件系统名(如proc)2 挂载点 挂载的目录路径 必须为已存在的目录(如 /mnt/data)3 文件系统类型 设备的文件系统格式 ext4/xfs/nfs/tmpfs/proc等,auto表示自动检测4 挂载选项 挂载时的行为参数 多选项用逗号分隔(如 defaults,noatime)5 转储频率( dump)控制 dump备份工具的备份频率0(不备份)、1(每日备份)、2(隔日备份)6 自检次序( pass)开机磁盘自检顺序 0(不自检)、1(根目录优先)、2(次级目录 -
️ 挂载选项(第4列)详解
常用选项 适用文件系统 功能说明 defaults通用 默认组合: rw, suid, dev, exec, auto, nouser, asyncnoatimeext4/xfs 不更新文件访问时间,提升性能 size=50%tmpfs 限制内存文件系统最大占用内存比例(如 size=50%)ro/rw通用 只读/读写模式 nofail通用 设备不存在时忽略错误,防止启动卡死 -
示例
-
配置示例
# 设备标识 挂载点 文件系统 挂载选项 dump pass UUID=6efb8a23... /boot xfs defaults 0 0 proc /proc proc defaults 0 0 tmpfs /tmp tmpfs size=50%,noatime 0 0 -
挂载 NFS
# 设备标识 挂载点 文件系统 挂载选项 dump pass nfs服务器:/path/to/abs /本机挂载目录 nfs default 0 0 -
挂载NTFS移动硬盘
# 设备标识 挂载点 文件系统 挂载选项 dump pass /dev/sdc1 /mnt/usbhd ntfs rw,iocharset=cp936 0 0
-
/proc/mounts
当写入/etc/fstab系统自动挂载之后这里会生成条目
lscpu
-
命令查看
[root@localhost ~]# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 4 .... 型号名称: 12th Gen Intel(R) Core(TM) i5-12490F 步进: 2 ..... # flags需要注意一下,有一些包需要依赖包架构支撑, 如果安装包有要求可以先检查一下 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl xtopology tsc_reliable nonstop_tsc eagerfpu 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 ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 arat umip gfni vaes vpclmulqdq spec_ctrl intel_stibp flush_l1d arch_capabilities -
用文件查看
~]# cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 151 model name : 12th Gen Intel(R) Core(TM) i5-12490F .... flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl .... bogomips : 5990.39 clflush size : 64 cache_alignment : 64 address sizes : 45 bits physical, 48 bits virtual # 会将每核每线程的cpu都打印出来
w
-
参数
参数 作用 示例输出变化 -h隐藏头部系统概览信息 仅保留用户详情表 -s精简模式,不显示登录时间、JCPU/PCPU 减少列数,突出用户和当前命令 -f显示远程登录来源(FROM列) 默认不显示,需手动开启 -u忽略用户名,仅显示进程和CPU时间 USER列以 -代替实际用户名 -
示例
-
直接使用
w模块 说明 示例数据 系统概览 当前时间、运行时长、登录用户数、1/5/15分钟平均负载 20:37:13 up 1:20, 1 user, load average: 0.00, 0.01, 0.05用户详情 用户名、终端类型、登录来源、登录时间、空闲时间、进程占用CPU时间、当前命令 root pts/0 192.168.189.1 19:26 1.00s 0.53s 0.03s w
-
free
-
参数
参数 说明 -b/-m/-g 以字节/MB/GB为单位 -h 易读格式 -o 不显示-/+buffers/cache行 -t 显示RAM + swap的总和 -s n 刷新间隔为n秒 -c n 刷新n次后即退出 -
示例 -- 用命令查看
-
以字节为单位
[root@localhost cc]# free -b total used free shared buff/cache available Mem: 10464804864 171970560 10020167680 12226560 272666624 9999290368 Swap: 5234487296 0 5234487296 -
以MB为单位
[root@localhost cc]# free -m total used free shared buff/cache available Mem: 9980 163 9556 11 260 9536 Swap: 4991 0 4991 -
以GB为单位
[root@localhost cc]# free -g total used free shared buff/cache available Mem: 9 0 9 0 0 9 Swap: 4 0 4 -
易读格式
[root@localhost cc]# free -h total used free shared buff/cache available Mem: 9.7G 163M 9.3G 11M 260M 9.3G Swap: 4.9G 0B 4.9G -
swap跟物理内存总数
[root@localhost cc]# free -th total used free shared buff/cache available Mem: 9.7G 163M 9.3G 11M 260M 9.3G Swap: 4.9G 0B 4.9G Total: 14G 163M 14G
-
-
用文件查看:
~]# cat /proc/meminfo MemTotal: 10219536 kB MemFree: 9911528 kB MemAvailable: 9815168 kB Buffers: 2108 kB Cached: 87380 kB SwapCached: 0 kB Active: 66212 kB Inactive: 69456 kB
vmstat
(virtual memory statistics)用于展现给定时间间隔的服务器状态值,包括进程、内存、IO、系统中断、上下文切换及CPU时间等信息,主要功能是识别系统瓶颈,其语法形式为 vmstat [选项] [delay [count]],其中 delay 为数据更新间隔(秒),count 为输出次数;若仅指定 delay 则无限次输出,直至手动结束
-
参数
参数 含义 应用场景 -a显示活跃/非活跃内存 分析内存回收压力 -d显示磁盘I/O统计 诊断磁盘性能瓶颈 -p <分区>指定分区的I/O统计 监控特定磁盘分区(如 /dev/sda1)-s显示内存事件汇总(如缺页、交换) 排查内存泄漏或频繁交换问题 -t输出时增加时间戳 记录性能波动时间点 -w宽输出模式(适配大屏幕) 避免字段换行,提升可读性 <间隔> <次数>设置刷新间隔(秒)和输出次数 动态监控系统状态(如每2秒刷新1次) - -S:使用指定单位显示。 参数有 k 、K 、m 、M,分别代表1000、1024、1000000、1048576字节(byte)。默认单位为K(1024 bytes)
-
示例
-
vmstat <间隔> <次数>
# 基础实时监控(每2秒刷新,共2次) [root@localhost ~]# vmstat 2 2 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 1 0 0 9901208 2108 144832 0 0 36 2 42 64 0 0 99 0 0 0 0 0 9901308 2108 144832 0 0 0 0 94 46 0 0 100 0 0 # 若 r 持续 > CPU 核心数,且 id < 20% → CPU 不足。 # 若 free 接近 0,si/so > 0 → 内存不足。-
关键参数
-
procs(进程):
- r:运行队列中的进程数(若长期 > CPU 核心数,说明 CPU 繁忙)。
- b:等待 I/O 的阻塞进程数(>0 可能存在 I/O 瓶颈)。
-
memory(内存,单位 KB/MB):
- swpd:已使用的虚拟内存(Swap)。
- free:空闲的物理内存。
- buff/cache:用于缓冲和缓存的内存。
-
swap(交换分区):
- si:从磁盘写入 Swap 的数据量(KB/s)。
- so:从 Swap 读回内存的数据量(KB/s)。
- 若 si/so 长期 > 0,说明内存不足。
-
io(磁盘 I/O):
- bi:从磁盘读取的块数(blocks/s)。
- bo:写入磁盘的块数(blocks/s)。
- 高值可能表示磁盘繁忙。
-
system(系统):
- in:每秒中断次数(包括时钟中断)。
- cs:每秒上下文切换次数。
- 过高可能因进程频繁调度。
-
cpu(CPU 使用率):
- us:用户进程占用 CPU 时间百分比。
- sy:系统内核占用 CPU 时间百分比。
- id:空闲 CPU 百分比。
- wa:等待 I/O 的 CPU 时间百分比(>10% 可能存在 I/O 瓶颈)。
- st:被虚拟机偷取的时间(仅虚拟化环境)。
-
-
-
汇总内存使用情况
~]# vmstat -s 10219536 K total memory 171976 K used memory 67008 K active memory 77184 K inactive memory 9900164 K free memory 2108 K buffer memory 145288 K swap cache 5111804 K total swap -
检查磁盘 I/O:
~]# vmstat -d 1 # 每隔1秒刷次一次 disk- ------------reads------------ ------------writes----------- -----IO------ total merged sectors ms total merged sectors ms cur sec sda 3774 2 215224 738 286 38 14237 255 0 0 sr0 18 0 2056 27 0 0 0 0 0 0 dm-0 2660 0 190429 580 320 0 10141 287 0 0 dm-1 90 0 4920 22 0 0 0 0 0 0 # 若 bi/bo 持续高,且 wa > 10% → 磁盘 I/O 瓶颈。
-
dmidecode
dmidecode 使用 SMBIOS/DMI 标准,在Linux下收集相关硬件信息
-
使用 -s 获取参数dmidecode -s 会打印出来关键字
关键字 功能描述 示例命令 输出效果(示例) system-product-name 获取服务器/设备型号 dmidecode -s system-product-nameEVT2236MTsystem-serial-number 获取系统序列号(唯一标识) dmidecode -s system-serial-numberABC12345678system-uuid 获取系统UUID(硬件级唯一ID) dmidecode -s system-uuid6a4357e6-062e-7b62-82d2...processor-version 获取CPU型号全称 dmidecode -s processor-versionIntel(R) Xeon(R) E-2236...baseboard-product-name 获取主板型号 dmidecode -s baseboard-product-namePRIME B250M-J-
示例
-
获取CPU型号
]# dmidecode -t processor | grep Version | head -n 1 ]# dmidecode -s processor-version Version: 12th Gen Intel(R) Core(TM) i5-12490F -
获取服务器型号
]# dmidecode | grep 'Product Name' ]# dmidecode -s system-product-name Product Name: VMware Virtual Platform Product Name: 440BX Desktop Reference Platform -
获取主机序列号
]# dmidecode -s system-serial-number VMware-56 4d 83 35 b6 1a ca 95-e6 c4 c9 f3 b6 e8 69 cd -
查看内存的汇总信息
]# dmidecode|grep -P -A5 "Memory\s+Device"|grep Size|grep -v Range | grep -v "No Module Installed" Size: 2048 MB -
查看主板支持的最大内存
]# dmidecode|grep 'Maximum Capacity' Maximum Capacity: 161 GB -
Linux系统查看内存规格信息
]# dmidecode|grep -A16 'Memory Device'|grep 'Speed' Speed: 1333 MHz Speed: 1333 MHz
-
-
-
-t 参数参数 说明 1 服务器(序列号) 2 主板(制造商、型号、序列号) 4 处理器(型号、核心数、频率) 16 最大支持内存 17 内存(插槽容量、频率)
补充
inode
inode(index node)表中包含文件系统所有文件列表一个节点 (索引节点)是在一个表项,包含有关文件的信息( 元数据 ),包括
- 文件类型,权限,UID,GID
- 链接数(指向这个文件名路径名称个数)
- 该文件的大小和不同的时间戳
- 指向磁盘上文件的数据块指针
- 有关文件的其他数据
- 一般inode表会占用文件系统磁盘空间的 1%, 使用df -i命令可以看到当前还有多少可以或占用的资源