Linux - 查看系统基础信息的一般渠道



操作系统内核与发行版本号

  • 通过uname命令输出Linux内核版本及其他基础系统信息

    uname命令参数说明

    • 使用uname -a命令输出完整信息

      uname完整输出信息

    • 使用uname -r命令输出内核版本号

      uname输出内核版本

  • 通过查看/etc目录下的各release文件输出当前系统发行版本号(不同系统下具体文件及输出信息可能有差异)。以CentOS系统为例,可以看到/etc目录包含如下release文件

    /etc目录下的release文件

    • 通过查看centos-release文件输出CentOS发行版本号

      CentOS发行版本号

    • 通过查看centos-release-upstream文件也可以看到CentOS的系统克隆源RHEL(Red Hat Enterprise Linux)的发行版本号

      RHEL发行版本号

逻辑/物理CPU基本信息

  • 通过lscpu命令输出CPU的基本信息

    lscpu输出信息

    • CPU(s)显示的是逻辑CPU数
  • 通过查看/proc/cpuinfo文件可输出各CPU的详细信息

    • 通过命令cat /proc/cpuinfo | grep name | cut -d: -f2 | uniq -c输出逻辑CPU数量及型号参数

      输出逻辑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数量

      输出物理CPU信息

      如图显示,该设备实际配置2个物理CPU,且各自包含2个物理核(即双核CPU

内存与硬盘使用情况

  • 通过free -h命令查看当前系统内存使用情况

    free查看内存使用

    • 图中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查看硬盘使用

    • 特殊情况:dfdu统计结果差异巨大

      • 命令差异:du命令调用fstat逐个获取文件大小df命令直接调用statfs获取分区超级块信息
      • 问题情景:当存在进程持有一个已删除文件的句柄时;
      • 原因分析:文件删除后,du命令对应不会再进行统计,但仍有进程持有其句柄,分区超级块不会更改,则df命令统计数据有误;
      • 解决办法:
        • 找到并结束持有已删除文件句柄的进程;

        • 对于日志文件,可使用清空代替删除操作

          cat /dev/null > [targetLogFile]


posted @ 2018-12-18 17:05  JustKidding  阅读(211)  评论(0编辑  收藏  举报