在Linux环境下查看服务器配置是系统管理员和开发人员的常见任务,通过命令行工具可以高效获取硬件、系统、网络等多维度信息,以下从不同模块详细说明查看服务器配置的方法及命令。
CPU信息查看
CPU是服务器的核心组件,查看CPU配置有助于了解计算能力,常用命令包括:
- lscpu:显示CPU架构、核心数、线程数等信息,输出格式清晰,可直接查看Socket数量、CPU型号、主频等,例如执行
lscpu会显示“Architecture: x86_64”“CPU(s): 8”“Thread(s) per core: 2”等关键参数。 - /proc/cpuinfo:直接读取CPUinfo文件,可获取每个逻辑处理器的详细信息,如处理器编号、缓存大小、指令集等,通过
cat /proc/cpuinfo | grep "model name" | uniq可提取唯一CPU型号。 - top/htop:实时监控CPU使用率,动态观察负载情况,htop以彩色界面展示,更直观。
内存信息查看
内存配置影响服务器性能,查看内存需关注总量、使用情况及类型:
- free:常用命令
free -h以人类可读格式(如GB、MB)显示内存总量、已用、空闲及缓冲区大小,-m参数则以MB为单位。 - /proc/meminfo:详细记录内存信息,包括物理内存、交换分区、Slab缓存等,执行
cat /proc/meminfo | grep "MemTotal"可获取总内存大小。 - dmidecode:需root权限,通过
sudo dmidecode --type memory查看内存条型号、频率、插槽数量等硬件信息,输出结果包含“Size: 16GB”“Speed: 3200MHz”等。
磁盘及存储信息查看
磁盘配置涉及容量、类型、分区及I/O性能:
- df:查看文件系统磁盘使用情况,
df -h显示各分区挂载点、总容量、已用空间及使用率,例如/dev/sda1 50G 20G 30G 40%。 - lsblk:列出块设备信息,包括磁盘名称、分区类型、挂载点及大小,
lsblk -f可显示文件系统类型,如ext4、xfs。 - fdisk/lvm:
sudo fdisk -l查看磁盘分区表及详细信息;若使用LVM,可通过pvdisplay、vgdisplay、lvdisplay查看物理卷、卷组、逻辑卷配置。 - iostat:安装sysstat包后,
iostat -x 1实时监控磁盘I/O性能,包括读写速率、utilization等指标。
网络配置查看
网络信息涉及IP地址、网卡状态、路由表等:
- ip/ifconfig:
ip addr show或ifconfig显示网卡IP地址、子网掩码、MAC地址,ip link查看网卡状态(如UP/DOWN)。 - netstat/ss:
ss -tulnp查看监听端口及进程,netstat -rn显示路由表信息,-t为TCP,-u为UDP,-l仅显示监听端口。 - ethtool:
sudo ethtool eth0查看网卡速率(如1000Mbps)、双工模式及驱动信息,sudo ethtool -s eth0 speed 1000可手动设置速率。
操作系统及硬件概览
- uname:
uname -a显示内核版本、系统架构、主机名等,如“Linux server 5.4.0-91-generic #102-Ubuntu SMP”。 - lshw:需安装lshw包,
sudo lshw -class memory或sudo lshw -short可查看硬件概览,包括CPU、内存、磁盘等详细信息,输出格式为树状结构。 - dmidecode:综合硬件信息,
sudo dmidecode生成完整硬件报告,包含主板型号、BIOS版本、序列号等。
实时性能监控工具
- top/htop:实时查看CPU、内存、进程占用情况,htop支持交互操作,如按P按CPU排序、按M按内存排序。
- vmstat:
vmstat 1每秒显示进程、内存、 swap、I/O、系统调用等统计信息,第一行为平均值,后续为实时数据。 - glances:需安装glances,
glances以仪表盘形式展示CPU、内存、磁盘、网络、进程等综合信息,支持警报阈值设置。
配置信息表格汇总
| 配置模块 | 常用命令 | 关键输出信息 |
|---|---|---|
| CPU | lscpu, /proc/cpuinfo | 型号、核心数、线程数、主频、缓存大小 |
| 内存 | free -h, /proc/meminfo | 总内存、已用内存、空闲内存、交换分区大小 |
| 磁盘 | df -h, lsblk, iostat -x | 分区容量、使用率、文件系统类型、磁盘I/O速率、utilization |
| 网络 | ip addr, ss -tulnp, ethtool | IP地址、MAC地址、监听端口、网卡速率、双工模式 |
| 系统概览 | uname -a, lshw, dmidecode | 内核版本、主机名、硬件型号、BIOS版本、序列号 |
相关问答FAQs
Q1: 如何查看Linux服务器是否支持虚拟化?
A: 可通过以下方式检查:
- 执行
lscpu | grep Virtualization,若输出“Virtualization: VT-x”或“AMD-V”则说明CPU支持硬件虚拟化。 - 检查内核模块是否加载:
lsmod | grep kvm,若显示kvm_intel或kvm_amd则已加载。 - 使用
dmidecode -s system-product-name查看服务器型号,若为Dell PowerEdge、HP ProLiant等品牌服务器,通常支持虚拟化。
Q2: 如何查看磁盘的读写性能和健康状态?
A: 可结合以下工具:
- 性能监控:安装sysstat包后,执行
iostat -x 2观察%util(磁盘利用率)、await(平均等待时间)、r_await/w_await(读写等待时间),若%util持续高于70%或await超过100ms,可能存在I/O瓶颈。 - 健康状态:
sudo smartctl -a /dev/sda(需安装smartmontools)查看磁盘SMART信息,重点关注“Reallocated_Sector_Ct”(重分配扇区数)、“Current_Pending_Sector”(待处理扇区数)等关键指标,若非0则可能存在坏道。 - 文件系统检查:
sudo fsck -n /dev/sda1以非修复模式检查文件系统错误,避免直接操作导致数据丢失。
