国产浪潮服务器:风扇免手动调节脚本

简介:浪潮集团,是中国本土顶尖的大型IT企业之一,中国领先的云计算、大数据服务商。浪潮集团旗下拥有浪潮信息、浪潮软件、浪潮国际,业务涵盖云计算、大数据、工业互联网等新一代信息技术产业领域,为全球120多个国家和地区提供IT产品和服务,浪潮致力于成为世界一流的新一代信息技术产业龙头企业,经济社会数字化转型的优秀服务商,新型基础设施建设的骨干企业。浪潮服务器面向智慧时代所设计,以“硬件重构+软件定义”技术理念, 为云计算、大数据和人工智能提供高度定制化的承载平台,适合云数据中心部署环境, 赋能各行业的数字化、智慧化转型与重塑。

历史攻略:

Python:requests + BMC 获取和设置服务器风速

Python:requests + bmc开机、关机、优雅重启、强制重启

从入门到精通:IPMITool 的详尽指南

案例源码:仅供参考,实际请按相关BMC信息配置

# -*- coding: utf-8 -*-
# time: 2023/12/06 15:36
# file: fan.py
# 公众号: 玩转测试开发
import re
import requests
import warningswarnings.filterwarnings("ignore")class Fans(object):headers = {"content-type": "application/json","User-Agent": r"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36 Edg/117.0.2045.60",}def __init__(self, host, username, password):self.host = hostself.username = usernameself.password = passworddef get_random(self):url = f"https://{self.host}/api/randomtag"res = requests.get(url, headers=self.headers, verify=False)return res.json()["random"]def get_session(self, random_string):url = f"https://{self.host}/api/session"self.headers["content-type"] = "application/x-www-form-urlencoded; charset=UTF-8"data = {"encrypt_flag": 0,"username": self.username,"password": self.password,"login_tag": str(random_string)}response = requests.post(url, headers=self.headers, data=data, verify=False)token = re.findall("QSESSIONID=(.*?);", response.headers["Set-Cookie"])[0]self.headers["X-Csrftoken"] = response.json()["CSRFToken"]self.headers["Cookie"] = str("lang=zh-cn;QSESSIONID=" + token + "; refresh_disable=1")self.headers["content-type"] = "application/json"def get_fans(self):url = f"https://{self.host}/api/status/fan_info"response = requests.get(url, headers=self.headers, verify=False).json()for k, v in response.items():if k == "fans":for i in v:print(i)def fans_mode(self, mode="manual"):url = f"https://{self.host}/api/settings/fans-mode"# manual - autodata = {"control_mode": mode}response = requests.put(url, headers=self.headers, json=data, verify=False)print("response:", response.text)def change_fans(self, rate=100, fans=24):for i in range(fans):url = f'https://{self.host}/api/settings/fan/{i}'data = {"duty": rate}response = requests.put(url=url, json=data, verify=False, headers=self.headers)response.encoding = "utf-8"print(f"The index {i} fan change to {response.json()['duty']} %", )if __name__ == '__main__':# e.g.bmc_host = "111.1112.113.114"username = "admin"password = "123456789"f = Fans(host=bmc_host, username=username, password=password)random_string = f.get_random()f.get_session(random_string)f.get_fans()f.fans_mode()f.change_fans(rate=100, fans=24)

运行结果:

**图片**

注意事项:

1、慎重起见,请先进行抓包,解析 http 网络接口数据,调试再使用。
2、设置时,需要先自动挡改成手动档,详见方法 fans_mode()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/225658.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【人工智能】模糊推理

模糊推理:交叉的隶属函数,方法如模糊规则中推理方法一致,step3中的每一个格子都有所应的隶属关系函数 引言:“生活中的模糊关系”模糊集合模糊集合的定义模糊集合的表示法模糊集合表示法示例 隶属函数 模糊规则模糊计算的流程 引言&#xff1…

RT-DETR 目标过线计数

使用 Ultralytics RT-DETR 进行目标计数 🚀 实际应用场景 物流水产养殖使用 Ultralytics RT-DETR 进行传送带包裹计数使用 Ultralytics RT-DETR 在海中进行鱼类计数请使用最新代码(2023年12月8日后),旧版本不支持! 示例 “目标计数示例” 目标计数 from ultralytics

Java8 IfPresent 与 forEach 的组合操作

一、需求背景 Java8的Optional接口是我们经常使用的一个接口,尤其是对对象进行判空的时候,需要经常使用到IfPresent()。 但是,如果是对List进行判空、循环的话,就稍显繁杂了,因为几乎每次对List进行操作的时候&a…

AI视频-stable-video-diffusio介绍

介绍 stbilityai/stable-video-diffusion-img2vid-xt模型,由Stability AI开发和训练的基于散度的图像到视频生成模型。该模型可以接受一张静态图像作为条件,并生成出一个短视频。 该模型通过在SVD Image-to-Video [14帧]的基础上进行微调而来,可以生成576x1024分辨…

初识Redis缓存,一文掌握Redis重要知识文集。

🏆作者简介,普修罗双战士,一直追求不断学习和成长,在技术的道路上持续探索和实践。 🏆多年互联网行业从业经验,历任核心研发工程师,项目技术负责人。 🎉欢迎 👍点赞✍评论…

存储拆分后,如何解决唯一主键问题?

之前我们讲到了分库分表,现在考虑这样一个问题:在单库单表时,业务 ID 可以依赖数据库的自增主键实现,现在我们把存储拆分到了多处,如果还是用数据库的自增主键,势必会导致主键重复。 那么我们应该如何解决…

Windows 10/11 免费安装HEVC/H.265视频扩展

将系统从 Win 10 升级到 Win 11 后,用系统自带播放器打开 HEVC (H.265编码)格式视频时,提示缺少编码器无法播放;以前可以通过浏览器访问 ms-windows-store://pdp/?ProductId9n4wgh0z6vhq 跳转到微软应用店免费安装解…

【算法】【动规】乘积为正数的最长子数组长度

跳转汇总链接 👉🔗算法题汇总链接 1.1 乘积为正数的最长子数组长度 🔗题目链接 给你一个整数数组 nums ,请你求出乘积为正数的最长子数组的长度。 一个数组的子数组是由原数组中零个或者更多个连续数字组成的数组。 请你返回乘积…

docker镜像与容器的迁移

docker容器迁移有两组命令,分别是 save & load :操作的是images, 所以要先把容器commit成镜像export & import:直接操作容器 我们先主要看看他们的区别: 一 把容器打包为镜像再迁移到其他服务器 如把mysq…

RMQ算法总结

知识概览 RMQ又叫ST表、跳表,可以用来解决区间最值问题,这里这有查询没有修改。当然,这样的问题用线段树也是可以解决的。RMQ算法本质上是倍增动态规划,它的思想是先倍增预处理再查询。f(i, j)表示从i开始,长度是的区…

【Jeecg Boot 3 - 第二天】2.1、nginx 部署 JEECGBOOT VUE3

一、场景 二、实战 ▶ 2.1、打包(build 前端) > Stage 1:修改配置文件 .env.production(作用:指向后端接口地址) > Stage 2:点击build(作用&#xff1…

【Ubuntu】Linux常用录屏软件

SimpleScreenRecorder SimpleScreenRecorder 是一款功能强大而易于使用的录屏工具,支持多种输出格式和编码器。 安装命令: sudo apt-get update sudo apt-get install simplescreenrecorder使用 SimpleScreenRecorder: 打开 SimpleScreenR…

虚幻学习笔记13—C++静态和动态加载

一、前言 我们在蓝图中可以很方便的添加各种需要的组件,那么在C代码中要如何实现呢。在代码中分静态和动态加载,而无论静态和动态,加载的内容有资源和资源类,资源类通常为带资源的蓝图类。 二、实现 在实现静态或动态加载时&…

生成式AI的力量,释放RPA的无限潜能

回首即将过去的2023年,互联网行业似乎始终处在各种新概念的热潮激荡之中。其中,最引人注目的话题无疑是AI科技。自人工智能技术实现大规模突破以来,我们见证了一系列生成式AI的涌现。从ChatGPT到百度文心一言,它们纷纷登场&#x…

QEMU源码全解析 —— virtio(9)

接前一篇文章: 上两回讲解了virtio balloon相关类所涉及的realize函数以及大致流程,如下表所示: realize函数parent_dc_realize函数DeviceClassvirtio_pci_dc_realizePCIDeviceClassvirtio_pci_realizeVirtioPCIClassvirtio_balloon_pci_rea…

Cellinx NVT 摄像机 GetFileContent.cgi任意文件读取漏洞 (CVE-2023-23063)

0x01 产品简介 Cellinx NVT IP PTZ是韩国Cellinx公司的一个摄像机设备。 0x02 漏洞概述 Cellinx NVT v1.0.6.002b版本存在安全漏洞,该漏洞源于存在本地文件泄露漏洞,攻击者可读取系统密码等敏感信息。 0x03 复现环境 FOFA:body"loc…

云仓酒庄带您品法国葡萄酒

说起葡萄酒肯定绕不开法国,法国葡萄酒闻名中外,口碑卓越。作为世界上的产酒大国,可以说是每一寸土地都可以种植葡萄。云仓酒庄的品牌雷盛红酒分享这么优秀的一个葡萄酒产酒国有哪些特点呢? 1.产区特色:波国有最著名的…

vue3 使用antd 报错Uncaught TypeError--【已解决】

问题现象 使用最基本的 ant-design-vue 按钮demo 都报错 报错文字如下 Uncaught TypeError: Cannot read properties of undefined (reading value)at ReactiveEffect.fn (ant-design-vue.js?v597f5366:6693:87)at ReactiveEffect.run (chunk-K2VKR2AM.js?v25c381c3:461:…

springboot发送邮件,内容使用thymeleaf模板引擎排版

springboot发送邮件,内容使用thymeleaf模板引擎排版 1、导入jar包2、yml设置3、收件人以及收件信息设置4、发邮件service5、模版页面6、controller 1、导入jar包 <!--发送邮件--><dependency><groupId>org.springframework.boot</groupId><artifac…

react经验7:高亮关键字

预期效果&#xff1a; 实现原理 将需要高亮的关键词做成正则表达式 new RegExp((${word}), "gi")使用上述正则表达式切割目标字符串 origin.split(new RegExp((${word}), "gi"))切割结果会包含正则匹配到的词 过滤掉空字符&#xff0c;并对关键词包裹…