声明:感谢该论坛“不再犹豫”大佬,“楼内烟花楼”大佬提供的教程,本贴根据大佬们的方法亲测有效,其他温控芯片的驱动可百度搜索查找
1、对于sensors命令输出无风扇信息的情况极有可能是未安装相关驱动,以下按照“不再犹豫”大佬的教程进行驱动,芯片型号可在BIOS里面查看或者通过sensors-detect 命令查看
首先SSH进入飞牛后台,sudo -i切换未root用户,使用sensors-detect 命令来检测并生成内核模块列表,会询问是否扫描,按enter就行了,这一步主要是查看是否存在温控芯,找一下有没有ITExxxx或者NCTxxxx,比如我的主板温控芯片是IT8613E

此外sensors-detect命令输出完后,如果显示如下说明ITE8613E没有驱动程序

执行 modprobe it87命令加载驱动,报错:modprobe: ERROR: could not insert 'it87': No such device,说明没有it87这个驱动
按照以下步骤进行驱动安装
#进入/etc/modprobe.d目录
cd /etc/modprobe.d
#创建it87.conf文件
touch it87.conf
#编辑it87.conf文件
vim it87.conf
#将以下信息输入进it87.conf,
options it87 force\_id=0x设备型号 ignore\_resource\_conflict=1
这段代码中“设备型号”替换为你的温控芯片的型号,比如我的是ITE8613E,所以文件内容为options it87 force\_id=0x8613 ignore\_resource\_conflict=1
(5)下载it87驱动:网址:GitHub - a1wong/it87 --- GitHub - a1wong/it87

点击Releases下载zip文件

(6)在电脑上解压后随便上传至飞牛任意目录下,cd进入驱动文件目录,ls可查看该目录文件信息

(7)安装gcc
apt-get update
apt-get install gcc
(8)依次执行以下命令,进行更新模块依赖,加载驱动
make clean
make
make install
depmod -a
modprobe it87
(9)到这一步执行sensors命令应该可以看到温度、风扇信息了

若遇到重启后风扇信息又看不到的情况可按照以下是解决办法尝试:
cat /etc/modules-load.d/it87.conf # 预期输出应为 "it87"
如果没有输出,则运行
echo "it87" | sudo tee /etc/modules-load.d/it87.conf
然后运行
update-initramfs -u
重启飞牛再执行sensors命令试试
2、CoolerControl安装
本人使用飞牛docker安装CoolerControl
进入飞牛桌面,点击docker图标,在点击“compose”按钮,点击“新增项目”

项目名称自定义,路径自定义,选择创建docker-compose.yml,将以下信息填入“创建docker-compose.yml”,我的compose只映射了/sys/class/hwmon目录,没有将整个/sys目录映射,各位可自行决定是否全部映射。
services:
coolcontrol:
container_name: coolcontrol
image: ghcr.io/guniv/coolercontrol-docker:latest
restart: always
privileged: true
network_mode: bridge
ports:
- 11987:11987
volumes:
#- /sys:/sys # <--- 挂载 /sys 目录
- /dev:/dev
- /vol1/1000/docker_data/coolcontrol:/etc/coolercontrol
- /sys/class/hwmon:/sys/class/hwmon #如果选择第一条不挂载/sys 目录,至少要挂载本条路径

勾选“创建项目后立即启动”,在网络无问题的情况下即可创建成功

3、CoolerControl进行硬盘温度与风扇转速联动
(1)浏览打开http://X.X.X.X:11987,其中X.X.X.X为飞牛OS地址,进入网页后会提示一些教程信息,无脑点击下一步即可,以下为CoolerControl界面展示

(2)使CoolerControl能查看硬盘温度
从内核 5.6 开始 drivetemp 模块将通过硬件监控系统报告 SATA/SAS 温度,但 sensors-detect 无法自动检测到这一点,因此该模块必须手动加载。
最简单的就是直接启动模块,SSH终端输入:
#提权
sudo -i
#加载模块
modprobe drivetemp
重启coolercontrol后便可看到硬盘温度
此时模块还没有在启动时加载,重启就看不到了,因此需要添加一下:
#提权
sudo -i
#进入/etc/modules-load.d目录
cd /etc/modules-load.d/
#创建并编辑drivetemp.conf文件
vim drivetemp.conf
#在文件中添加drivetemp即可
(3)创建自定义传感器
先把几个硬盘的传感器数据汇总。点击Cuntom Sensors右边的加号,创建一个虚拟混合传感器:

名称自定义,传感器类型选择混合,混合函数选择最大值(即取几个硬盘最大温度),温度源选择你想联动的硬盘,设置好以后点击“下一步”,在点击“应用”



(4)添加“功能”,命名自定义,其他参数默认即可,点击“下一步”,再点击“应用”




(5)添加“配置文件”,名称自定义,文件类型选择“曲线图”,点击“下一步”

温度源选择开始创建的自定义传感器,点击“下一步”

根据自身需求调制风扇曲线,点击“下一步”

点击“选择现有功能”,选择刚刚添加的自定义功能

点击“下一步”,然后应用

将新增的配置文件与风扇绑定。点击想联动的风扇,选择刚刚创建的配置文件,点击应用,大功告成。


CPU温度与风扇转速联动,也可按照以上方法进行自定义风扇曲线。