10 系统信息
学习目标
- 能查看系统版本、主机名和运行时间。
- 能查看 CPU、内存、磁盘空间和磁盘设备。
- 能快速判断机器资源是否紧张。
命令总览
| 命令 | 用途 | 含义 | 基本用法 | 例子 |
|---|---|---|---|---|
uname | 查看系统内核信息 | unix name,显示内核和架构信息 | uname [选项] | uname -a |
hostname | 查看或设置主机名 | 显示当前机器名称 | hostname | hostname |
uptime | 查看运行时间和负载 | 显示已运行多久、用户数和 load average | uptime | uptime |
date | 查看或设置时间 | 显示当前日期时间 | date | date |
free | 查看内存 | 显示内存和 swap 使用情况 | free [选项] | free -h |
df | 查看磁盘空间 | disk free,查看文件系统剩余空间 | df [选项] | df -h |
du | 查看目录占用 | disk usage,统计文件或目录大小 | du [选项] 路径 | du -sh -- . |
lsblk | 查看块设备 | list block devices,列出磁盘和分区 | lsblk | lsblk |
lscpu | 查看 CPU 信息 | list CPU,显示 CPU 架构和核心数 | lscpu | lscpu |
常用场景
查看系统和主机信息:
uname -a
hostname
date
uptime查看内存:
free -h查看磁盘空间:
df -h
df -ih查看当前目录下各项大小:
du -sh -- ./*查看磁盘和 CPU:
lsblk
lscpu新手注意
-h通常表示 human readable,会用 KB、MB、GB 显示大小。df -h看文件系统剩余空间,du -sh看目录实际占用。df -i看 inode;“还有容量”不代表仍能创建文件。du -sh -- ./*不含隐藏项,且在文件很多的大目录下可能较慢;脚本要明确扫描范围。uptime的 load average 需要结合 CPU 核心数理解,不是简单百分比。lsblk只看设备和分区,不要随便对磁盘执行格式化或挂载操作。free、ps、uptime常来自 procps-ng;lsblk、lscpu来自 util-linux。最小容器与 macOS/BSD 可能没有。- Linux 通常会利用空闲内存做缓存,排障更关注
available、swap 和持续趋势,而不是只看free一列。 - 容器内命令可能显示 namespace、cgroup 或宿主机的不同视图;不能自动把输出当成容器限额。
只读资源证据练习
uname -srm
uptime
free -h
df -h -- .
df -ih -- .
du -sh -- .
lscpu | sed -n '1,12p'报告必须区分瞬时快照、趋势和未知项;不要仅凭一次 load 或内存输出宣称根因。