曲径通幽论坛

标题: linux 下监控 ATI 显卡温度并自动调节风扇转速脚本 [打印本页]

作者: beyes    时间: 2009-4-21 17:27
标题: linux 下监控 ATI 显卡温度并自动调节风扇转速脚本
常用的一台机子上装的系统是 opensuse 11.1 ,显卡为 HD4850,默认情况下,显卡风扇为全速转动,噪音非常大。因为在 Linux 下不玩大型游戏,显卡温度一般很低(已经加了机箱风扇),所以有必要降低显卡风扇转速。
默认下,Linux 里 的 ATI 显卡 CCC 驱动中心里并没有控制风扇转速一项(被隐藏起来了,呵呵)。为了方便以及减少烦恼,我写了个脚本,主要是监控显卡温度和自动调节转速,希望对用 ATI显卡+Linux 的用户有所用,脚本代码如下:
#!/bin/bash

Temperature=0
Flag=0

while true
do

Temperature=
`
aticonfig --od-gettemperature | grep Sensor | awk
'
{if (
$
5) printf("%d",
$
5)}
'`

        
         if [
$
Temperature -ge 38 ] && [
$
Temperature -le 43 ] && [
$
Flag -eq 0 ]; then
                 aticonfig --pplib-cmd
'
set fanspeed 0 20
'
> /dev/null
                 Flag=1
         fi

        if [
$
Temperature -gt 43 ] && [
$
Temperature -le 45 ]; then
                 aticonfig --pplib-cmd
'
set fanspeed 0 30
'
> /dev/null
                 Flag=0
         fi

        if [
$
Temperature -gt 45 ] && [
$
Temperature -lt 48 ]; then
                 aticonfig --pplib-cmd
'
set fanspeed 0 50
'
> /dev/null
                 Flag=0
         fi

        if [
$
Temperature -gt 50 ]; then
                 aticonfig --pplib-cmd
'
set fanspeed 0 100
'
> /dev/null
                 Flag=0
         fi

sleep 180

done

exit 0
-----------------------------------------------------
说明:
监控时间 3 分钟探测并调节一次。
$Flag 变量标志避免没有必要的对显卡风扇发送转速调节指令





欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2