【linux】Ubuntu 查询CPU、GPU、硬盘、内存等硬件信息

这篇具有很好参考价值的文章主要介绍了【linux】Ubuntu 查询CPU、GPU、硬盘、内存等硬件信息。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

环境

硬件:通用PC /Jetson Xavier NX 套件
系统:Ubuntu 20.04
软件 :

获取CPU信息

在Ubuntu系统中,可以通过在终端执行以下命令来获取CPU的名称:

lscpu

如果需要精准查找CPU名称 、核心数、厂商可以使用

查看CPU名称

lscpu | grep "Model name" 

查看CPU核心数

lscpu | grep "CPU(s)"

查看CPU厂商

lscpu | grep "Vendor ID" 

查看CPU总使用率

如果需要获取CPU使用率,使用mpstat命令,它是sysstat包的一部分。首先,确保安装了sysstat包。如果没有安装,可以通过以下命令安装:

sudo apt-get update
sudo apt-get install sysstat

然后,运行mpstat来查看CPU使用率:

mpstat  1

这个命令会每1秒更新一次CPU使用率的信息。可以看到每个CPU的使用详情,包括用户模式(%usr)、系统模式(%sys)等的使用率。

mpstat 返回值 每列表示什么
mpstat命令是sysstat包的一部分,用于显示各个可用CPU的统计信息。当运行mpstat时,它会显示一系列的列,每列都有特定的含义。下面是mpstat输出的一些常见列及其含义:

表头 说明
%usr 在用户级别(应用程序)运行时占用的CPU百分比,不包括优先级调整的时间。
%nice 在用户级别运行且优先级为nice时占用的CPU百分比。
%sys 在系统(内核)级别运行时占用的CPU百分比。
%iowait CPU等待输入输出完成时间的百分比。
%irq 处理硬件中断请求时占用的CPU百分比。
%soft 处理软件中断请求时占用的CPU百分比。
%steal 在虚拟化环境中,其他操作系统占用的CPU时间百分比。
%guest 运行虚拟处理器时占用的CPU时间百分比。
%gnice 运行niced guest时占用的CPU时间百分比。
%idle CPU空闲时间的百分比。

默认情况下,mpstat显示所有CPU的平均使用情况。如果想看到每个CPU核心的统计信息,可以使用mpstat -P ALL命令。

可以通过,运行mpstat命令并通过awk提取总CPU使用率:

mpstat | awk '/all/ {print 100 - $NF"%"}'

这个命令的解释如下:
mpstat:运行mpstat命令,它会输出CPU的使用情况。
awk ‘/all/ {print 100 - $NF"%"}’:使用awk搜索包含“all”的行,这行包含了所有CPU的平均使用情况。$NF表示最后一个字段(在默认输出中,这是空闲时间的百分比),100 - $NF计算出总的CPU使用率,然后打印出来。
这个命令会输出类似12.34%的CPU总使用率。
请注意,这个方法提供的是一个瞬时快照的CPU使用率,而CPU使用率是随时间动态变化的。如果需要监控CPU使用率的变化趋势,可能需要定期运行这个命令,或者使用更高级的监控工具。

查看每个CPU核心的使用率

可以使用mpstat命令配合-P ALL选项。这会显示系统中每个CPU核心的详细统计信息,包括每个核心的使用率。

mpstat -P ALL 1

获取GPU信息

在Ubuntu系统中,查看GPU信息可以通过多种方式,以下是一些常用的方法:

  1. 使用lspci命令:
    这个命令会列出所有的PCI设备,包括GPU。可以通过grep过滤出GPU相关的信息。
lspci | grep VGA
  1. 使用nvidia-smi命令 (对于NVIDIA GPU):
    如果系统装有NVIDIA的GPU,可以使用nvidia-smi工具来查看GPU的详细信息
nvidia-smi
  1. 使用glxinfo命令:
    这个命令需要系统安装了mesa-utils包。
sudo apt-get install mesa-utils
glxinfo | grep "OpenGL renderer"

获取硬盘信息

在Ubuntu系统中,要获取系统挂载的硬盘信息,可以使用df命令或mount命令。这些命令能够显示当前挂载的文件系统的详细信息,包括设备名、挂载点、使用情况等。

df -h

获取挂载到根目录的硬盘的设备名

要获取挂载到根目录(/)的硬盘的设备名,可以使用df命令,并通过文本处理命令如awk来提取设备名。在终端中执行以下命令:

df / | awk 'NR==2{print $1}'

这个命令的解释如下:
df /:显示根目录(/)的文件系统磁盘空间使用情况。
awk ‘NR==2{print $1}’:使用awk命令处理df的输出。NR==2选择第二行(因为df命令的输出的第一行是标题行),print $1则打印这一行的第一个字段,即设备名。
执行这个命令后,将得到挂载到根目录的硬盘的设备名,例如/dev/sda1或类似的名称

按GB为单位显示

要让df命令的输出以GB为单位显示,可以使用-BG选项。这会使得所有的容量数值以GB为单位展示。如果想要查看所有文件系统的使用情况,并且结果以GB为单位,可以这样做:

df -BG

获取系统所在盘的总空间

df / -BG | awk 'NR==2{print $2}'

获取系统所在盘的剩余空间

df / -BG | awk 'NR==2{print $4}'

获取系统所在盘的使用率

df / -BG | awk 'NR==2{print $5}'

获取系统所在盘的设备节点

lsblk -o MOUNTPOINT,PKNAME | grep ' /$' | awk '{print $2}'

这个命令的解释如下:
lsblk -o MOUNTPOINT,PKNAME:lsblk命令列出所有设备,-o选项指定输出特定的列,这里选择了MOUNTPOINT(挂载点)和PKNAME(父设备名称,即整个硬盘的设备节点)。
grep ’ /$':使用grep命令过滤出挂载点为根目录(/)的行。/$确保匹配的是根目录,而不是包含/的其他目录。
awk ‘{print $2}’:使用awk命令打印每行的第二个字段,即父设备名称,它代表的是挂载到根目录的硬盘的整个设备节点。
执行这个命令后,将得到挂载到根目录的硬盘的设备节点名称,如/dev/sda,而不是分区节点(如/dev/sda1)。这样,就可以直接获取到根目录所在硬盘的整个设备节点。

获取系统所在盘详细描述

sudo fdisk -l $(lsblk -o MOUNTPOINT,PKNAME | grep ' /$' | awk '{print "/dev/"$2}')

这个命令的解释如下:
$(lsblk -o MOUNTPOINT,PKNAME | grep ’ /$’ | awk ‘{print “/dev/”$2}’):这部分命令找出挂载到根目录(/)的硬盘的父设备节点(即整个硬盘的设备节点),并在其前面加上/dev/来形成完整的设备文件路径。例如,如果lsblk命令的输出是sda,那么这部分命令的结果将是/dev/sda。
sudo fdisk -l:fdisk命令用于查看和修改磁盘分区表,-l选项告诉fdisk列出分区表信息。这需要超级用户权限,因此使用了sudo。通过这种方式,可以直接查看挂载到根目录的硬盘的分区表信息,而无需手动输入设备节点。

获取硬盘disk model信息

如果需要继续输出disk model信息,可以使用

sudo fdisk -l $(lsblk -o MOUNTPOINT,PKNAME | grep ' /$' | awk '{print "/dev/"$2}') | grep 'Disk model' | awk -F': ' '{print $2}'

这个命令的解释如下:

  1. sudo fdisk -l $(…):这部分命令找出挂载到根目录的硬盘的设备节点,并使用fdisk -l列出该硬盘的详细信息。
  2. grep ‘Disk model’:使用grep命令过滤出包含“Disk model”的行。这假设硬盘模型信息在fdisk的输出中以“Disk model”作为前缀。根据fdisk的版本和输出,这个关键字可能有所不同,可能需要相应地调整。
  3. awk -F’: ’ ‘{print $2}’:使用awk命令并设置字段分隔符为“: ”(冒号加空格),然后打印第二个字段,即硬盘模型的值。
    请注意,这个方法的有效性取决于fdisk命令输出的具体格式,这可能会因不同的系统和fdisk版本而异。如果“Disk model”不是正确的关键字,可能需要根据实际fdisk输出调整grep过滤的关键字。

获取内存信息

要获取系统内存信息,可以使用free命令。这个命令提供了关于系统内存使用情况的信息,包括物理内存、交换空间等。

free -h

这个命令的输出大致如下:

表头 说明
total 显示总计的物理内存或交换空间大小。
used 显示已使用的内存或交换空间大小。
free 显示未被使用的内存或交换空间大小。
shared 显示多个进程共享的内存总量(仅适用于某些系统)。
buff/cache 显示被缓冲或缓存的内存大小。
available 估算可用于启动新应用程序的内存大小,而不需要交换。

这提供了一个快速的系统内存使用概览,包括的物理内存和交换空间的使用情况

将输出信息前面的空格去掉

可以使用

sed 's/^ *//'

这里的sed 's/^ *//'命令查找每行开头的一个或多个空格(^ *)并将它们替换为无(即删除它们)
例如:

lsblk -o MOUNTPOINT,PKNAME | grep ' /$' | awk '{print $2}' | sed 's/^ *//'

OK!
至此,问题解决。欢迎留言交流文章来源地址https://www.toymoban.com/news/detail-860786.html

到了这里,关于【linux】Ubuntu 查询CPU、GPU、硬盘、内存等硬件信息的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • go获取服务器信息(主机、CPU、内存、硬盘)

    使用 github.com/shirou/gopsutil 库来获取机器信息,您可以按照以下步骤进行:

    2024年02月09日
    浏览(58)
  • Java 使用 oshi 获取当前服务硬件信息(操作系统、CPU、内存、磁盘)

    这里需要引入两个依赖包: HardWareUtil: CpuInfo: JvmInfo: MemoryInfo: SysFile: SystemDetails: SizeEnum: 控制台输出: CpuInfo(cpuNum=16, total=16501.0, sys=329.0, used=657.0, wait=0.0, free=15419.0) JvmInfo(total=2.64241152E8, max=4.211081216E9, free=2.5297664E8, version=11.0.18, home=C:Program FilesJavajdk-11) SystemDetails(

    2024年02月05日
    浏览(59)
  • Linux查看CPU、GPU内存使用

    查看CPU内存使用情况 1、输入命令:top,显示如下 2、输入命令:htop,显示如下 若没有该命令,需要先安装,ubuntu安装命令为: centos安装命令为: 查看GPU内存使用情况 1、输入命令: nvidia-smi ,显示如下,该命令只能显示一次。 2、实时显示 1)使用watch命令, 按照指定间隔刷

    2023年04月12日
    浏览(42)
  • Ubuntu 系统实时查看CPU温度和GPU温度

    Ubuntu 系统实时查看CPU和GPU温度: 安装 lm-sensors : 实时查看CPU和GPU 的温度(每1s刷新一次): 其中,Core 0、4、8… 是CPU的核心,第一个温度值是当前的实时温度, high=100℃ 表示超过100℃ 就表示CPU温度高, crit=100℃ 表示超过100℃ 就CPU就会烧坏。 psensor 可以可视化得实时显示

    2024年02月07日
    浏览(47)
  • 命令查看Linux服务器内存、CPU、显卡、硬盘使用情况

    使用命令:free -m 大致结果类似下图: 内存占用情况 参数解释: Mem行(单位均为M): total:内存总数 used:已使用内存数 free:空闲内存数 shared:当前废弃不用 buffers:缓存内存数(Buffer) cached:缓存内舒数(Page) (-/+ buffers/cache)行: (-buffers/cache): 真正使用的内存数,指

    2024年02月04日
    浏览(73)
  • Ubuntu 18.04 安装ffmpeg(支持GPU硬件加速)

    1:安装前请自行安装nvidia驱动和cudu cudnn 查看cuda版本 2:安装nv-codec-hearers 官网: https://docs.nvidia.com/video-technologies/video-codec-sdk/ffmpeg-with-nvidia-gpu/ 3:安装ffmpeg编码库 4:安装ffmpeg 5:建立软连接 增加安装目录的动态链接库 6 检查硬件加速 7:添加库连接 8 :运行实例检查 9:卸载

    2023年04月18日
    浏览(113)
  • Linux CentOs7 监控CPU 内存 硬盘IO读写,网络负载,CPU温度等

    一般我们都知道TOP命令可以加载服务器的负载详情,但界面不太友好。因此用到htop 我们开发的软件服务需要在服务器上运行,所以服务器性能代表了软件的性能上限,因此服务器性能调优是个十分重要的环节,然而大部分同学对服务器性能调优关注的较少,今天从3个部分对

    2024年02月07日
    浏览(49)
  • 如何检查Linux硬盘大小、类型和硬件详细信息?

    在Linux系统中,了解硬盘的大小、类型和硬件详细信息对于系统管理和故障排除非常重要。本文将详细介绍如何使用命令行工具来检查Linux硬盘的大小、类型和硬件详细信息。 要检查Linux硬盘的大小,可以使用 lsblk 命令。该命令显示了系统中所有块设备(包括硬盘和其他存储

    2024年02月10日
    浏览(63)
  • Python 获取windows下硬件数据信息(CPU,内存,英特尔、英伟达、AMD显卡使用率及详细信息)

    前言:最近一直在做关于显卡数据采集的调研工作,也在github上看到了一些三方库比如Python和golang的psutil, python: gpustart,再或者通过wmi或者windowsApi等底层接口 但是都只能获取到显卡的名称以及厂家信息等 无法真正意义上获取到显卡占用率等数据 在或者只能获取到英伟达的显卡

    2024年02月16日
    浏览(57)
  • ubuntu22.04下使用conda安装pytorch(cpu及gpu版本)

    本文介绍了conda下安装cpu、gpu版本的pytorch;并介绍了如何设置镜像源 系统:ubuntu22.04 显卡:RTX 3050 依赖工具:miniconda 注意:默认conda安装pytorch的是cpu版本,如需要安装GPU版本的,注意直接看后面 创建一个新conda环境 新创建的环境不包含任何依赖可以使用 conda list 查看一下

    2024年02月20日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包