Як отримати показання датчиків для останніх апаратних засобів?


10

Як мені найкраще оновити lm-sensorsроботу з останнім обладнанням?

У мене є нова установка сервера Ubuntu 10.10, і я отримую наступне:

$ sudo apt-get install lm-sensors
$ sensors
No sensors found! [...] 
Try sensors-detect [...]
$ sudo sensors-detect
[...]
Driver 'to-be-written':
  * Chip "Nuvoton W83667HG-B Super IO Sensors" (confidence: 9)
Note: there is no driver for [this sensor] yet.
Check http://www.lm-sensors.org/wiki/Devices for updates.

Посилання каже мені , що цей чіп підтримується ядро 2.6.36 ( в той час як Ubuntu 10,10 використовує 2.6.35) або за допомогою драйвера автономного .

Який найпростіший спосіб оновити lm-датчики?


3
Я зрозумів це, але думаю, що йому потрібно HOWTO, тож я скоро опублікую відповідь.
jg-faustus

Відповіді:


11

Це основні альтернативи:

Зачекайте : якщо ви не вважаєте показання сенсорів критичними, ви можете просто дочекатися наступного випуску Ubuntu, який може включати підтримку мікросхеми за замовчуванням.

Автономний драйвер : якщо ви не хочете чекати, окремий драйвер може бути найкращим варіантом, оскільки він вносить мінімальні зміни до решти системи. Дивіться нижче, як встановити його.

Оновлення ядра : Це дещо ризикованіше, оскільки ви будете використовувати непідтримувану та неперевірену комбінацію версії Ubuntu та версії ядра - оновлення ядра може виправити підтримку сенсора, порушуючи щось інше. Оновлення ядра може також спрацювати чудово, якщо ви готові відкотитись у випадку, якщо цього не відбудеться.

Найпростіший спосіб оновлення ядра - це використання одного з попередньо вбудованих пакетів ядра Ubuntu, див. Інструкції щодо збірки ядра ubuntu.com .


Встановлення автономного драйвера

Прочитайте Ubuntu, що компілює HOWTO , встановіть інструменти для компіляції:

sudo apt-get install build-essential

Завантажте вихідний код для драйвера

    wget [.h, .c and Makefile files]
  • Складіть, встановіть та завантажте новий модуль. Ось w83627ehfназва нещодавно складеного драйвера, воно буде відрізнятися між системами.

    make all
    sudo make install
    sudo modprobe w83627ehf
    

Перевірте, чи працює він

    $ sensors
    w83667hg-isa-0a10
    Adapter: ISA adapter
    in0:       +1.18 V  (min =  +0.62 V, max =  +1.47 V)   
    in1:       +1.11 V  (min =  +1.05 V, max =  +1.15 V)   
    [... snip ...]

Додати конфігурацію

Він все ще потребує конфігурації чіпа, це важка частина.

  • Вдалий випадок: знайдіть готовий конфігурацію в конфігураціях lm-sensors.org .
  • Полювання Google: шукайте ім’я чіпа, і ви можете знайти когось із тим самим чіпом та робочою конфігурацією.
  • Остання можливість: порівняйте зі значеннями в BIOS і зробіть зрозумілу здогадку про те, яке читання йде куди.
  • Конфігурація входить /etc/sensors3.conf
  • Перезавантажте ( sudo sensors -s) або перезапустіть ( sudo service lm-sensors restart), щоб використовувати нову конфігурацію.

Перевірка постконфігурації

    $ sensors
    w83667hg-isa-0a10
    Adapter: ISA adapter
    VCore:       +1.18 V  (min =  +0.62 V, max =  +1.47 V)   
    Vtt:         +1.11 V  (min =  +1.05 V, max =  +1.15 V)   
    AVCC:        +3.34 V  (min =  +2.98 V, max =  +3.63 V)   
    +3.3V:       +3.34 V  (min =  +2.98 V, max =  +3.63 V)   
    IGD:         +1.56 V  (min =  +1.00 V, max =  +2.00 V)   
    3VSB:        +3.26 V  (min =  +2.98 V, max =  +3.63 V)   
    VBat:        +3.31 V  (min =  +2.54 V, max =  +3.46 V)   
    CPU Fan:    1834 RPM  (min =  301 RPM, div = 32)
    M/B Temp:    +30.0°C  (high = +55.0°C, hyst = +52.0°C)  sensor = thermistor
    CPU Temp:    +67.0°C  (high = +72.0°C, hyst = +70.0°C)  sensor = thermistor
    AUX Temp:    +27.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor

Зробіть його після перезавантаження

  • Редагувати /etc/rc.local
  • Додайте рядок modprobe w83627ehf
  • (Замініть w83627ehfсенсор для вашої системи. Не забудьте поставити його перед exit 0рядком, який припиняє сценарій.)

Розсудливість перевірити вихід

  • Порівняйте sensorsлістинг із показаннями BIOS, переконайтеся, що вони знаходяться в одному з основних.
  • Якщо ви подвійно завантажуєтесь з Windows, ви можете порівняти температури процесора з Real Temp .

Калібрування відображуваних значень

  • Ви можете додати рядки, подібні compute in1 (56/10+1)*@, @/(56/10+1)до sensors3.conf. @- значення датчика. Перший обчислення перетворює значення датчика у відображене значення, другий обчислення перетворює його назад.
  • Подивитися man sensors.conf
  • Отримання точних температур вимагає отримання інфрачервоного термометра та декількох годин роботи (див. Відповідь таккату тут ), але ви, як правило, можете отримувати значення " кульової смуги " з меншими зусиллями.

Якщо ви знаєте спосіб покращити цю відповідь, будь ласка, зробіть це.


1
Відповідь FANTASIC! Врятував мій день! : D
MestreLion
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.