Como obtenho o controle do ventilador funcionando?

33

Eu sei que existe algo chamado fancontrol, que permite controlar a velocidade da ventilação do seu sistema. Eu gostaria de deixar meus fãs girarem um pouco mais rápido, já que meu laptop está esquentando muito facilmente. Todos os tutoriais e coisas que eu encontrei são para versões antigas do Ubuntu e não parecem mais estar funcionando.

Alguém pode me explicar ou me dar um bom link sobre como eu posso fazê-lo funcionar no Ubuntu? Algo diferente com o mesmo efeito também é bom.

    
por RobinJ 29.09.2011 / 18:27

5 respostas

8

O i8kutils funciona para controlar o ventilador do meu laptop Dell Vostro 3350.

# For Dell laptop only:
$ sudo apt-get install i8kutils 
$ i8kfan 1 2 # Set the left-fan at low speed(1); the right one at high speed(2).
    
por user1902715 03.03.2013 / 04:59
14

Você provavelmente será capaz de resolver o seu problema com outra coisa sobrepondo seus comandos do ventilador i8kctl pelo método fornecido nesta resposta. Para completar, incluirei algumas notas gerais sobre controle de ventilador em laptops Dell e instruções completas sobre i8kutils .

O que provavelmente não funcionará

Dois meios comuns e diretos de controlar o ventilador em laptops são através da ACPI e através de pinos PWM, no entanto, infelizmente:

  • Os laptops Dell carecem de recurso de controle de ventilador ACPI (* 1)

    • como consequência, tentar com parâmetros de inicialização da ACPI e semelhantes falhará
  • Os laptops Dell Latitude, até onde eu sei, não têm ventiladores controláveis por pwm (* 2)

    • como consequência, o programa fancontrol / pwmconfig não funcionará

Use i8kutils

No entanto, há um pacote chamado i8kutils escrito para controlar o ventilador em laptops Dell Inspiron por meio do BIOS do SMM . Vários usuários relatam sucesso também em seus laptops Dell Laitude (eu sou um deles, em um Dell Latitude E7440) - no entanto, muitas vezes é necessário um truque para se livrar do controle interferente de ventiladores do BIOS. Você também sofre com isso de acordo com um comentário anterior.

Instale i8kutils :

$ sudo apt-get install i8kutils

Experimente:

$ i8kfan 2 2     # set to max speed
$ i8kfan 0 0     # set to 0 speed

... e veja se funciona.

Desativar controle de ventilador do BIOS

Se funcionar, mas em algum momento está lutando na velocidade estabelecida (relatada por muitos usuários em laptops Dell Latitude), isso se deve às sessões programadas do SMM que definem a velocidade do ventilador de volta. Felizmente, existe uma maneira de desativar o controle do ventilador do BIOS gravando nos registradores SMM .

Aviso: veja o aviso no topo do smm.c. Este método irá gravar em registradores SMM. No entanto, não vi nenhum relatório do usuário sobre isso causando problemas. Além disso, todos os relatórios sobre tentativas demonstraram sucesso na desativação do controle do ventilador do BIOS.

i8kutils inclui a origem de um programa smm , mas o pacote i8kutils não inclui o binário compilado. O que faremos é baixar o código-fonte de i8kutils , compilar o programa smm e executá-lo com um argumento apropriado para desativar o controle do ventilador do BIOS gravando nos registradores SMM.

Faça o download dos pacotes necessários para a construção:

$ sudo apt-get build-dep i8kutils

Faça o download do código-fonte i8kutils , extraia e entre no diretório (nomes exatos, dependendo da versão do i8k):

$ apt-get source i8kutils
$ tar xvf i8kutils_1.33.tar.gz
$ cd i8kutils-1.33/

Compilar smm :

  • Se estiver em um sistema de 32 bits :

    $ make
    

    (Acima executará gcc -g -O2 -Wall -I. -o smm smm.c .)

  • Se estiver em um sistema de 64 bits :

    $ gcc -g -O2 -Wall -I. -o smm -m32 smm.c
    

Execute smm com o argumento 30a3 para desativar o controle de ventilador do SMM:

$ sudo ./smm 30a3

Agora, o controle do ventilador do BIOS deve estar desativado. Tente definir as velocidades com i8kctl , ouça o ventilador e verifique se a velocidade persiste.

Nota: Esta é uma configuração que irá persistir reinicializações e desligamentos. O controle do ventilador do BIOS pode ser ativado novamente com $ sudo ./smm 31a3 .

* 1: Eu vi uma fonte oficial sobre isso, não consigo encontrá-lo agora. Se você quiser verificar se o seu hardware não tem, siga as instruções aqui: link

* 2: para verificar isso, execute pwmconfig: sudo apt-get install fancontrol , sudo pwm-config dirá se um ventilador compatível com pwm está presente ou não

    
por Carl 01.01.2014 / 19:54
14

O pacote lm-sensors pode ser o que você está procurando.

E como você sugeriu fancontrol .

Certifique-se de que todos os ventiladores que você está tentando controlar via software tenham o conector de 4 pinos.

"Uma ventoinha com capacidade PWM é normalmente conectada a um conector de 4 pinos (pinagem: Terra, + 12V, sentido, controle)." fonte

Quando executo o pwmconfig , que faz parte do fancontrol, recebo

/usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed Ele irá guiá-lo se você tiver hardware compatível.

Aqui estão alguns scripts para usar em conjunto com esse arquivo de configuração gerado. Eu suponho que você poderia definir um valor mais alto aqui.

label fan1 "Side Fan"
set fan1_min 1000
label fan2 "PSU Fan"
set fan2_min 1000
label fan5 "CPU Fan"
set fan5_min 1000

Mas, como eu disse, eu não posso testar isso sozinho, já que meu hardware não suporta, eu posso controlar meus fãs da bios, mas é uma nota de 3. Eu uso isso para manter meus fãs lentos e silencioso.

    
por filescraps 29.09.2011 / 20:56
5

Ok, esta pode não ser a resposta que você está procurando, mas meus problemas de superaquecimento foram resolvidos, quando removi a poeira colocando um aspirador de pó nas entradas de ventilação. Se você tiver superaquecimento em freqüências baixas, isso pode valer a pena tentar. Esteja ciente de que talvez peças pequenas possam ser sugadas. Se você tiver sorte, este método pode resolver problemas de superaquecimento.

    
por Ewald 06.10.2011 / 18:39
3

Eu tenho um Dell Latitude e4200 e o seguinte funcionou para mim porque o BIOS estava sobrescrevendo a configuração do i8kfan. A temperatura inicial do meu computador foi de 105 graus e cerca de 10 minutos depois de usar essas etapas (ajuste do ventilador = 2), o tempo de CPU / Core caiu para 96 graus. Este procedimento já foi postado por alguém:

Passo 1. Baixe e instale i8ktutils:

# sudo apt-get install i8kutils

Etapa 2. Ignorar o BIOS para impedir que ele interrompa as configurações personalizadas do ventilador. Faça o download do código-fonte e compile um programa (SMM) para fazer isso:

# sudo apt-get build-dep i8kutils

então:

# apt-get source i8kutils

Etapa 3. Extraia o código-fonte e faça o cd no diretório:

# tar xvf i8kutils_1.33.tar.gz

então:

# cd i8kutils-1.33/

Etapa 4. Compile o SMM

For 32-bit systems:

# make SMM

(Output: # gcc -g -O2 -Wall -I. -o smm smm.c.)

For 64-bit systems

# make SMM:

(Output: # gcc -g -O2 -Wall -I. -o smm -m32 smm.c)

Etapa 5. Execute o SMM com parâmetros:

# sudo ./smm 30a3

Etapa 6. Defina as velocidades do ventilador:

# i8kfan 2 2 (Listen as this will set fans to maximum speed)

# i8kfan 1 1 (This will set fans to slow speed)

Agora o controle do ventilador do BIOS não deve substituir as configurações do ventilador. Essa configuração permanecerá mesmo se o sistema for reinicializado. Para devolver o controle ao BIOS, por algum motivo, faça o seguinte procedimento:

# sudo ./smm 31a3.

Há também uma maneira de verificar a temperatura usando lm_sensors:

http://www.cyberciti.biz/faq/howto-linux-get-sensors-information/
    
por user245946 08.02.2014 / 07:08