Linux下查询CPU,内存,磁盘及操作系统

查询 CPU 核数

复制nproc 

结果为

复制4

查询内存

复制free -h # 以人类(human)可读的方式展示

结果为

复制              total        used        free      shared  buff/cache   available
Mem:           15Gi       2.2Gi       327Mi       1.0Mi        13Gi        13Gi
Swap:         8.0Gi       444Mi       7.6Gi

内存总量应该为 16G,不知道这里为什么显示 15G。

free 与 available

在 free 命令的输出中,有一个 free 列,同时还有一个 available 列。这二者到底有何区别?
free 是真正尚未被使用的物理内存数量。至于 available 就比较有意思了,它是从应用程序的角度看到的可用内存数量。Linux 内核为了提升磁盘操作的性能,会消耗一部分内存去缓存磁盘数据,就是我们介绍的 buffer 和 cache。所以对于内核来说,buffer 和 cache 都属于已经被使用的内存。当应用程序需要内存时,如果没有足够的 free 内存可以用,内核就会从 buffer 和 cache 中回收内存来满足应用程序的请求。所以从应用程序的角度来说,available = free + buffer + cache。请注意,这只是一个很理想的计算方式,实际中的数据往往有较大的误差。

查询磁盘

复制df -h

结果为

复制Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        1.9G     0  1.9G   0% /dev
tmpfs           1.9G   24K  1.9G   1% /dev/shm
tmpfs           1.9G  1.4M  1.9G   1% /run
tmpfs           1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/vda1        79G   45G   31G  59% /
tmpfs           379M     0  379M   0% /run/user/0
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/9c1a9e7f7183ad892458456a24cca89d771cefbbdcd89a80348289d568cd3bd1/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/dc49567251d2ad47a3b2603c0c1e69cf5e414b8ae7c059fd120244c486e57ea8/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/fc5dd6bf52323469018cd5d1da29923f55c2a8eed85c8983f618dd191701091b/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/ba049e03e85a766542d15db8d6930d94f25b98424a853b04787e993edbecb981/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/e15371bd5c5d3106f1997d6b340c9498a072e55da938427091d849e2ba674273/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/55f1f029d82f5ad6c21978b076dfbd634a45f5bb4a8a658c9935383ef063c672/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/0b4180ec3c8e1c5780ab1e65290905fe06cad1e8e5b84288ebc4437fbff93f4f/merged

显示的内容参数含义为

内容参数 含义
Filesystem 文件系统
Size 分区大小
Used 已用容量
Avail 还可用的容量
Use% 已用百分比
Mounted on 挂载点
复制df -h --total  # 可以显示每列的总和
复制Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        1.9G     0  1.9G   0% /dev
tmpfs           1.9G   24K  1.9G   1% /dev/shm
tmpfs           1.9G  1.4M  1.9G   1% /run
tmpfs           1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/vda1        79G   45G   31G  59% /
tmpfs           379M     0  379M   0% /run/user/0
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/9c1a9e7f7183ad892458456a24cca89d771cefbbdcd89a80348289d568cd3bd1/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/dc49567251d2ad47a3b2603c0c1e69cf5e414b8ae7c059fd120244c486e57ea8/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/fc5dd6bf52323469018cd5d1da29923f55c2a8eed85c8983f618dd191701091b/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/ba049e03e85a766542d15db8d6930d94f25b98424a853b04787e993edbecb981/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/e15371bd5c5d3106f1997d6b340c9498a072e55da938427091d849e2ba674273/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/55f1f029d82f5ad6c21978b076dfbd634a45f5bb4a8a658c9935383ef063c672/merged
overlay          79G   45G   31G  59% /var/lib/docker/overlay2/0b4180ec3c8e1c5780ab1e65290905fe06cad1e8e5b84288ebc4437fbff93f4f/merged
total           637G  355G  256G  59%

查询操作系统信息

复制cat /proc/version

结果为

复制Linux version 5.4.0-169-generic (buildd@lcy02-amd64-102) (gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.2)) #187-Ubuntu SMP Thu Nov 23 14:52:28 UTC 2023

可以看到,操作系统版本为 ubuntu1~20.04,结果也可能为如下信息

复制Linux version 3.10.0-1160.11.1.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Fri Dec 18 16:34:56 UTC 2020

这个时候可以再查看

复制cat /etc/redhat-release

结果为

复制CentOS Linux release 7.6.1810 (Core)

操作系统为 Centos 7.6

参考

linux下free命令详解
Linux查看系统基本信息,版本信息(最全版)
linux 查看cpu核数、内存总容量、硬盘总容量

posted @   strongmore  阅读(84)  评论(0编辑  收藏  举报
编辑推荐:
· 聊一聊坑人的 C# MySql.Data SDK
· 使用 .NET Core 实现一个自定义日志记录器
· [杂谈]如何选择:Session 还是 JWT?
· 硬盘空间消失之谜:Linux 服务器存储排查与优化全过程
· JavaScript是按顺序执行的吗?聊聊JavaScript中的变量提升
阅读排行:
· 好消息,在 Visual Studio 中可以免费使用 GitHub Copilot 了!
· 工作中这样用MQ,很香!
· 使用 .NET Core 实现一个自定义日志记录器
· 没事别想不开去创业!
· 聊一聊坑人的 C# MySql.Data SDK
点击右上角即可分享
微信分享提示