r730xd不完全折腾指南
1. 起因
社团的 3d 打印机经常要用U盘拷贝文件,不能通过网络传输,十分麻烦;加之社团的电脑本来就不多,经常有人多机少的情况。于是乎,搭建一台服务器似乎很有必要了。
2. 选购
2.1 准系统
这次选取的是 戴尔 PowerEdge R730xd
。选取原因有三:
- 市场存量多,货源充足,性价比高;
- 使用人数多,网上教程丰富,小白友好;
- 可扩展性强。
在某网店选购 R730XD准系统+H730卡+单750W电源
,价格仅需 ¥699 ,实属物美价廉。
2.2 CPU
网上相关教程推荐的U有很多,但性能较好的还看 E5-2680V4
E5-2690V4
。
但其实一对比,E5-2680V4
价格便宜了很多,性能也不算很差,所以最终选择了 E5-2680V4
。由于预算有限,只买一颗(最多能装两颗)。
2.3 内存条
理论上,内存条是 $ 8G \times 4$ 能跑出更好的性能,但这样的方案显然更加昂贵。这次先一次性买了一条 三星 32G 4DR*4 2133P
,只要¥139。等以后再升级吧。
2.4 硬盘
由于社团里有老电脑的硬盘,这里就买一块杂牌的sata硬盘测试一下。$ 480G$ 杂牌 sata ,只要139元。值得注意的是,启动盘必须是 sata 接口,m2 接口的只能作为副盘使用,不能作为系统启动盘(当然,曲线救国之路就是拿个u盘引导)。
2.5 小计
这样算下来,一套基础版大概需要 1000r 左右:
3. 硬件安装过程
3.1 开箱
按下按钮,掀开后盖,可以看到内部构造。
3.2 换 CPU
原来厂家发过来的时候已经随附了两颗 E5-2650 V3
,但我们自己买了另外的CPU,需要拆除原来的CPU。两个都要拆,CPU不能混用。
按照官方教程,先选择一颗螺丝转下来,等待30s自己会松掉;然后再卸下对角线的那颗螺丝,就能成功拆除散热器了。
这是拆完散热器以后的样子:
拆下来的散热器:
接下来取出cpu:按下两边的弹簧开关,将金属结构弹出,就能拿出CPU了。
然后放上我们自己买的cpu,按刚才相反的步骤,即可装入。
值得注意的是,先应将下方的卡扣抬起,再放下另一边的金属片,否则是盖不上的。
请一定不要使用蛮力,否则可能会损坏服务器!
如果您只装了一颗U,而另一个位置上仍有另一颗不同型号的U,那么服务器开机自检是无法通过的。
3.3 上内存
如果厂家是帮您预装好的,那么直接装在默认位置就行;如果需要自己安装,可能有以下两种情况:
- 按照整流罩上标的顺序,放在一号内存槽位;
- 直接插在离cpu最近的那个槽位。
上面两种情况试一试即可,如果不正确可能会导致无法开机。
3.4 装硬盘
这款服务器一共有14个盘位。
后方一共是 $ 3\times 4=12$ 个 3.5 寸盘位,前面还有 $ 2$ 个 2.5 寸的。
直接一块硬盘我们是无法直接装到服务器上的,需要先给它固定到硬盘架上,然后再将硬盘架安装进盘位中。
如图是 3.5 寸硬盘架,它是兼容 2.5 寸的硬盘的。直接将硬盘放入硬盘架中,对准螺丝孔并上螺丝即可。硬盘架可能需要另外购买,价格在 6~6.9 人民币左右,可能还要 ¥5 的运费。
装好后大概长这样⬆️。
如果您还想要安装 M.2 接口的固态硬盘(类似于下图),您还需要购买一块 M.2 转 PCIe 卡(首单 ¥5 便宜!),然后安装到服务器上为数不多的三个 PCIe 插槽上。
4. 系统的选取与安装
本文只介绍虚拟化的系统方案。主流的有两种系统方案:一是 PVE 虚拟化,二是 VMware vSphere 虚拟化。这两种方式都是在底层进行硬件互联,运行多系统时的资源损失较小。下面是这两种方案的比较:
对比项目 | PVE | VMware ESXi |
---|---|---|
成本 | 开源免费,适合预算有限的小型企业和个人用户,可免费使用全部功能,但付费可获得技术支持服务等。 | 基本版本免费,但高级功能如高可用性的 HA、负载均衡等需付费购买 vmware vsphere 获得**。 |
技术基础 | 基于 Debian Linux 发行版,支持 KVM 全虚拟化和 LXC 轻量级容器两种虚拟化技术。 | 基于 VMware 的专有架构,是直接安装在物理服务器硬件之上的裸金属型 hypervisor,主要使用全虚拟化技术。 |
用户界面 | 提供基于 Web 的图形用户界面,同时支持命令行界面,界面相对简洁直观,对于有 Linux 基础的用户来说较易上手,但对新手而言,部分操作需使用命令行,有一定学习成本。 | 通过 vSphere Client 或 vCenter Server 进行管理,提供了丰富直观的图形用户界面,与 VMware 的其他产品紧密集成,管理体验高效,易于新手入门。 |
性能和资源利用 | 支持 LXC 容器,在资源利用方面更加高效,特别是处理 I/O 密集型任务时表现较好,用户能够对虚拟机实施详细的资源控制和配额,确保每个应用获取所需资源。 | 其性能优势来自于为虚拟化特制的内核,能更高效地管理和分配资源,资源调度和动态迁移技术进一步优化了虚拟机的性能和资源利用率,在硬盘和网络 I/O 等方面表现出色。 |
管理和扩展 | 通过 Web 界面管理,可使用 Proxmox VE Cluster 进行集群扩展,管理相对灵活,扩展性强,适合有一定技术能力和对定制化有需求的用户。 | 通常与 vCenter Server 结合使用,可轻松实现大规模的虚拟化管理和自动化,更适合企业级的大规模部署和管理,但对技术人员的专业要求较高。 |
社区和支持 | 拥有活跃的开源社区,用户可获得广泛的帮助和支持,社区资源丰富,更新速度快,但对于一些复杂问题的解决可能需要用户自身具备一定的技术能力。 | 依托 VMware 的品牌和庞大的技术支持团队,能够获得专业的技术支持服务,对于企业级用户来说,在遇到问题时可获得更及时有效的解决方案。 |
安全性 | 基于 Linux 内核,具有良好的安全特性,但需要用户自己负责及时更新和维护系统以确保安全性。 | 经过严格的安全测试和优化,提供了企业级的安全保障,内置的安全功能如 vShield 和 NSX 等强化了虚拟化环境的安全性。 |
硬件兼容性 | 硬件兼容性优秀,对多种硬件设备的支持较好,尤其是对 Realtek 网卡等设备的兼容性优于 ESXi。 | 硬件兼容性相对较差,主要面向服务器硬件,对一些常见的桌面级或消费级硬件设备的支持可能存在不足,但对主流服务器硬件及 Intel 网卡等兼容性良好。 |
高级功能 | 提供如实时迁移、快照等高级功能,但不如 ESXi 的功能全面。 | 拥有广泛的企业级高级功能,如 VMotion、DRS、HA 等,可实现虚拟机的动态迁移、资源的智能调度和高可用性保障等。 |
由于考虑到 VMware ESXi 比较商业化,功能较为完善,而且对我们的 R730xd 有专门的适配,所以这里我们选择 VMware 的虚拟化。
笔者这里使用的 raid 方案是 一块 raid0 装系统,其他盘作数据盘。
4.1 设立 VD 和 RAID 模式
4.1.1 磁盘阵列(RAID)是什么?
磁盘阵列(Redundant Arrays of Independent Disks,RAID)是一种将多个独立的磁盘组合成一个逻辑磁盘的技术。通过特定的算法,把数据分散存储在多个磁盘上,从而提升存储系统的性能、可靠性和数据安全性。
常见的磁盘阵列级别包括:
- RAID 0:数据被分割成块并分布在多个磁盘上,没有冗余信息。它能提高读写性能,但一个磁盘损坏就会导致数据丢失。
- RAID 1:数据在两个或更多磁盘上进行镜像。写入数据时,会同时写入到多个镜像磁盘中。这种方式可靠性高,一块磁盘损坏,数据可从镜像磁盘获取,但磁盘利用率低。
- RAID 5:数据和奇偶校验信息分布在多个磁盘上。通过奇偶校验信息,可以在一个磁盘损坏的情况下恢复数据,兼顾了存储性能、数据安全和存储成本等因素。
- RAID 6:与RAID 5类似,但有两份独立的奇偶校验信息,能允许两块磁盘同时损坏而不丢失数据。
- RAID 10:是RAID 0和RAID 1的组合,先做镜像再做条带化,具有高性能和高可靠性。
4.1.2 磁盘阵列的重要性
- 提高数据存储性能 在RAID 0等模式下,通过并行读写多个磁盘,可以显著提高数据的读写速度。对于需要处理大量数据的服务器和存储系统,如数据库服务器、视频编辑工作站等,磁盘阵列能够加快数据的访问速度,从而提高整个系统的工作效率。
- 增强数据安全性和可靠性 在RAID 1、RAID 5、RAID 6等具有冗余功能的模式下,即使磁盘出现故障,数据仍然可以通过冗余信息进行恢复。这对于企业级的数据存储至关重要,可避免因磁盘故障导致的数据丢失,保护企业的核心数据资产,减少因数据丢失带来的损失和业务中断风险。
- 便于数据管理和扩展 磁盘阵列可以作为一个统一的逻辑存储单元进行管理,方便管理员进行存储容量的分配和调整。同时,通过添加新的磁盘,可以相对容易地扩展存储容量,满足企业不断增长的数据存储需求。
4.1.3 建立磁盘阵列
开机以后等待以下界面,当看到 Press <Ctrl><R> to Run ...
时,按下 Ctrl+R ,进入 H730/H330 MiniBIOS ,设置磁盘阵列。
进入 minibios 后,使用 ⬆️/⬇️ 键将高亮移动到最顶端的你的阵列卡的条目(字样:H310、H730等)。然后再按下 F2 。
在弹出的菜单中,移动高亮至 Create New VD
,按下 Enter 。
因为我们这里只有一块盘的话,我们就只能选择 RAID 0 。
按 Tab 以切换到下一个条目。当在选择右侧硬盘时,按下空格键以选中/取消选择。VD Size
保持默认,VD Name
自己随便取,比如笔者这里可以取了叫做 System
。然后 OK
,退出后会自动重启。
这里是组了一块 raid ,然后通过虚拟磁盘的方式传给上层系统使用。当然,也可以组完 raid 后直通给系统使用,这样效率更高。
4.1.4 在图形化界面中设置 raid1
上面我们的系统盘设置的是 raid0 ,但对于数据盘来说,我们有充裕的机械硬盘,而且数据盘是给网盘使用,不能够丢失数据,因此我们至少需要组建 raid1 。
示例图片里是 raid5 ,但其实组 raid1 是一样的,一个是三块盘,一个是两块盘。
4.2 使用 u 盘安装 vmware esxi
这里我们使用简单易用的 Ventoy
。当然,您也可以根据您的喜好选择其他程序来安装。这里介绍使用 Ventoy
的安装方法。
首先,到 https://github.com/ventoy/Ventoy/releases/ 找到并下载最新的程序。
直接选择你的U盘,然后点击“安装”。安装完后你的优盘名称会变成“Ventoy”字样,是空的。直接把你想安装的 ESXi 镜像拖进去就行了。
这里安装的是 8.0.0 版本。
插上 U 盘,进 iDrac 可以图形化安装。
1
2
> 此处引用 https://blog.darklotus.cn/tutorials/r730xd.html 之照片,在此表示感谢。
{: .prompt-info }
镜像安装成功后,按照指引重启系统,然后进入 ESXi 设置。
4.3 安装 Ubuntu24.04
进入 ESXi 网页管理页面,我们点击 “创建/注册虚拟机”。
这里可以配置 CPU 核心数、分配的内存和硬盘空间大小。注意,硬盘选项要选择“薄置备”,这样才不会一次占用太多空间。
上面的步骤完成后直接点击小企鹅上的播放按钮。如果启动失败的可以按照下图检查一下引导选项。
打开自带的控制台,按 Enter 选中“安装 Ubuntu Server”。
自己选择源,中科大源应该是比较快的。
学校里用不了 Ubuntu pro。但它其实是免费的。
这里提示FAILED,其实不用担心,直接重启就好了,无事发生。
重启后登录,我们就能进入一个 Ubuntu Server 了。
你还可以选择安装 1Panel,这样就能方便地管理服务器了。
4.4 安装 飞牛NAS
系统基础信息
- 开发基础:基于Linux内核(Debian发行版)开发,稳定性和安全性高,可扩展性与自由度强。
- 硬件兼容性:兼容主流X86架构设备,可利用闲置硬件如PC、软路由、NUC等搭建私有云存储。
功能特性
存储管理
- 硬盘信息展示:全面展示硬盘类型、时长、健康、接口协议、温度等,可查看S.M.A.R.T信息。
- 存储模式:创建空间时依硬盘数量自动切换模式,展示容量、优缺点。系统盘和数据盘独立管理,系统盘只能单独组basic。
- RAID管理:支持换盘、设热备盘、改模式、扩容。能自动重组raid、自动替换热备盘,可升级RAID等级,RAID5以上可直接扩容。
文件管理
一个页面管理内、外、远程文件,操作简易。
智能影视
飞牛影视应用支持App远程下载解析种子,自动刮削成海报墙,电影准确率高,自动下载字幕,兼容主流硬件转码,多端同步,支持蓝光杜比,TV版未完全上线。
照片备份
飞牛私有云App相册备份功能可将手机照片备份到NAS,支持原画、实况、RAW格式。
远程访问
有公网IP直连、FN Connect、DDNS域名转发、P2P等多种方式。
应用中心
常用应用全,支持Docker,可按需安装应用扩展功能。
系统优势
- 界面友好:扁平化设计,类似macOS,人机交互合理,美观适合国人,有引导和手册,新手易上手。
- 免费使用:个人用户免费,降低成本。
目前公测阶段,存在RAID模式有限、共享功能不足等问题,持续更新改进后有望提升体验。
在此处可以看到下载地址:飞牛私有云 fnOS
5. 服务器运维
5.1 服务器硬件维护
- 定期巡检:
- 需定期对服务器硬件进行巡检,查看服务器的外观是否有损坏迹象,比如机箱是否变形、指示灯是否正常亮起等。
- 检查服务器的各个硬件组件状态,包括硬盘、内存、CPU、电源等。例如通过服务器自带的管理工具或者硬件厂商提供的检测软件来查看硬盘的健康状态、内存的使用率等。
- 清洁保养:
- 服务器运行环境可能会有灰尘积累,定期清理服务器内部灰尘,可使用专业的清洁工具,如吹风机、毛刷等,防止灰尘影响硬件散热和正常运行。
- 对于服务器的散热系统,如风扇,要确保其正常运转,定期清理风扇叶片上的灰尘,必要时更换老化或故障的风扇,以保证服务器能在合适的温度环境下运行。
5.2 服务器系统维护
- 操作系统更新:
- 及时安装操作系统的补丁和更新,这些更新通常包含了安全漏洞修复、性能优化等内容。可以通过系统自带的更新机制,如 Windows Server 的 Windows Update,Linux 系统的 yum 或 apt 等包管理工具来进行更新操作。
- 在更新前要做好备份工作,以防更新过程中出现问题导致系统故障无法正常启动等情况。备份内容可包括重要的系统配置文件、用户数据等。
- 系统监控:
- 利用监控工具对服务器系统的各项指标进行实时监控,如 CPU 使用率、内存使用率、磁盘 I/O、网络带宽等。常见的监控工具包括 Zabbix、Nagios 等。
- 通过对监控数据的分析,及时发现系统潜在的问题,比如当 CPU 长时间处于高使用率状态,可能需要排查是否有异常进程占用过多资源,进而采取相应的措施进行优化或处理。
5.3 服务器软件维护
- 软件安装与卸载:
- 根据服务器的功能需求,正确安装所需的软件应用程序。在安装过程中要注意软件的版本兼容性,确保其与操作系统及其他已安装软件能够协同工作。
- 对于不再需要的软件,要及时进行卸载,以释放服务器的磁盘空间和系统资源,并避免可能存在的软件冲突或安全隐患。
- 软件配置管理:
- 对已安装的软件要进行合理的配置,使其能够满足服务器的业务需求。不同软件有不同的配置参数,例如 Web 服务器软件可能需要配置域名、端口、虚拟主机等参数。
- 定期备份软件的配置文件,以便在出现配置错误或软件故障时能够快速恢复到之前的正常配置状态。
5.4 服务器网络维护
- 网络设备检查:
- 检查与服务器相连的网络设备,如交换机、路由器等的工作状态。查看设备的指示灯是否正常,端口连接是否稳定等。
- 定期对网络设备进行配置备份,以防设备出现故障或需要重新配置时能够快速恢复原有配置。
- 网络性能优化:
- 通过网络监控工具分析服务器的网络流量情况,识别网络瓶颈所在。例如,如果发现某段网络链路的带宽利用率过高,可能需要考虑升级带宽或者优化网络拓扑结构等措施。
- 合理设置服务器的网络参数,如 IP 地址、子网掩码、网关等,确保服务器能够在网络中正常通信,并根据业务需求优化网络协议的配置。
5.5 服务器安全维护
- 用户权限管理:
- 严格管理服务器的用户账户和权限,只给予用户必要的访问权限。根据用户的工作职责和需求,为不同用户设置不同级别的权限,如管理员、普通用户等。
- 定期审查用户账户的使用情况,对于不再需要的账户要及时删除,防止账户被滥用而导致安全风险。
- 防火墙配置:
- 设置防火墙规则,允许合法的网络流量进入和离开服务器,同时阻止非法的入侵尝试。可以根据服务器的业务需求,定制化地设置防火墙的入站和出站规则。
- 定期更新防火墙的规则和策略,以适应不断变化的网络安全环境和业务需求。
- 数据备份与恢复:
- 制定完善的数据备份策略,定期对服务器上的重要数据进行备份。备份方式可以包括本地备份、异地备份等,备份介质可以是磁盘、磁带等。
- 定期进行数据恢复演练,确保在数据丢失或损坏的情况下能够快速有效地恢复数据,保障服务器业务的正常运行。
5.6 Ubuntu 常用运维命令
5.6.1 系统信息查看命令
- uname:
- 用于打印系统相关信息,如内核版本等。例如,
uname -a
命令可以输出内核名称、主机名、内核发行版本、节点名、硬件平台、操作系统名称等详细的系统信息。这在确定系统的基本属性和内核相关细节时非常有用,比如在排查系统兼容性问题或者向技术支持提供系统信息时会经常用到。
- 用于打印系统相关信息,如内核版本等。例如,
- lsb_release:
- 用于查看 Linux 发行版的信息。如
lsb_release -a
可以显示发行版的 ID、描述、版本号等内容。在维护包含多种 Linux 发行版的环境时,通过这个命令可以快速区分不同 Ubuntu 系统的版本,以便针对特定版本进行正确的软件安装或系统配置。
- 用于查看 Linux 发行版的信息。如
5.6.2 软件包管理命令
- apt - get:
- 这是 Ubuntu 中最常用的软件包管理工具。例如,
apt - get update
用于更新软件包列表,它会从软件源服务器获取最新的软件包信息,包括软件版本更新、新软件包添加等。apt - get upgrade
则用于升级已经安装的软件包,将系统中的软件更新到最新版本。在执行升级操作时要谨慎,因为有时候软件更新可能会导致兼容性问题。 - 安装软件包可以使用
apt - get install [package - name]
,其中[package - name]
是要安装的软件包名称,比如apt - get install apache2
可以安装 Apache 服务器软件。卸载软件包使用apt - get remove [package - name]
,不过这只会卸载软件本身,若要同时卸载软件的配置文件,可以使用apt - get purge [package - name]
。
- 这是 Ubuntu 中最常用的软件包管理工具。例如,
- dpkg:
- 主要用于安装、卸载和查询
.deb
软件包。例如,dpkg -i [package - file.deb]
用于安装一个本地的.deb
软件包,dpkg -r [package - name]
用于移除已安装的软件包。当需要手动安装一些没有包含在官方软件源中的软件包时,dpkg 就会发挥作用,不过在安装非官方软件包时也要注意软件的来源安全性。
- 主要用于安装、卸载和查询
5.6.3 用户和权限管理命令
- useradd:
- 用于添加新用户。例如,
useradd [username]
可以创建一个新的用户账户,系统会为该用户自动分配一个用户 ID 和默认的用户组。之后可以通过passwd [username]
为新用户设置密码。在企业环境或者多用户使用的服务器中,根据不同人员的职责创建不同的用户账户是保障系统安全和权限管理的重要步骤。
- 用于添加新用户。例如,
- chmod:
- 用于改变文件或目录的权限。权限模式有数字表示法和符号表示法。数字表示法如
chmod 755 [file - name]
,其中 7 代表所有者有读、写、执行权限,5 代表同组用户有读、执行权限,5 代表其他用户有读、执行权限。符号表示法如chmod u + rwx,g + rx,o + rx [file - name]
,含义与数字表示法相同,这种方式更直观地表示了对用户(u)、组(g)和其他用户(o)权限的修改。通过合理设置文件和目录的权限,可以保护系统数据的安全性和保密性。
- 用于改变文件或目录的权限。权限模式有数字表示法和符号表示法。数字表示法如
5.6.4 系统服务管理命令
- systemctl:
- 用于管理系统服务。例如,
systemctl start [service - name]
可以启动一个服务,如systemctl start ssh
可以启动 SSH 服务,使服务器能够接受远程连接。systemctl stop [service - name]
用于停止服务,systemctl restart [service - name]
用于重新启动服务。在对服务器软件进行更新或者出现服务故障时,经常会用到这些命令来操作服务的启动、停止和重启。 - 可以使用
systemctl status [service - name]
查看服务的状态,包括服务是否正在运行、是否出现错误等信息。这对于排查服务相关的问题非常有帮助,例如当无法通过 SSH 连接服务器时,可以先查看 SSH 服务的状态来确定是否是服务本身出现故障。
- 用于管理系统服务。例如,
5.6.5 网络管理命令
- ifconfig:
- 用于配置和显示网络接口信息。例如,
ifconfig
命令本身会显示所有网络接口的信息,包括 IP 地址、子网掩码、MAC 地址等。可以使用ifconfig [interface - name] [IP - address]
来手动设置网络接口的 IP 地址,不过在 Ubuntu 较新的版本中,推荐使用ip
命令来进行更复杂的网络配置操作。
- 用于配置和显示网络接口信息。例如,
- ping:
- 用于测试网络连接性。例如,
ping [destination - IP - or - hostname]
可以向目标 IP 地址或主机名发送 ICMP 回显请求,以检查是否能够与目标建立网络连接以及网络延迟情况。在排查网络故障时,这是一个非常基础且实用的命令,比如当无法访问某个网站时,可以先通过 ping 网站的域名来查看是否能够解析域名以及网络是否可达。
- 用于测试网络连接性。例如,
5.7 DELL iDrac 风扇管理
- 所需工具及准备:
- 确保已经开启了服务器的 IPMI 管理权限以及 iDrac 网口接入网络。
- 在 Ubuntu 系统中安装
ipmitool
管理工具,可通过命令sudo apt install ipmitool
进行安装。
- 常用命令:
- 查看风扇状态:
ipmitool -I lanplus -H <iDrac_IP_Address> -U <Username> -P <Password> sensor list | grep Fan
:该命令可以获取服务器风扇的相关传感器信息,帮助了解风扇的当前转速、状态等情况。例如,如果输出结果中显示 “Fan1 RPM: 3000”,则表示编号为 Fan1 的风扇当前转速为 3000 转 / 分钟。
- 关闭风扇自动控制47:
ipmitool -I lanplus -H <iDrac_IP_Address> -U <Username> -P <Password> raw 0x30 0x30 0x01 0x00
:执行该命令后,服务器的风扇将不再根据系统的自动调节策略来控制转速,而是可以通过手动设置的方式来指定转速。
- 设置风扇转速:
ipmitool -I lanplus -H <iDrac_IP_Address> -U <Username> -P <Password> raw 0x30 0x30 0x02 0xff <hex_speed_value>
:其中<hex_speed_value>
是十六进制的风扇转速值。例如,要将风扇转速设置为 20%,可以将其转换为十六进制(即 0x14),然后命令为ipmitool -I lanplus -H <iDrac_IP_Address> -U <Username> -P <Password> raw 0x30 0x30 0x02 0xff 0x14
。
- 查看风扇状态:
- 自动脚本示例2:
- 创建脚本文件:首先创建一个名为
ipmitool_script.sh
的文件,并添加以下内容:
- 创建脚本文件:首先创建一个名为
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/bash
# 设置 iDrac 的 IP 地址、用户名和密码
IDRAC_IP="Your IDRAC IP Address"
USERNAME="Your Username"
PASSWORD="Your Password"
# 关闭风扇自动控制
ipmitool -I lanplus -H $IDRAC_IP -U $USERNAME -P $PASSWORD raw 0x30 0x30 0x01 0x00
# 设置风扇转速为 15%(根据实际需求修改)
ipmitool -I lanplus -H $IDRAC_IP -U $USERNAME -P $PASSWORD raw 0x30 0x30 0x02 0xff 0x0f
# 检查上一个命令是否成功执行
if [ $? -eq 0 ]; then
echo "Script executed successfully."
else
echo "Script failed to execute."
fi
- 赋予脚本执行权限:在终端中执行
chmod +x ipmitool_script.sh
命令,赋予脚本可执行权限。 - 创建系统服务:创建一个 systemd 服务来管理这个脚本的执行。在终端中输入
sudo nano /etc/systemd/system/ipmitool.service
,并添加以下内容:
1
2
3
4
5
6
7
8
9
10
[Unit]
Description=IPMI Tool Script Service
After=network.target
[Service]
Type=simple
ExecStart=/path/to/your/script/ipmitool_script.sh
User=root
Group=root
[Install]
WantedBy=multi-user.target
请将 /path/to/your/script/
替换为你的脚本实际所在的目录。
- 设置定时任务:为了实现自动运行,创建一个定时器文件。在终端中输入
sudo nano /etc/systemd/system/ipmitool.timer
,并添加以下内容:
1
2
3
4
5
6
7
8
[Unit]
Description=Run IPMI Tool Script every 30 minutes
[Timer]
OnBootSec=1min
OnUnitActiveSec=30m
Unit=ipmitool.service
[Install]
WantedBy=timers.target
- 启动服务和定时器:在终端中依次执行以下命令来启用并启动服务和定时器:
1
2
3
4
sudo systemctl enable ipmitool.service
sudo systemctl start ipmitool.service
sudo systemctl enable ipmitool.timer
sudo systemctl start ipmitool.timer
- 检查状态:使用
sudo systemctl status ipmitool.service
和sudo systemctl status ipmitool.timer
命令检查服务和定时器的状态,确保它们正常运行。
通过以上步骤,就可以在 Ubuntu 系统中实现对 DELL iDrac 风扇的管理和自动控制。在设置风扇转速时,需要根据服务器的实际情况和散热需求进行合理调整,避免因风扇转速过低导致服务器过热而损坏硬件。