Problema de velocidade do ventilador Ubuntu / Toshiba

2

Estou usando o Ubuntu 11.10 AMD64 em meu laptop Toshiba (L505D-S5965) . Depois que eu inicializo no sistema operacional, meu ventilador funciona perfeitamente na maioria das vezes silencioso. Recentemente, notei que sempre que eu recomeço da suspensão do sistema, meu ventilador começa a ficar barulhento. Isso acontece consistentemente sem nenhum programa ou processo sendo executado. Ele continuará sendo barulhento até que eu reinicie o computador e volte ao normal. Quando o ventilador está com ruído, a temperatura da CPU é de 53 ° C, o que não é nada quente. Eu tentei inicializar com pcie_aspm=force no arquivo de opções do GRUB, mas isso não funcionou. Existe uma correção?

    
por enderskill 25.02.2012 / 18:54

3 respostas

1

Este é um bug conhecido no Ubuntu, que remonta a 2006:
Bug # 77370: Ventilador de laptop sempre ligado depois de continuar da suspensão para a RAM .

O texto acima é uma discussão muito longa que dura 6 anos, concluindo que esse problema acontece em algumas versões do kernel, mas não em todos.

Algumas soluções foram listadas, desde desconectar / reconectar o cabo de alimentação até criar um script para executar após o reinício para parar o ventilador.

O script em questão é criado como arquivo /etc/pm/sleep.d/99fancontrol (lembre-se de chmod 755):

#!/bin/sh
#
# Stop the fan.
# Source: https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.17/+bug/77370

case "$1" in
 hibernate|suspend)
  # Stopping is not required.
  ;;
 thaw|resume)
# In background.
   ( sleep 10 ; echo -n "0" > /sys/devices/virtual/thermal/cooling_device1/cur_state ) &

  ;;
 *) exit $NA
  ;;
esac
    
por 28.02.2012 / 10:31
1

Você pode tentar configurar a velocidade do ventilador com base em temperaturas. Veja como fazer isso

(Por favor note que este exemplo foi uma tradução de um artigo antigo do meu blog em francês para o Ubuntu Karmic Koala ... Espero que minha "prosa" seja legível em inglês!)

Monitoramento e controle de fãs

Em um terminal, insira: pwmconfig e siga estas etapas

EXEMPLO:

1) Primeiro passo: pesquisa pwmconfig para monitores de ondas de energia

Found the following devices:
hwmon0/device is w83697hf

Found the following PWM controls:
hwmon0/device/pwm1
hwmon0/device/pwm2

Giving the fans some time to reach full speed…
Found the following fan sensors:
hwmon0/device/fan1_input     current speed: 0 … skipping!
hwmon0/device/fan2_input     current speed: 4326 RPM

2) Segundo passo:

pwmconfig verifica se existe uma correlação entre um controle PWM e um ventilador tentando pará-lo. Ao confirmar para o pwmconfig, o fã parou o pwmconfig associado a um fã específico.

Testing pwm control hwmon0/device/pwm1 …
hwmon0/device/fan2_input … speed was 4326 now 4326
no correlation

{Se o pwmconfig não detectar tal fã, peça para você confirmar…}

No correlations were detected.
There is either no fan connected to the output of hwmon0/device/pwm1,
or the connected fan has no rpm-signal connected to one of the tested fan sensors.

Did you see/hear a fan stopping during the above test (n)? n

{Aqui pwmconfig verifica o próximo controle pwm…}

Testing pwm control hwmon0/device/pwm2 …
hwmon0/device/fan2_input … speed was 4326 now 0
It appears that fan hwmon0/device/fan2_input
is controlled by pwm hwmon0/device/pwm2

{Aqui o pwmconfig encontrou a correlação e a mantém no arquivo de configuração / etc / fancontrol}

3) Terceiro passo: também é possível definir as variáveis pwmconfig

Temperatura mínima detectada pelo sensor: MINTEMP Temperatura máxima detectada pelo sensor: MAXTEMP Temperatura mínima para inicialização do ventilador: MINSTART Temperatura mínima para parada do ventilador: MINSTOP

Se você receber uma mensagem como: "File /var/run/fancontrol.pid exists." Isso normalmente significa que o deamon do fancontrol está rodando. Você deve pará-lo antes de executar o pwmconfig. Se você tem certeza de que o fancontrol não está rodando, então você pode deletar /var/run/fancontrol.pid manualmente.

4) Quarta etapa: execute este comando "fancontrol stop" e, em seguida, "pwmconfig", que fornecem uma saída como esta:

Select fan output to configure, or other action:
1) hwmon0/device/pwm2  3) Just quit          5) Show configuration
2) Change INTERVAL     4) Save and quit
select (1-n): 1

4.1 {Aqui eu escolho " 1 ": o controle pwm correspondente ao sensor em uso}

Devices:
hwmon0/device is w83697hf

Current temperature readings are as follows:
hwmon0/device/temp1_input    30
hwmon0/device/temp2_input    57

Select a temperature sensor as source for hwmon0/device/pwm2:
1) hwmon0/device/temp1_input
2) hwmon0/device/temp2_input
3) None (Do not affect this PWM output)
select (1-n): 2

4.2 {Aqui eu escolho " 2 ": controle de pwm le contrôle correspondente ao sensor ativo}

Enter the low temperature (degree C)
below which the fan should spin at minimum speed (0): 38

4.3 {Aqui eu escolho " 38 ": a menor temperatura na qual a velocidade do ventilador está no mínimo}

Enter the high temperature (degree C)
over which the fan should spin at maximum speed (60): 48

4.5 {Aqui eu escolho " 48 ": a temperatura na qual a velocidade do ventilador está no máximo}

Enter the minimum PWM value (0-255)
at which the fan STARTS spinning (press t to test) (150): t

4.6 {Aqui escolho " t ": para tentar inserir "y" quando o valor máximo de pwm = inicialização do ventilador}

Now we increase the PWM value in 10-unit-steps.
Let the fan stop completely, then press return until the
fan starts spinning. Then enter ‘y’.
We will use this value +20 as the starting speed.
Setting hwmon0/device/pwm2 to 10…
Setting hwmon0/device/pwm2 to 20…
Setting hwmon0/device/pwm2 to 30…
Setting hwmon0/device/pwm2 to 40…
Setting hwmon0/device/pwm2 to 50…
Setting hwmon0/device/pwm2 to 60…  y
OK, using 60

Enter the minimum PWM value (0-255)
at which the fan STOPS spinning (press t to test) (100): t

4.7 {Aqui eu escolho " t ": tentar inserir "y" quando o valor mínimo de pwm = Parada de fã}

Now we decrease the PWM value in 10-unit-steps.
Let the fan reach full speed, then press return until the
fan stops spinning. Then enter ‘y’.
We will use this value +20 as the minimum speed.
Setting hwmon0/device/pwm2 to 245…
Setting hwmon0/device/pwm2 to 235…
Setting hwmon0/device/pwm2 to 225…
Setting hwmon0/device/pwm2 to 215…
Setting hwmon0/device/pwm2 to 205…
Setting hwmon0/device/pwm2 to 195…
Setting hwmon0/device/pwm2 to 185…
Setting hwmon0/device/pwm2 to 175…
Setting hwmon0/device/pwm2 to 165…
Setting hwmon0/device/pwm2 to 155…
Setting hwmon0/device/pwm2 to 145…
Setting hwmon0/device/pwm2 to 135…
Setting hwmon0/device/pwm2 to 125…
Setting hwmon0/device/pwm2 to 115…
Setting hwmon0/device/pwm2 to 105…
Setting hwmon0/device/pwm2 to 95…
Setting hwmon0/device/pwm2 to 85…
Setting hwmon0/device/pwm2 to 75…
Setting hwmon0/device/pwm2 to 65…
Setting hwmon0/device/pwm2 to 55…
Setting hwmon0/device/pwm2 to 45…  y
OK, using 45

4.8 {Finalmente insira os valores mínimo e máximo de pwm…}

Enter the PWM value (0-45) to use when the temperature
is below the low temperature limit (0): 24

Enter the PWM value (45-255) to use when the temperature
is over the high temperature limit (255): 255

== > > Observe que esses valores podem ser ajustados posteriormente para atender às suas necessidades ...

== > > Não se esqueça de salvar a configuração!

Select fan output to configure, or other action:
1) hwmon0/device/pwm2  3) Just quit          5) Show configuration
2) Change INTERVAL     4) Save and quit
select (1-n): **4**

Feito! :)

Espero que isso ajude a manter seus fãs menos barulhentos! Nos informe. :)

    
por 05.03.2012 / 22:19
1

Primeiro, verifique qual serviço está governando seus fãs. Pode ser "fancontrol", mas em um laptop pode ser outro.

Instale o pacote de hibernação. Tente os comandos "hibernate-ram" e "hibernate-disk". Se o problema persistir, edite "ususpend-disk.conf" e / ou "ususpend-ram.conf" e adicione a linha "RestartServices foo", sendo "foo" o nome do serviço que está governando seus fãs. No meu sistema eu tenho "RestartServices fancontrol" em "ususpend-disk.conf", mas no seu sistema pode ser outro serviço.

    
por 20.09.2014 / 18:46