买了台新 VPS 先看看配置对不对、服务器卡了想知道内存够不够、要给客户汇报机器参数——这些都需要快速查看系统信息。Linux 查看系统信息的命令很多,uname、lscpu、free、df、dmidecode 各管一块。这篇文章把它们按 CPU、内存、磁盘、网络、系统版本分组讲清,照着敲就能摸清一台机器的全部家底。
一、系统版本与内核
uname -a # 内核版本 + 架构 + 主机名,最常用
uname -r # 只看内核版本
cat /etc/os-release # 发行版名称和版本(Ubuntu/Debian/CentOS 通用,最可靠)
hostnamectl # 系统信息汇总:发行版、内核、架构、主机名
cat /etc/redhat-release # CentOS/RHEL 老系统专用
判断系统用什么:cat /etc/os-release 里 ID=centos 或 ID=ubuntu,安装软件时选对源全靠它。
二、CPU 信息
lscpu # CPU 汇总:型号、核数、主频、架构,最直观
nproc # 逻辑 CPU 核数(脚本里取核数用它)
cat /proc/cpuinfo # 原始详情:每个核心一条
lscpu 输出重点看:
Architecture: x86_64
CPU(s): 4 ← 逻辑核数(VPS 一般显示 1/2/4)
Model name: Intel Xeon Platinum 8255C
CPU MHz: 2494.000
VPS 上 CPU(s) 和 Core(s) per socket 的含义:云厂商按 vCPU 计费,CPU(s)=4 就是 4 核,运行 top 看负载时按这个数判断是否过载。
三、内存信息
free -h # 人性化显示内存和 swap,最常用
free -m # 以 MB 显示,脚本处理方便
cat /proc/meminfo # 原始内存数据
free -h 输出解读:
total used free shared buff/cache available
Mem: 1.9G 523M 202M 8.0M 1.2G 1.3G
Swap: 0B 0B 0B
- total:总内存(VPS 显示 1.9G 是因为商家给了 2G);
- available:真正可用内存 = 空闲 + 可回收的缓存,判断内存够不够看它,别看 free;
- buff/cache:文件缓存,占用高是正常的,不够时会自动释放;
- Swap:交换分区,为 0 表示没开。
内存够不够的判断:available 长期接近 0,且 swap 频繁使用,说明内存紧张,该考虑升级或优化程序了。
四、磁盘信息
df -h # 文件系统使用情况,最常用
df -i # inode 使用情况(文件数爆满时查这个)
lsblk # 块设备树:磁盘、分区、挂载点一目了然
du -sh /var/www/* # 统计目录占用大小,找出谁吃满了磁盘
df -h 输出解读:
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 12G 27G 31% /
/dev/vdb1 100G 80G 15G 85% /data
- 根分区
/是系统盘,/data是数据盘; - Use% 超过 85% 就该清理或扩容了,别等 100% 出问题;
df -h显示 100% 但删了大文件还是满:文件被进程占用未释放,用lsof | grep deleted找出来重启对应进程。
五、网络信息
ip addr # 查看所有网卡 IP(新系统,推荐)
hostname -I # 只看 IP 地址
ss -tlnp # 查看监听端口和对应进程
ip route # 查看默认网关
curl ifconfig.me # 查看公网 IP(服务器出口 IP)
注意:ifconfig 老命令在新系统需要安装 net-tools,直接用 ip addr 即可。
六、硬件与厂商信息
dmidecode -t system # 厂商、型号、序列号(需 root)
dmidecode -t memory # 内存条信息:频率、容量、插槽
lspci # PCI 设备:显卡、网卡、磁盘控制器
lsusb # USB 设备
dmidecode 在部分云服务器上被虚拟化屏蔽,读不到是正常的,lscpu/free 的数据足够日常用。
七、运行状态与负载
uptime # 运行时间 + 负载,一行看全
top # 实时资源监控(交互式)
htop # top 增强版,更直观(需安装)
sar -u 1 3 # 每秒采样 3 次 CPU 使用率(需 sysstat 包)
uptime 输出:load average: 0.08, 0.12, 0.15,三个数分别对应 1/5/15 分钟平均负载,和核数比较:4 核机器负载低于 4 正常,长期高于 4 说明 CPU 吃紧。
八、实用组合:一条命令报告全貌
echo "=== 系统 ===" && cat /etc/os-release | head -n 2 && uname -r
echo "=== CPU ===" && lscpu | grep -E '^(CPU\(s\)|Model name)'
echo "=== 内存 ===" && free -h | head -n 2
echo "=== 磁盘 ===" && df -h | grep -v tmpfs
echo "=== 网络 ===" && ip addr | grep 'inet ' | grep -v 127.0.0.1
把这串存成 sysinfo.sh,以后买 VPS 验机、排查问题一条命令出报告。
九、常见问题
free显示内存快满了,是不是中毒了?:先看available,缓存占用的 buff/cache 会自动释放,available充足就不用慌;df -h和商家标注的容量对不上:商家按 GiB(1024)计算、系统按 GiB 显示,还有系统保留块,差 5-10% 正常;dmidecode报权限不足:需要 root 执行,加sudo;ip addr没有输出 IP:网卡没启用,ip link set eth0 up或检查云控制台网卡状态。
总结:查看 Linux 系统信息就记这五组命令——系统版本用 cat /etc/os-release,CPU 用 lscpu,内存用 free -h(看 available),磁盘用 df -h,网络用 ip addr。再配合 uptime 看负载、ss -tlnp 看端口,一台服务器从硬件到运行状态全部心里有数。




