GNU/Linux >> Znalost Linux >  >> Linux

Zaznamenává Linux obvykle data o teplotě systému?

Nevím o běžné distribuci Linuxu, která ve výchozím nastavení protokoluje tento typ informací. Většina mainstreamových linuxových distribucí obsahuje různé balíčky, které dokážou zaznamenávat teploty, a některé z těchto balíčků jsou standardně nastaveny tak, aby se protokolovaly.

Vezměme si jako příklad Debian, sensord bude pravidelně zaznamenávat všechny informace, o kterých ví (teploty systému, napětí atd.), do systémového deníku, ale musí být konfigurován ručně, než bude moci zaznamenávat cokoli užitečného; hddtemp lze nastavit tak, aby pravidelně zaznamenávala teploty pevného disku. Mnoho dalších nástrojů může získávat tento typ informací (pomocí IPMI, SNMP atd.), ale opět je ve většině případů nutné nakonfigurovat, buď aby měly přístup k informacím na prvním místě, nebo aby je mohly interpretovat, nebo obojí.

Tento požadavek na konfiguraci znamená, že by bylo obtížné nastavit generickou distribuci, která by standardně zaznamenávala teploty smysluplným způsobem. (Většina systémů, které jsem viděl, má alespoň jeden neplatný monitorovací záznam, který by spustil poplach, pokud by byl automaticky konfigurován!) Samozřejmě je zcela možné nastavit obraz instalačního programu pro vaše vlastní systémy, protože víte, co jsou a jak jsou nakonfigurovány... Jakmile nakonfigurujete různé nástroje potřebné k extrakci informací o teplotě, bude pro vás lepší použít vhodný monitorovací nástroj (jako je Munin) k protokolování teplot, místo abyste se spoléhali na systémové protokoly. Tímto způsobem můžete také nastavit upozornění, abyste byli upozorněni, když se něco nedaří.

Rozšíření na sensord jeho výstup můžete například najít v systémovém protokolu s sensord jako název procesu; takže buď hledejte sensord v /var/log/syslog (ve výchozím nastavení) nebo spusťte journalctl -u sensord . Uvidíte pravidelné protokoly, jako jsou následující (odstranil jsem datum a název hostitele):

sensord[2489]: Chip: acpitz-virtual-0
sensord[2489]: Adapter: Virtual device
sensord[2489]:   temp1: 27.8 C
sensord[2489]:   temp2: 29.8 C
sensord[2489]: Chip: coretemp-isa-0000
sensord[2489]: Adapter: ISA adapter
sensord[2489]:   Physical id 0: 33.0 C
sensord[2489]:   Core 0: 29.0 C
sensord[2489]:   Core 1: 30.0 C
sensord[2489]:   Core 2: 26.0 C
sensord[2489]:   Core 3: 29.0 C
sensord[2489]: Chip: nct6776-isa-0a30
sensord[2489]: Adapter: ISA adapter
sensord[2489]:   in0: +1.80 V (min = +1.60 V, max = +2.00 V)
sensord[2489]:   in1: +1.86 V (min = +1.55 V, max = +2.02 V)
sensord[2489]:   in2: +3.41 V (min = +2.90 V, max = +3.66 V)
sensord[2489]:   in3: +3.39 V (min = +2.83 V, max = +3.66 V)
sensord[2489]:   in4: +1.50 V (min = +1.12 V, max = +1.72 V)
sensord[2489]:   in5: +1.26 V (min = +1.07 V, max = +1.39 V)
sensord[2489]:   in6: +1.04 V (min = +0.80 V, max = +1.20 V)
sensord[2489]:   in7: +3.31 V (min = +2.90 V, max = +3.66 V)
sensord[2489]:   in8: +3.22 V (min = +2.50 V, max = +3.60 V)
sensord[2489]:   fan1: 1251 RPM (min = 200 RPM)
sensord[2489]:   fan2: 0 RPM (min = 0 RPM)
sensord[2489]:   fan3: 299 RPM (min = 200 RPM)
sensord[2489]:   fan4: 1315 RPM (min = 0 RPM)
sensord[2489]:   fan5: 628 RPM (min = 200 RPM)
sensord[2489]:   SYSTIN: 32.0 C (limit = 80.0 C, hysteresis = 70.0 C)
sensord[2489]:   CPUTIN: 33.0 C (limit = 85.0 C, hysteresis = 80.0 C)
sensord[2489]:   AUXTIN: 24.0 C (limit = 80.0 C, hysteresis = 75.0 C)
sensord[2489]:   PECI Agent 0: 31.0 C (limit = 95.0 C, hysteresis = 92.0 C)
sensord[2489]:   PCH_CHIP_CPU_MAX_TEMP: 57.0 C (limit = 95.0 C, hysteresis = 90.0 C)
sensord[2489]:   PCH_CHIP_TEMP: 0.0 C
sensord[2489]:   PCH_CPU_TEMP: 0.0 C
sensord[2489]:   beep_enable: Sound alarm enabled
sensord[2489]: Chip: jc42-i2c-9-18
sensord[2489]: Adapter: SMBus I801 adapter at 0580
sensord[2489]:   temp1: 32.8 C (min = 0.0 C, max = 60.0 C)
sensord[2489]: Chip: jc42-i2c-9-19
sensord[2489]: Adapter: SMBus I801 adapter at 0580
sensord[2489]:   temp1: 33.5 C (min = 0.0 C, max = 60.0 C)
sensord[2489]: Chip: jc42-i2c-9-1a
sensord[2489]: Adapter: SMBus I801 adapter at 0580
sensord[2489]:   temp1: 34.0 C (min = 0.0 C, max = 60.0 C)
sensord[2489]: Chip: jc42-i2c-9-1b
sensord[2489]: Adapter: SMBus I801 adapter at 0580
sensord[2489]:   temp1: 33.2 C (min = 0.0 C, max = 60.0 C)

Abych to získal, musel jsem určit, které moduly jsou potřeba (pomocí sensors-detect ):ve výchozím nastavení systém věděl pouze o teplotách hlášených ACPI, které ve skutečnosti ničemu neodpovídají (nikdy se nemění). coretemp udává teploty jádra CPU na procesorech Intel nct6776 je hardwarový monitor základní desky a jc42 je monitor teploty na modulech DIMM. Aby to bylo užitečné pro automatické monitorování, měl bych alespoň deaktivovat hodnoty ACPI a znovu označit ventilátory a opravit fan4 minimální hodnota. Existuje mnoho dalších možností konfigurace, lm_sensors Příklad konfiguračního souboru poskytuje určitou představu.


Některé pevné disky automaticky uchovávají nedávnou historii teplot. Od man smartctl :

scttemp, scttempsts, scttemphist - [pouze ATA] vytiskne informace o teplotě disku poskytované příkazy SMART Command Transport (SCT). Volba 'scttempsts' vytiskne aktuální teplotu a rozsahy teplot vrácené příkazem SCT Status, 'scttemphist' vytiskne teplotní limity a tabulku historie teplot vrácenou příkazem SCT Data Table a ,scttemp' vytiskne obojí. Hodnoty teploty jsou zachovány po celých cyklech napájení. Interval protokolování lze nakonfigurovat pomocí volby ´-l scttempint,N[,p]´, viz níže. Příkazy SCT byly zavedeny v ATA8-ACS a byly také podporovány mnoha disky ATA-7.

Příkaz jako smartctl -data -l scttemphist /dev/sda vám poskytne historii teplot, pokud to disk podporuje. Například:

Index    Estimated Time   Temperature Celsius
 103    2017-06-27 11:10    31  ************
 ...    ..( 24 skipped).    ..  ************
   0    2017-06-27 15:20    31  ************
   1    2017-06-27 15:30    30  ***********
 ...    ..(  9 skipped).    ..  ***********
  11    2017-06-27 17:10    30  ***********
  12    2017-06-27 17:20    31  ************
  13    2017-06-27 17:30    30  ***********
 ...    ..( 51 skipped).    ..  ***********
  65    2017-06-28 02:10    30  ***********
  66    2017-06-28 02:20    31  ************
  67    2017-06-28 02:30    32  *************
  68    2017-06-28 02:40    31  ************
  69    2017-06-28 02:50    30  ***********
  70    2017-06-28 03:00    31  ************
  71    2017-06-28 03:10    30  ***********
  72    2017-06-28 03:20    30  ***********
  73    2017-06-28 03:30    31  ************
  74    2017-06-28 03:40    30  ***********
  75    2017-06-28 03:50    31  ************
  76    2017-06-28 04:00    31  ************
  77    2017-06-28 04:10    30  ***********
 ...    ..( 22 skipped).    ..  ***********
 100    2017-06-28 08:00    30  ***********
 101    2017-06-28 08:10    31  ************
 102    2017-06-28 08:20    30  ***********

Kromě toho však budete muset nakonfigurovat/instalovat nástroj (viz odpověď Stephena Kitta).


Linux
  1. Jak administrátor Linuxu zabezpečuje data

  2. Linux – Jak se Gnome restartuje bez oprávnění root?

  3. Linux – Proč Linux umožňuje „init=/bin/bash“?

  1. Co je POSIX? Proč je to pro uživatele Linuxu/UNIXu důležité?

  2. Linux – jak často je systém souborů Proc aktualizován v systému Linux?

  3. Jak Linux používá hodiny reálného času?

  1. Systémové statistiky:Statistiky Linuxu, které je třeba znát

  2. Existuje již problém Thundering Herd v Linuxu?

  3. Kolik dat SSH obvykle používá?