如何查询Linux服务器功率? (查询linux服务器功率)

当你部署了一个Linux服务器时,有时你需要获取服务器的功率信息。这是因为功率是服务器耗电量的度量,通过了解服务器的功率可以帮助你了解服务器的性能和优化服务器的能源效率。那么如何查询Linux服务器的功率呢?下面将会介绍三种查询方式。

方式一:使用Linux下的powerstat命令进行查询

Powerstat是一个用于检测系统的能源消耗和功耗的工具。它是在Linux的ACPI(高级配置和电源管理接口)框架上构建的。该工具可以记录并报告系统各个方面的能源消耗。以下是使用Powerstat命令进行查询服务器功耗的步骤:

1.安装Powerstat

要使用Powerstat,你必须首先在你的Linux服务器上安装它。你可以使用以下命令在Ubuntu / Debian上安装:

sudo apt-get install powerstat

如果你使用的是Redhat / CentOS等,则使用以下命令进行安装:

sudo yum install powerstat

2.运行Powerstat

打开终端并键入以下命令:

sudo powerstat

此命令将启动Powerstat并显示服务器的功率信息。运行后,你将看到以下内容:

执行 14s 次数 : 183

功耗平均值 (ACPI estimate) : 17.08W

功耗更大值 (ACPI estimate): 19.53W ( 4.2% CPU负载 )

功耗最小值 (ACPI estimate): 5.67W ( 0.0% CPU负载 )

Average workload power: 5.7W

更大负载功耗 : 14.6W

预估峰值功耗: 19.5W

3.解释Powerstat的结果

在上述输出结果中,功耗平均值是估算的服务器功率值,它衡量的是将来的功耗。而服务器预估的峰值功耗是服务器驱动了所有设备运转的估计功率。更大负载功耗是估计服务器耗电的更大值,在CPU运行满负载时的更大值。

方式二:使用Intel PowerGadget插件进行查询

Intel PowerGadget是一个插件工具,可以用于检测设备电源消耗和功耗。此插件可以在服务器和Windows和Mac操作系统上运行。下面将介绍如何使用PowerGadget插件在Linux服务器上查询功耗值。

1.下载Intel PowerGadget插件

Intel PowerGadget插件可以从Intel官网上得到。使用以下命令来解压下载的文件:

sudo tar xvf Power_Gadget_Linux_*.tar.gz

2.在服务器上运行PowerGadget命令

进入Power_Gadget_Linux_Release_Vx.x.x.x目录中。运行以下命令:

sudo ./power_gadget -r 1 > result.txt

此命令将记录服务器的功耗,1代表每秒钟记录一次功耗值。功耗结果将存储在result.txt文件中。

3.查看PowerGadget结果

使用以下命令查看记录的功耗结果:

cat result.txt

通过查看result.txt文件,可以获得PowerGadget插件查询到的功率数据。

方式三:使用HWiNFO插件进行查询

HWiNFO是一个基于Windows和Linux的硬件信息检测和监测工具。该工具可以检测和监测CPU、主板、声卡、网卡、显卡、电池等设备的信息。以下是如何使用HWiNFO插件在Linux服务器上查询功耗值的步骤。

1.下载并安装HWiNFO插件

访问HWiNFO官网并下载Linux版本的插件。然后使用以下命令进行安装:

sudo unzip hwinfo_linux_vx_.zip

sudo chmod +x hwinfo_XXXX

2.运行HWiNFO插件

进入hwinfo_XXXX/bin目录并运行以下命令:

sudo ./hwinfo

该命令将启动HWiNFO并开始读取服务器硬件设备的信息。你可以使用键盘的方向键浏览相关信息。在Power数据标签页上,将会有服务器的功耗信息。

3.查看服务器功率信息

在Power数据标签页上,你可以查看服务器的功率信息,例如:功率消耗、功率消耗更大值、功率消耗最小值和估计功率消耗等。

结论

通过上述三种查询服务器功率的方式,可以轻松的了解服务器的功率信息,并且可以更好的了解服务器的性能和优化服务器的能源效率。不同方式的查询对于Linux服务器的版本,硬件设备或范式的限制不同。因此使用不同的查询方式获得的结果也可能会有所不同。但都可以让我们了解服务器功率的基本信息。

相关问题拓展阅读:

linux下怎么查询服务器的信息

dmidecode

1,Linux下可以在/proc/cpuinfo中看到每个cpu的详细信息。但是对于双核的cpu,在cpuinfo中会看到两个cpu。常常会让人误以为是两个单核的cpu。

其实应该通过Physical Processor ID来区分单核和双核。而Physical Processor ID可以从cpuinfo或者dmesg中找到. flags 如果有 ht 说明支持超线程技术 判断物理CPU的个数可以查看physical id 的值,相同则为同一个物理CPU

2,查看内存大小:

cat /proc/meminfo |grep MemTotal

3,其他一些可以查看详细linux系统信息的命令和方法:

uname -a # 查看内核/操作系统/CPU信息的linux系统信息命令

head -n 1 /etc/issue # 查看操作系统版本,是数字1不是字母L

cat /proc/cpuinfo # 查看CPU信息的linux系统信息命令

hostname # 查看计算机名的linux系统信息命令

lspci -tv# 列出所有PCI设备

lsu -tv# 列出所有USB设备的linux系统信息命令

lod # 列出加载的内核模块

env # 查看环境变量资源

free -m # 查看内存使用量和交换区使用量

df -h # 查看各分区使用情况

du -sh# 查看指定目录的大小

grep MemTotal /proc/meminfo # 查看内存总量

grep MemFree /proc/meminfo # 查看空闲内存量

uptime # 查看系统运行时间、用户数、负载

cat /proc/loadavg # 查看系统负载磁盘和分区

mount | column -t # 查看挂接的分区状态

fdisk -l # 查看所有分区

swapon -s# 查看所有交换分区

hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)

dmesg | grep IDE# 查看启动时IDE设备检测状况网络

ifconfig # 查看所有网络接口的属性

iptables -L# 查看防火墙设置

route -n # 查看路由表

netstat -lntp# 查看所有监听端口

netstat -antp# 查看所有已经建立的连接

netstat -s# 查看网络统计信息进程

ps -ef # 查看所有进程

top # 实时显示进程状态用户

w# 查看活动用户

id# 查看指定用户信息

last # 查看用户登录日志

cut -d: -f1 /etc/passwd # 查看系统所有用户

cut -d: -f1 /etc/group # 查看系统所有组

crontab -l# 查看当前用户的计划任务服务

chkconfig –list# 列出所有系统服务

chkconfig –list | grep on # 列出所有启动的系统服务程序

rpm -qa # 查看所有安装的软件包

cat /proc/cpuinfo :查看CPU相关参数的linux系统命令

cat /proc/partitions :查看linux硬盘和分区信息的系统信息命令

cat /proc/meminfo :查看linux系统内存信息的linux系统命令

cat /proc/version :查看版本,类似uname -r

cat /proc/ioports :查看设备io端口

cat /proc/interrupts :查看中断

cat /proc/pci :查看pci设备的信息

cat /proc/swaps :查看所有swap分区的信息

怎么查看linux服务器的配置

几个cpu

Java代码

more /proc/cpuinfo |grep “physical id”|uniq|wc -l

每个cpu是几核(假设cpu配置相同)

Java代码

more /proc/cpuinfo |grep “physical id”|grep “0”|wc -l

Java代码

cat /proc/cpuinfo | grep processor

1. 查看物理CPU的个数

Java代码

#cat /proc/cpuinfo |grep “physical id”|sort |uniq|wc -l

2. 查看逻辑CPU的个数

Java代码

#cat /proc/cpuinfo |grep “processor”|wc -l

3. 查看CPU是几核

Java代码

#cat /proc/cpuinfo |grep “cores”|uniq

4. 查看CPU的主频

Java代码

#cat /proc/cpuinfo |grep MHz|uniq

Java代码

# uname -a

Linux euis1 2.6.9-55.ELp #1 P Fri Apr 20 17:03:35 EDT 2023 i686 i686 i386 GNU/Linux

(查看当前操作系统内核信息)

Java代码

# cat /etc/issue | grep Linux

Red Hat Enterprise Linux AS release 4 (Nahant Update 5)

(查看当前操作系统发行版信息)

Java代码

# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

Intel(R) Xeon(R) CPUE@ 2.33GHz

(看到有8个逻辑CPU, 也知道了CPU型号)

Java代码

# cat /proc/cpuinfo | grep physical | uniq -c

physical id : 0

physical id : 1

(说明实际上是两颗4核的CPU)

Java代码

# getconf LONG_BIT

32

(说明当前CPU运行在32bit模式下, 但不代表CPU不支持64bit)

Java代码

# cat /proc/cpuinfo | grep flags | grep ‘ lm ‘ | wc -l

8

(结果大于0, 说明支持64bit计算. lm指long mode, 支持lm则是64bit)

如何获得CPU的详细信息:

linux命令:

Java代码

cat /proc/cpuinfo

用命令判断几个物理CPU,几个核等:

逻辑CPU个数:

Java代码

# cat /proc/cpuinfo | grep “processor” | wc -l

物理CPU个数:

Java代码

# cat /proc/cpuinfo | grep “physical id” | sort | uniq | wc -l

每个物理CPU中Core的个数:

Java代码

# cat /proc/cpuinfo | grep “cpu cores” | wc -l

是否为超线程?

如果有两个逻辑CPU具有相同的”core id”,那么超线程是打开的。

每个物理CPU中逻辑CPU(可能是core, threads或both)的个数:

Java代码

# cat /proc/cpuinfo | grep “siblings”

查看文件夹大小

Java代码

du -sh *

列出所有端口

Java代码

netstat -a | more

列出所有 tcp 端口

Java代码

netstat -at

列出所有 udp 端口

Java代码

netstat -au

不显示主机,端口和用户名

Java代码

netstat -an | grep

输出中显示 PID 和进程名称

Java代码

netstat -p

显示 TCP 或 UDP 端口的统计信息

Java代码

# netstat -st

# netstat -su

显示所有端口的统计信息

Java代码

netstat -s

只显示监听端口

Java代码

netstat -l

只列出所有监听 tcp 端口

Java代码

netstat -lt

只列出所有监听 udp 端口

Java代码

netstat -lu

只列出所有监听 UNIX 端口

Java代码

netstat -lx

持续输出 netstat 信息

Java代码

netstat -c

显示系统不支持的地址族

Java代码

netstat –verbose

显示核心路由信息

Java代码

netstat -r

找出程序运行的端口

Java代码

netstat -ap | grep ssh

找出运行在指定端口的进程

Java代码

netstat -an | grep ‘:80’

显示网络接口列表

Java代码

netstat -i

显示详细信息,像是 ifconfig 使用

Java代码

netstat -ie

查看连接某服务端口最多的的IP地址

Java代码

netstat -nat | grep “192.168.1.15:22” |awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -nr|head

TCP各种状态列表

Java代码

netstat -nat |awk ‘{print $6}’

先把状态全都取出来,然后使用uniq -c统计,之后再进行排序。

Java代码

netstat -nat |awk ‘{print $6}’|sort|uniq -c

Java代码

netstat -nat |awk ‘{print $6}’|sort|uniq -c|sort -rn

需要解决更多linux问题,详情请看《Linux就该这样学》

关于查询linux服务器功率的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 如何查询Linux服务器功率? (查询linux服务器功率)