# 硬件管理 > 本文档涵盖服务器硬件基础知识与 Linux 系统硬件信息查看方法。 --- ## 第一部分:硬件基础知识 ### 1. CPU #### 1.1 指令集 | 类型 | 代表架构 | 特点 | |------|---------|------| | **CISC**(复杂指令集) | X86、AMD64 | 指令丰富但复杂,执行速度慢,编译程序复杂 | | **RISC**(精简指令集) | ARM | 指令精简,MAC 已使用,Windows 生态待完善 | #### 1.2 主频 CPU 主频是 CPU 的时钟频率,单位 Hz。主频越高,CPU 运算速度越快。 --- ### 2. 存储 #### 2.1 ROM(只读存储器) - **作用**:存放 BIOS 信息 - **特点**:断电后数据不丢失 #### 2.2 RAM(随机存取存储器) ##### DRAM - **作用**:服务器的内存条 - **带宽计算**:内存带宽 = 内存总线频率 × 数据总线位数 / 8 ##### SRAM - **作用**:作为 CPU 内的高速缓存(Cache) ##### DRAM vs SRAM | 特性 | DRAM | SRAM | |------|------|------| | 刷新电路 | 需要 | 不需要 | | 性能 | 较低 | 高 | | 价格 | 便宜 | 贵 | | 集成度 | 高 | 低 | ##### 内存分级 ``` CPU 寄存器(L0) → L1 Cache → L2 Cache → L3 Cache → 内存(DRAM) → 本地磁盘 → 远程存储(NAS) ``` **为什么需要分级?** CPU 处理速度远快于 IO,为避免 IO 阻塞,CPU 优先从高速缓存读取数据。 **缓存未命中时**:CPU 从 L1 找不到数据时会去 L2 查找,找到后会复制到 L1 以便后续快速访问。 --- ### 3. 硬盘 #### 3.1 接口类型 | 接口 | 全称 | 速度 | |------|------|------| | **SATA** | Serial ATA | Ⅰ: 1.5Gb/s,Ⅱ: 3Gb/s,Ⅲ: 6Gb/s | | **SAS** | Serial Attached SCSI | 更高 | | **M.2** | 固态硬盘专用接口 | 10Gb/s | > 注意:以上为接口最大带宽上限,不代表实际速度。 #### 3.2 结构分类 | 类型 | 组成 | 特点 | |------|------|------| | **机械 HDD** | 盘片、磁头、马达 | 成本低,容量大,寿命长 | | **固态 SSD** | 闪存芯片、主控 | 速度快,无噪音,抗震动 | #### 3.3 关键参数 - 容量、转速、传输速率、缓存 #### 3.4 磁盘尺寸 | 尺寸 | 应用场景 | 特点 | |------|---------|------| | **3.5 寸** | 企业级 | 转速快、容量大、需要外接电源 | | **2.5 寸** | 个人电脑/便携 | 无需外接电源,支持热插拔 | --- ### 4. 网卡 | 类型 | 说明 | |------|------| | 板载网卡 | 主板集成 | | PCIE 拓展卡 | 通过 PCIE 插槽扩展 | --- ### 5. 远程管理卡(BMC) - **全称**:Baseboard Manager Controller - **特点**:服务器关机状态下也能运行 - **协议**:IPMI - **功能**:远程访问、查看状态、调整 BIOS、配置 RAID、安装系统、重启机器 --- ### 6. 阵列卡(RAID 卡) - **作用**:实现磁盘阵列(RAID),释放 CPU 资源,提供缓存和阵列保护 - **功能**:RAID 建立/重建、错误检测、故障磁盘自动监测 #### RAID 级别对比 | 级别 | 最少盘数 | 冗余 | 性能 | 适用场景 | |------|---------|------|------|---------| | **RAID 0** | 2 | 无 | 最高 | 不考虑数据安全的场景 | | **RAID 1** | 2 | 镜像 | 读快写慢 | 系统盘、关键数据 | | **RAID 5** | 3 | 校验 | 平衡 | 通用业务数据 | | **RAID 6** | 4 | 双校验 | 较高 | 高可靠性场景 | | **RAID 10** | 4 | 镜像+条带 | 高 | 数据库、高 IO 应用 | --- ### 7. 电源 | 类型 | 说明 | |------|------| | 服务器电源 | 通常采用双电源冗余 | | UPS(不间断电源) | 稳压,市电异常时提供备用供电 | --- ### 8. 显卡 | 类型 | 说明 | |------|------| | 亮机卡 | 服务器显示输出用,通常为集成显卡 | | 专业卡 | 图形渲染用,非服务器必选 | --- ### 9. 机柜 - **计量单位**:U(1U ≈ 4.5cm) - **用途**:标准 19 英寸机架式服务器安装 --- ## 第二部分:Linux 硬件信息查看 ### 2.1 查看 CPU 信息 #### 使用 `lscpu` ```bash [root@tencentos ~]# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 2 On-line CPU(s) list: 0,1 Thread(s) per core: 1 Core(s) per socket: 2 Socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel Model name: Intel(R) Xeon(R) Platinum 8255C CPU @ 2.50GHz CPU MHz: 2494.140 Hypervisor vendor: KVM Virtualization type: full L1d cache: 32K L1i cache: 32K L2 cache: 4096K L3 cache: 36608K ``` #### 关键字段说明 | 字段 | 含义 | |------|------| | Architecture | CPU 架构,如 x86_64 | | CPU(s) | 逻辑 CPU 数量 | | Thread(s) per core | 每核心线程数(超线程 >1) | | Core(s) per socket | 每颗物理 CPU 的核心数 | | Socket(s) | 物理 CPU 颗数 | | Model name | CPU 型号 | | Hypervisor vendor | 虚拟化环境(如 KVM) | | L1/L2/L3 cache | 各层级缓存大小 | #### 使用 `/proc/cpuinfo` ```bash [root@tencentos ~]# cat /proc/cpuinfo ``` 可查看:processor、vendor_id、model name、cpu MHz、cache size、flags、bugs 等详细信息。 #### 使用场景建议 - **快速巡检**:`lscpu` - **深度分析**:`/proc/cpuinfo` - **判断虚拟机**:关注 `Hypervisor vendor` - **计算核心/线程数**:结合 CPU(s) × Thread(s) × Core(s) × Socket(s) --- ### 2.2 查看内存信息 #### 使用 `free -h` ```bash [root@tencentos ~]# free -h total used free shared buff/cache available Mem: 1.7Gi 323Mi 341Mi 35Mi 1.0Gi 1.2Gi Swap: 0B 0B 0B ``` #### 关键字段说明 | 字段 | 含义 | |------|------| | total | 内存总量 | | used | 已使用内存 | | free | 完全空闲 | | shared | 共享内存 | | buff/cache | 缓冲区和页缓存 | | available | 可用内存(推荐关注) | | Swap | 交换分区 | #### 使用 `/proc/meminfo` ```bash [root@tencentos ~]# cat /proc/meminfo ``` 常见字段:MemTotal、MemFree、MemAvailable、Buffers、Cached、SwapTotal、SwapFree、Slab、Dirty #### 排障建议 - 日常巡检:`free -h` - 重点关注 `available` 而非 `free` - Swap 持续上升需关注内存压力 --- ### 2.3 查看磁盘与分区 #### 使用 `lsblk` ```bash [root@tencentos ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 50G 0 disk └─vda1 253:1 0 50G 0 part / ``` #### 使用 `/proc/partitions` ```bash [root@tencentos ~]# cat /proc/partitions major minor #blocks name 253 0 52428800 vda 253 1 52427759 vda1 ``` #### 使用 `blkid` ```bash [root@tencentos ~]# blkid /dev/vda1: UUID="ded6c45d-0699-43e5-bc44-f31c21449dcc" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="5f3d9d70-01" ``` - 查看文件系统类型(ext4、xfs) - 获取 UUID 用于 /etc/fstab --- ### 2.4 常用巡检命令 ```bash # 1. 看 CPU lscpu # 2. 看内存 free -h # 3. 看磁盘 lsblk blkid ``` --- ## 小结 | 命令 | 用途 | |------|------| | `lscpu` | CPU 概况 | | `/proc/cpuinfo` | CPU 详细信息 | | `free -h` | 内存使用情况 | | `/proc/meminfo` | 内存详细统计 | | `lsblk` | 块设备与挂载 | | `blkid` | UUID 与文件系统类型 | 掌握以上命令,可覆盖 Linux 基础硬件巡检的常见需求。