操作系统内核与发行版本号
通过
uname
命令输出Linux内核版本及其他基础系统信息使用
uname -a
命令输出完整信息使用
uname -r
命令输出内核版本号
通过查看
/etc
目录下的各release
文件输出当前系统发行版本号(不同系统下具体文件及输出信息可能有差异)。以CentOS系统为例,可以看到/etc
目录包含如下release
文件通过查看
centos-release
文件输出CentOS发行版本号通过查看
centos-release-upstream
文件也可以看到CentOS的系统克隆源RHEL(Red Hat Enterprise Linux)的发行版本号
逻辑/物理CPU基本信息
通过
lscpu
命令输出CPU的基本信息CPU(s)
显示的是逻辑CPU数
通过查看
/proc/cpuinfo
文件可输出各CPU的详细信息通过命令
cat /proc/cpuinfo | grep name | cut -d: -f2 | uniq -c
输出逻辑CPU数量及型号参数如图显示,该设备配置4核(逻辑)CPU,型号“Intel(R) Xeon(R) CPU E7-8850 v2 @ 2.30GHz”
通过命令
cat /proc/cpuinfo | grep "physical id" | uniq -c
输出物理CPU信息,根据physical id
判断物理CPU数量如图显示,该设备实际配置2个物理CPU,且各自包含2个物理核(即双核CPU)
内存与硬盘使用情况
通过
free -h
命令查看当前系统内存使用情况图中
Mem
行即为物理内存使用情况(约值),其中shared
列数值可忽略,可见:- 该设备内存总大小为15GB,实际使用9.3GB,空闲内存435MB,缓冲区内存5.8G,实际可用5.1GB;
- 各列数值可满足如下公式:
Mem[total] = Mem[used] + Mem[free] + Mem[buff/cache]
; - 判断内存剩余情况,应主要参考
available
列数值(buff/cache
列中数值表示用于设备/文件缓存的内存大小,其中大部分能被系统快速回收,因此available
列数值远大于free
列数值)
图中
Swap
行表示的是交换内存,实际是用于暂时存放不活跃内存数据的硬盘空间
通过
df -Th
命令查看当前系统硬盘使用情况特殊情况:
df
与du
统计结果差异巨大- 命令差异:
du
命令调用fstat
逐个获取文件大小,df
命令直接调用statfs
获取分区超级块信息; - 问题情景:当存在进程持有一个已删除文件的句柄时;
- 原因分析:文件删除后,
du
命令对应不会再进行统计,但仍有进程持有其句柄,分区超级块不会更改,则df
命令统计数据有误; - 解决办法:
- 找到并结束持有已删除文件句柄的进程;
对于日志文件,可使用清空代替删除操作
cat /dev/null > [targetLogFile]
- 命令差异: