Як отримати температуру процесора?


Відповіді:


584

Встановіть lm-датчики Встановіть lm-датчики

sudo apt-get install lm-sensors 

Після установки введіть наступне в терміналі

sudo sensors-detect

Вам також може знадобитися бігти

sudo service kmod start

Це задасть вам кілька запитань. Відповідь так для всіх. Нарешті, щоб sensorsу терміналі отримати тип температури процесора .

sensors

Вихід:

$ sensors
coretemp-isa-0000
Adapter: ISA adapter
Core 0:      +41.0°C  (high = +78.0°C, crit = +100.0°C)  

coretemp-isa-0001
Adapter: ISA adapter
Core 1:      +41.0°C  (high = +78.0°C, crit = +100.0°C)  

w83627dhg-isa-0290
Adapter: ISA adapter
Vcore:       +1.10 V  (min =  +0.00 V, max =  +1.74 V)   
in1:         +1.60 V  (min =  +1.68 V, max =  +1.44 V)   ALARM
AVCC:        +3.30 V  (min =  +2.98 V, max =  +3.63 V)   
VCC:         +3.28 V  (min =  +2.98 V, max =  +3.63 V)   
in4:         +1.85 V  (min =  +1.66 V, max =  +1.11 V)   ALARM
in5:         +1.26 V  (min =  +1.72 V, max =  +0.43 V)   ALARM
in6:         +0.09 V  (min =  +1.75 V, max =  +0.62 V)   ALARM
3VSB:        +3.30 V  (min =  +2.98 V, max =  +3.63 V)   
Vbat:        +3.18 V  (min =  +2.70 V, max =  +3.30 V)   
fan1:          0 RPM  (min = 10546 RPM, div = 128)  ALARM
fan2:        892 RPM  (min = 2136 RPM, div = 8)  ALARM
fan3:          0 RPM  (min = 10546 RPM, div = 128)  ALARM
fan4:          0 RPM  (min = 10546 RPM, div = 128)  ALARM
fan5:          0 RPM  (min = 10546 RPM, div = 128)  ALARM
temp1:       +36.0°C  (high = +63.0°C, hyst = +55.0°C)  sensor = diode
temp2:       +39.5°C  (high = +80.0°C, hyst = +75.0°C)  sensor = diode
temp3:      +119.0°C  (high = +80.0°C, hyst = +75.0°C)  ALARM  sensor = thermistor
cpu0_vid:   +2.050 V

Щоб побачити температуру жорсткого диска, встановіть hddtemp Встановіть hddtemp

sudo apt-get install hddtemp

Вихід:

$ sudo hddtemp /dev/sda        
/dev/sda: ST3160813AS: 34°C

4
Це працює не на всьому апаратному забезпеченні. У моїй системі sensorsзавжди відображається температура + 40,0 ° C.
— Кіт Томпсон

6
У моїй системі 13.04 це sudo service kmod startзамістьsudo service module-init-tools start
— knb

82
Ви можете бігти, watch sensorsщоб побачити значення температури, що оновлюються щосекунди.
— Дрю Ноакс

16
Це дає попередження про ризик. Ви впевнені, що вам слід відповісти "так" на все? Я не думаю, що вони розмістили ці повідомлення там для розваги ...
— stommestack

6
щоб відповісти "так" на всі питання, що визначають датчики, запустітьyes yes | sensors-detect
— hanshenrik

147

Швидке рішення командного рядка; показує температуру в міліградах Цельсія (м ° С)

cat /sys/class/thermal/thermal_zone*/temp

Аплет

Якщо ви шукаєте простішу доступну версію, додайте апаратний монітор датчиків до панелі Gnome:

  1. sudo apt-get install sensors-applet- це встановить пакет sensors-applet Встановіть датчики-аплети
  2. Клацніть правою кнопкою миші на панелі, виберіть Add to panel..., а потім виберіть це: alt текст

  3. Ви закінчили. Ви можете налаштувати, які датчики відображаються, клацнувши аплет правою кнопкою миші та вибравши Preferences->Sensors.

    alt текст


12
Рішення вашого командного рядка може працювати не для всіх. Тому що шлях буде різним для кожної версії ядра.
— karthick87

3
Так, це не працювало для мене.
— 8128

3
У моїй системі Ubuntu 12.04 немає /proc/acpi/thermal_zone/THRM/temperature; насправді немає нічого під /procназвою temperature.
— Кіт Томпсон

13
Це тому, що "/ proc" застаріло; спробуйте '/ sys / class / thermal / termal_zone0 / temp'
— математика

4
для яких одиниць cat /sys/class/thermal/thermal_zone0/temp? Чи можете ви перетворити його на C / F? ... Схоже, перші дві цифри - це перші дві цифри, що передують десятковому знаку, а наступні - цифри, наступні за десятковою комою за Цельсієм.
— dylnmc

104

Хорошим показником для контролю температури, швидкості обертання вентилятора та напруги є сенсор . Він показує вихід усіх датчиків, малює графіки. Також вибрані виходи можуть бути розміщені на індикаторній панелі.

псенсор у дії

Його можна встановити з сховищ Ubuntu, ввівши:

sudo apt-get install psensor

Новіші версії psensor можна встановити з ppa:

sudo add-apt-repository ppa:jfi/ppa
sudo apt-get update
sudo apt-get install psensor

Він також може малювати графіки, коли ви поставите галочки в стовпці графіка:

Знімок екрана

Ось трохи інформації з більше фотографій.

Ще одне корисне посилання

У деяких випадках не всі датчики відображаються. Тоді можна бігти

sudo sensors-detect

і відповісти "так" на всі питання. Але в деяких випадках це не зовсім безпечно, але у мене жодних справжніх проблем із цим не виникало. Більш безпечний спосіб - це відповіді за замовчуванням.

Можуть з’явитися деякі додаткові датчики.


Тепер ЦЕ - бомба. Прямо на.
— SDsolar

На моєму Ubuntu 16.04 psensorінколи буде використовувати 30% процесор, що підвищує температуру.
— dirkjot

2
його лайно додаток. займає 100% процесор
— raaj

Проблема все ще зберігається. Додаток непридатний.
— Євген

@raaj - ця помилка десь повідомляється?
— Матеуш Коньєчний

54

Температура без сторонніх додатків

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

$ cat /sys/class/thermal/thermal_zone*/temp
20000
53000
50000
53000
56000
68000
49000
50000

Щоб побачити, в яких зонах використовуються температури:

$ paste <(cat /sys/class/thermal/thermal_zone*/type) <(cat /sys/class/thermal/thermal_zone*/temp) | column -s $'\t' -t | sed 's/\(.\)..$/.\1°C/'
INT3400 Thermal  20.0°C
SEN1             45.0°C
SEN2             51.0°C
SEN3             57.0°C
SEN4             59.0°C
pch_skylake      77.5°C
B0D4             50.0°C
x86_pkg_temp     51.0°C

Температури зберігаються в Цельсії з 3 десятковою комою. sedвикористовується для "вдосконалення" виводу.

Про останню температуру x86_pkg_tempповідомляється при 54.0°C. Для процесора Skylake i7 6700HQ я використовував цю температуру для відображення Conky нижче.

Температура з Конкі

Якщо ви не заперечуєте проти сторонніх утиліт, я хотів би використовувати Conky - монітор системи легкої ваги.

Конькі команди

Системна змінна, яку я використовував для моніторингу процесора Ivy Bridge, у межах:

${hwmon 2 temp 1}°C

Для моніторингу процесора Skylake я використовував:

${hwmon 0 temp 1}°C

Конічний дисплей

Конічний дисплей виглядає приблизно так:

введіть тут опис зображення

Температура починається від 72 ° C, при цьому один процесор працює на 100% в турбо-режимі 3200 МГц. Потім турбо вимикається, а темп падає від 10 ° С до 62 ° С з нетурбовою швидкістю 2600 МГц. Через 10 секунд турбо включається, і температура одразу ж зростає до 72 ° С.


Контроль температури

Знаючи свою температуру, ви, мабуть, хочете краще контролювати її. tlpтворить чудеса, щоб тримати систему під контролем. Він працює з thermaldIntel Powerclamp, Battery vs AC для живлення USB і т. Д. Незважаючи на те, що можна налаштувати, мені ніколи не доводилося змінювати налаштування конфігурації для приємного досвіду Out-Of-The-Box. До його використання у мене постійно виникали всілякі проблеми з перегрівом ноутбука IvyBridge. У мене це є на моєму новому ноутбуці Skylake і вентилятори НІКОЛИ не працюють, за винятком випадків, коли ви робите оновлення Ubuntu 16.04 LTS до 18.04.

Ви можете отримати дуже детальну інформацію про інструкції з установки тут: Не зупиняйте процесор від перегріву


2
що це за одиниця? яблука? 1 / 1000й ° С? 59/29402 ° F?
— Blauhirn

@Blauhirn Linux повідомляє про температуру як "69000", що становить 69 000 градусів Цельсія. В усьому моєму тестуванні він завжди буде "000" після десяткової десяткової крапки, тому я не впевнений, чому Linux так формує плечі . Дякуємо за ваш коментар, хоча це дозволило мені оновити конічний показ із поточною версією.
— WinEunuuchs2Unix

Ваша цитата каже 48000, але ваш текст говорить, що це 57 градусів Цельсія? Я збентежений.
— Нд

@Sun я відновив однолінійний апарат за допомогою новішого процесора і не переглянув пояснення належним чином. Виправлено!
— WinEunuuchs2Unix

1
@ncoghlan Дякую .5час від часу з’являється, і ваші sedзміни будуть це впорати.
— WinEunuuchs2Unix

37

hardinfo Встановіть жорстку інформацію - дуже корисні інструменти для отримання всієї технічної інформації.

Встановіть важку інформацію від sudo apt-get install hardinfo. Тоді ви можете отримати температуру за допомогою датчиків.

датчик


22
Добре виглядає засіб, за винятком кожної окремої сторінки, за винятком датчиків (наприклад, порожнє) ...
— frumbert

15
не працює для датчиків
— Мудіт Капіль

@frumbert Я думаю, це залежить від цього lm-sensors!
— Пандія

Мені також подобається таблиця ARP. Дуже зручно перевірити, що підключено до моєї підмережі.
— SDsolar

Показові показники досить застарілі в цій програмі.
— Андрій Макуха

32
  1. встановіть невеликий пакет acpi Встановіть acpi за допомогою цієї команди

    sudo apt-get install acpi
    
  2. Вам потрібно буде натиснути Y для підтвердження вперше. Тепер, щоб знайти температуру, введіть цю команду

    acpi -t
    

23
Це простіше, ніж відповіді про lm-sensors. Чи можете ви пояснити різницю між acpiта lm-sensors?
— fikr4n

1
На Ubuntu 16.04, ноутбук Skylake, acpi -tнічого не видається . Це допустимий варіант, просто не працює - версія: acpi 1.7.
— WinEunuuchs2Unix

Я успішно використовував acpi -tу grml live CD-системі для моніторингу температури кожного штампу процесора Core i3. lm-sensorsне встановлено на grml, і я не можу встановити там інші пакунки. grml.org
— Даніель Бьомер

20

XSensors

XSensors зчитує дані з бібліотеки лібсенсорів щодо стану обладнання, таких як температура, напруга та швидкість вентилятора та відображає інформацію в цифровому зчитуванні.

Відкрийте термінал і введіть:

sudo apt-get install xsensors lm-sensors

Потім виявіть апаратні датчики комп'ютера, відкривши термінал і запустивши команду:

sudo sensors-detect

Тоді вам буде задано багато питань про те, яке обладнання ви хочете, щоб програма виявила. Зазвичай безпечно і рекомендується приймати відповіді за замовчуванням на всі питання, якщо ви не знаєте, що робите.

Скріншот XSensors

Xsensors vs. Psensor

XSensors і Psensor відстежують температуру комп'ютера та швидкість роботи вентилятора. Різниця між двома програмами полягає у рівні деталізації інформації, яка відображається, та способу відображення інформації.

XSensors відображає трохи більш конкретну інформацію, ніж Psensor. Psensor менший і ненав'язливіший, ніж XSensors, і він відображається на робочому столі як невеликий значок термометра в області сповіщень у правому верхньому куті робочого столу поруч із годинником. Ви можете будь-коли клацнути правою кнопкою миші піктограму термометра для відображення апаратних температур.

Налаштування Psensor для виявлення апаратних засобів вашого комп'ютера робиться так само, як Xsensors, встановивши lm-датчики для виявлення апаратних датчиків вашого комп'ютера. Потім виявіть апаратні датчики комп'ютера, які виконують команду:

sudo sensors-detect  

і як у Xsensors, прийміть відповіді за замовчуванням на всі запитання.

В Ubuntu 16.04 і пізніших версіях Psensor автоматично визначає апаратні датчики комп'ютера, не працюючи sudo sensors-detect


2
Psensor здається більш розвиненим
— Серж

1
Я згоден, @Serge. psensor - це той, який я збираюся використовувати.
— SDsolar

Я також використовую Psensor.
— карел

17

Після встановлення lm-датчиків:

sudo apt-get install lm-sensors

запустити:

sudo sensors-detect

Ви можете запустити таку команду для перегляду темпів обладнання:

watch -n 1 sensors

Також вентилятор зазвичай управляється BIOS.


12
Мені подобається порада щодо використання годинника, це один з моїх улюблених. Я також рекомендую додати опцію -d для перегляду, щоб виділити відмінності.
— Джошуа К

Це дало мені 4 ядра темп читання на моєму i7-3770 на Ubuntu 16.0.4 LTS з 100% процесором (~ 77 градусів Цельсія)
— Нд

12

На Raspberry Pi можна встановити температуру, використовуючи vcgencmd:

vcgencmd measure_temp

Вихід:

temp=39.0'C

2
Ні, це дасть вам частоту. Використанняvcgencmd measure_temp
— MrD

Вибачте, дуже болісна помилка копіювання та вставки :)
— Ercksen

9

Так що ви, хлопці, знаєте, нічого з цього sensorsне потрібно встановлювати. Просто зробіть acpi -Vі БУМ, у вас все є. Приклад:

Battery 0: Charging, 91%, 00:17:25 until charged
Battery 0: design capacity 3310 mAh, last full capacity 3309 mAh = 99%
Adapter 0: on-line
Thermal 0: ok, 40.0 degrees C
Thermal 0: trip point 0 switches to mode critical at temperature 127.0 degrees C
Thermal 0: trip point 1 switches to mode hot at temperature 127.0 degrees C
Cooling 0: pkg-temp-0 no state information available
Cooling 1: LCD 0 of 100
Cooling 2: Processor 0 of 10
Cooling 3: Processor 0 of 10
Cooling 4: Processor 0 of 10
Cooling 5: Processor 0 of 10

ШЛЯХО простіше, ніж установка всього цього і kmod ... Просто зробіть acpi -V.


25
Правильно ... тому що вам не доведеться встановлювати його? Неправильно! The program 'acpi' is currently not installed. You can install it by typing: sudo apt-get install acpi
— e-sushi

8
І це також не завжди дає однакову інформацію. На моїй машині sensorsпередбачена температура, тоді як acpi -V, на жаль, нічого не показує.
— Пер Лундберг

1
acpi -Vзламана для ноутбука Skylake, Ubuntu 16.04, версія acpi 1.7
— WinEunuuchs2Unix

5
/sys/class/thermal/thermal_zone0/temp

цей файл містить температуру процесора. Таким чином, ви можете створити скрипт з ім'ям tempі перемістити його до /binпотім у термінальний вхід temp.

Мій tempфайл виглядає як -

 #!/bin/bash
 cpu_temp=$(< /sys/class/thermal/thermal_zone0/temp)
 cpu_temp=$(($cpu_temp/1000))
 echo $cpu_temp°C

моя відповідь модифікована на www.cyberciti.biz


Я спробував 4 машини в різних місцях, і всі вони дають однакове читання = 27800. Ви знаєте, чому це могло бути? У всіх їх не може бути однакова температура процесора.
— Кату

@Katu Я думаю, що це може означати 27,8 градусів. Я використав іншу програму і виявив, що мій Core 0 становив 49 С. Потім я зробив вищезазначену команду і отримав 49000.
— Філіп Кіркбрід

5

Все баш:

getTemp () {
  for zone in `ls /sys/class/thermal/ | grep thermal_zone`
  do
    echo -n "`cat /sys/class/thermal/$zone/type`: "
    echo `cat /sys/class/thermal/$zone/temp | sed 's/\(.\)..$/.\1°C/'`
  done
}

getProcesses() {
  top -b -n 1 | head -n 12  | tail -n 6
}

update () {
  while :
  do
    clear
    getTemp
    echo -e "\nTop 5 CPU hogs:"
    getProcesses
    sleep 5
  done
}


update

1
Це насправді досить хороший сценарій.
— Філіп Дельтейль

4

Якщо вам подобається Python, ви можете використовувати psutil.

>>> import psutil
>>> psutil.sensors_temperatures()['coretemp']
[shwtemp(label='Physical id 0', current=67.0, high=100.0, critical=100.0), shwtemp(label='Core 0', current=67.0, high=100.0, critical=100.0), shwtemp(label='Core 1', current=65.0, high=100.0, critical=100.0)]

... зробить роботу. Трохи кодуючи, ви можете, наприклад, отримати Temp vs CPU вашої системи.

введіть тут опис зображення

Оновити зручно psutil, видавши sudo pip3 install psutil --upgrade.


У мене він є на Python 2, але у нього немає sensors_temperaturesатрибуту, і у мене немає на Python 3. Я використовую Ubuntu 14.04. То як мені це отримати?
— wjandrea

яку версію psutil ви використовуєте? міна 5.4.3. Спробуйте оновити вам версію: sudo pip2 install psutil --upgrade.
— Лукас Аймаретто

1
Я використовую 1.2.1 на Python 2, і оновлення не вдається (але Python 2 14.04 дійсно застарів, тому мене це не турбує). Я щойно встановив 5.4.3 на Python 3 с sudo pip3 install psutil --upgrade. Чи можете ви додати це до своєї відповіді?
— wjandrea

На цій ділянці вісь x - це використання процесора, правда?
— wjandrea

1
чудова відповідь (+1) - psutil - це дорогоцінний камінь. Це ashame, він не покриває температуру жорсткого диска
— WoJ

2

computertemp Встановіть комп'ютерний крок - це простий аплет, який показує поточну температуру процесора + має деякі додаткові функції, такі як тривоги. На жаль, неможливо (або, принаймні, я не знаю, як) змінити колір тла, тому зі стандартною темою Ubuntu це виглядає не дуже добре.

Він може бути встановлений так само, як датчики-аплети, описані у відповіді Євгена .


Alt текст

Комп'ютерний режим недоступний у нових сховищах Ubuntu.


2
в Ubuntu 15.04 sudo apt-get install computertempпризводить до помилки "Неможливо знайти комп'ютерний темп пакету" ...
— Ніколя Іванов

1
printf '%d°\n' $(sensors | grep 'id 0:' | awk '{ print $4 }') 2>/dev/null
55°

printf '% d \ n' Перетворить значення в ціле число, якщо вам це потрібно як кругле число


1
Чому echo $(printf ..)і не просто printf '%d°\n' $(sensors | grep 'id 0:' | awk '{ print $4 }') 2>/dev/null? ... Або навіть простоsensors 2>/dev/null | awk '/id 0:/{printf "%d°\n", $4}'
— муру

Так, дуже багато можливостей, я щойно опублікував той, яким я користувався
— intika

1

Якщо ви використовуєте Ubuntu з MATE Desktop Environment, ви можете використовувати аплет датчиків MATE:

  1. Встановіть пакет:

    sudo apt-get install mate-sensors-applet
    

    А якщо у вас є відеокарта Nvidia, ви також можете встановити mate-sensors-applet-nvidiaпакет.

  2. Клацніть правою кнопкою миші на панелі MATE та натисніть кнопку Додати до панелі, а потім виберіть « Монітор датчиків обладнання»

    Монітор апаратних датчиків

  3. Після додавання ви можете налаштувати його, клацнувши правою кнопкою миші на будь-якому датчику та вибравши Налаштування

    Налаштування Монітор апаратних датчиків

    Тут ви можете налаштувати список датчиків: температура процесора, материнської плати та графічного процесора, основні напруги (Vcore, 3.3V, 5V, 12V тощо) та швидкості вентилятора. Повний список залежить від обладнання (зображення вище для робочого столу з графічною картою Nvidia).

  4. Результат буде виглядати приблизно так

    Датчики

Звичайно, ви можете перемістити цей аплет в найкраще місце.


0

Існує дуже багато різних місць, де ви можете знайти температуру, перелічену в міліградах. Я нарешті знайшов тут своє:

/sys/devices/platform/coretemp.0/temp*_input

Ось деякі інші місця, де користувачі повідомили, що виявили свою температуру

/proc/acpi/thermal_zone/THRM/temperature
/sys/class/thermal/thermal_zone*/temp
/sys/class/thermal/cooling_device*/temp
/sys/devices/platform/f71882fg.1152/temp*_input
/sys/devices/platform/coretemp.0/hwmon/hwmon*/temp*_input

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


0

Тільки для процесорів Intel, які ви можете використовувати i7z.

i7z - кращий інструмент звітування i7 (а тепер i3, i5) для Linux.

Встановіть його:

sudo apt install i7z 

Потім запустіть його (його потрібно запустити sudo):

sudo i7z

Приклад виведення (див. TempСтовпчик - прокрутка праворуч ...):

Real Current Frequency 4883.47 MHz [99.98 x 48.85] (Max of below)
    Core [core-id]  :Actual Freq (Mult.)      C0%   Halt(C1)%  C3 %   C6 %  Temp      VCore
    Core 1 [0]:       4883.47 (48.85x)      10.4    73.7    1.45    12.8    47      1.3547
    Core 2 [1]:       4871.56 (48.73x)      8.65    76.8     1.5    11.7    45      1.3547
    Core 3 [2]:       4877.61 (48.79x)      12.2    75.1       1    9.72    52      1.3547
    Core 4 [3]:       4880.70 (48.82x)      7.57    79.7       1    10.5    47      1.3547
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.