ติดตั้ง lm-sensors บน ubuntu

จาก Wiki Opensource

บันทึกนี้ปรับปรุงล่าสุดเมื่อวันที่ 01-09-2553

ดูแลโดย WIPAT


  • ทดสอบกับ ubuntu 10.04, 8.0.4
  • ต้นฉบับจาก http://www.lm-sensors.org/
  • ใช้ประโยชน์เพื่ออ่านค่าอุณหภูมิของ CPU และ Mainboard
  • ทดสอบพบว่าบาง hardware และบาง kernel ใช้ไม่ได้


  1. ติดตั้ง lm-sensors ด้วยคำสั่ง  sudo apt-get install lm-sensors

  2. เริ่มต้นโปรแกรมตรวจสอบ hardware ของระบบด้วยคำสั่ง sudo sensors-detect
    ระบบจะมีข้อความให้โต้ตอบกลับ ให้ป้อนแค่คำว่า yes ตลอดทุกคำถามได้เลย

    ตัวอย่างข้อความที่โต้ตอบประมาณว่า
    # sensors-detect revision 5016 (2007-11-11 22:20:16 +0100)
    This program will help you determine which kernel modules you need
    to load to use lm_sensors most effectively. It is generally safe
    and recommended to accept the default answers to all questions,
    unless you know what you're doing.
    We can start with probing for (PCI) I2C or SMBus adapters.
    Do you want to probe now? (YES/no):

    ให้ป้อนคำว่า yes  จะได้ข้อความต่อมาตัวอย่างประมาณว่า
    Probing for PCI bus adapters...
    Use driver `i2c-i801' for device 0000:00:1f.3: Intel 82801G ICH7
    We will now try to load each adapter module in turn.
    Load `i2c-i801' (say NO if built into your kernel)? (YES/no):

    ให้ป้อนคำว่า yes  จะได้ข้อความต่อมาตัวอย่างประมาณว่า
    Probing for PCI bus adapters...
    Use driver `i2c-i801' for device 0000:00:1f.3: Intel 82801G ICH7
    We will now try to load each adapter module in turn.
    Load `i2c-i801' (say NO if built into your kernel)? (YES/no): yes
    Module loaded successfully.
    If you have undetectable or unsupported adapters, you can have them
    scanned by manually loading the modules before running this script.
    To continue, we need module `i2c-dev' to be loaded.
    Do you want to load `i2c-dev' now? (YES/no):

    ให้ป้อนคำว่า yes  จะได้ข้อความต่อมาตัวอย่างประมาณว่า
    Probing for PCI bus adapters...
    Use driver `i2c-i801' for device 0000:00:1f.3: Intel 82801G ICH7
    We will now try to load each adapter module in turn.
    Load `i2c-i801' (say NO if built into your kernel)? (YES/no): yes
    Module loaded successfully.
    If you have undetectable or unsupported adapters, you can have them
    scanned by manually loading the modules before running this script.
    To continue, we need module `i2c-dev' to be loaded.
    Do you want to load `i2c-dev' now? (YES/no): yes
    Module loaded successfully.
    We are now going to do the I2C/SMBus adapter probings. Some chips may
    be double detected; we choose the one with the highest confidence
    value in that case.
    If you found that the adapter hung after probing a certain address,
    you can specify that address to remain unprobed.
    Next adapter: SMBus I801 adapter at 0500 (i2c-0)
    Do you want to scan it? (YES/no/selectively):

    ให้ป้อนคำว่า yes  จะได้ข้อความต่อมาตัวอย่างประมาณว่า
    Client found at address 0x44
    Probing for `Maxim MAX6633/MAX6634/MAX6635'...              No
    Client found at address 0x50
    Probing for `Analog Devices ADM1033'...                     No
    Probing for `Analog Devices ADM1034'...                     No
    Probing for `SPD EEPROM'...                                 Yes
        (confidence 8, not a hardware monitoring chip)
    Probing for `EDID EEPROM'...                                No
    Some chips are also accessible through the ISA I/O ports. We have to
    write to arbitrary I/O ports to probe them. This is usually safe though.
    Yes, you do have ISA I/O ports even if you do not have any ISA slots!
    Do you want to scan the ISA I/O ports? (YES/no):

    ให้ป้อนคำว่า yes  จะได้ข้อความต่อมาตัวอย่างประมาณว่า
    Probing for `National Semiconductor LM78' at 0x290...       No
    Probing for `National Semiconductor LM78-J' at 0x290...     No
    Probing for `National Semiconductor LM79' at 0x290...       No
    Probing for `Winbond W83781D' at 0x290...                   No
    Probing for `Winbond W83782D' at 0x290...                   No
    Probing for `Silicon Integrated Systems SIS5595'...         No
    Probing for `VIA VT82C686 Integrated Sensors'...            No
    Probing for `VIA VT8231 Integrated Sensors'...              No
    Probing for `IPMI BMC KCS' at 0xca0...                      No
    Probing for `IPMI BMC SMIC' at 0xca8...                     No
    Some Super I/O chips may also contain sensors. We have to write to
    standard I/O ports to probe them. This is usually safe.
    Do you want to scan for Super I/O sensors? (YES/no):

    ให้ป้อนคำว่า yes  จะได้ข้อความต่อมาตัวอย่างประมาณว่า
    Probing for Super-I/O at 0x2e/0x2f
    Trying family `National Semiconductor'...                   No
    Trying family `SMSC'...                                     No
    Trying family `VIA/Winbond/Fintek'...                       No
    Trying family `ITE'...                                      Yes
    Found `ITE IT8712F Super IO Sensors'                        Success!
        (address 0x290, driver `it87')
    Probing for Super-I/O at 0x4e/0x4f
    Trying family `National Semiconductor'...                   No
    Trying family `SMSC'...                                     No
    Trying family `VIA/Winbond/Fintek'...                       No
    Trying family `ITE'...                                      No
    Some CPUs or memory controllers may also contain embedded sensors.
    Do you want to scan for them? (YES/no): yes

    ให้ป้อนคำว่า yes  จะได้ข้อความต่อมาตัวอย่างประมาณว่า
    AMD K8 thermal sensors...                                   No
    AMD K10 thermal sensors...                                  No
    Intel Core family thermal sensor...                         No
    Intel AMB FB-DIMM thermal sensor...                         No
    Now follows a summary of the probes I have just done.
    Just press ENTER to continue:

    ให้เคาะแป้น Enter  จะได้ข้อความต่อมาตัวอย่างประมาณว่า
    Driver `it87' (should be inserted):
      Detects correctly:
      * ISA bus, address 0x290
        Chip `ITE IT8712F Super IO Sensors' (confidence: 9)
    I will now generate the commands needed to load the required modules.
    Just press ENTER to continue:

    ให้เคาะแป้น Enter  จะได้ข้อความต่อมาตัวอย่างประมาณว่า
    To load everything that is needed, add this to /etc/modules:
    #----cut here----
    # Chip drivers
    it87
    #----cut here----
    Do you want to add these lines automatically? (yes/NO)

    ให้ป้อนคำว่า yes  แฟ้ม /etc/modules จะถูกเขียนเพิ่มเติมโดยอัตโนมัติ
    เป็นอันเสร็จสิ้นการตรวจสอบ hardware ของระบบ  เสร็จแล้วก็ให้รีบูท PC ใหม่

  3. ตรวจสอบข้อมูลของระบบด้วยคำสั่ง env LANG=C sensors  ได้ผลประมาณดังตัวอย่างว่า
    it8712-isa-0290
    Adapter: ISA adapter
    VCore 1:     +1.50 V  (min =  +0.00 V, max =  +4.08 V)
    VCore 2:     +2.61 V  (min =  +0.00 V, max =  +4.08 V)
    +3.3V:       +3.41 V  (min =  +0.00 V, max =  +4.08 V)
    +5V:         +4.22 V  (min =  +0.00 V, max =  +6.85 V)
    +12V:       +12.16 V  (min =  +0.00 V, max = +16.32 V)
    -12V:       -16.07 V  (min = -27.36 V, max =  +3.93 V)
    -5V:         -8.10 V  (min = -13.64 V, max =  +4.03 V)
    Stdby:       +1.42 V  (min =  +0.00 V, max =  +6.85 V)
    VBat:        +3.26 V
    fan1:       2860 RPM  (min =    0 RPM, div = 8)
    fan2:       1268 RPM  (min =    0 RPM, div = 8)
    fan3:          0 RPM  (min =    0 RPM, div = 8)
    M/B Temp:    +25.0 C  (low  = +127.0 C, high = +127.0 C)  sensor = transistor
    CPU Temp:    +25.0 C  (low  = +127.0 C, high = +127.0 C)  sensor = transistor
    Temp3:       +43.0 C  (low  = +127.0 C, high = +127.0 C)  sensor = thermal diode
    cpu0_vid:   +1.525 V

    หมายความว่า CPU มีอุณหภูมิ 25 องศาเซลเซียส และ Mainboard มีอุณหภูมิ 25 องศาเซลเซียส



เพิ่มเติมโดย สงกรานต์ เมื่อ 1 กันยายน 2553

หมายเหตุ หากต้องการแสดงเป็นกราฟสามารถใช้ psensor ได้ตามคำแนะนำข้างล่าง

http://theubuntunews.blogspot.com/2010/08/ubuntu-psensor-graphical-temperature.html

Psensor.png

ภาพตัวอย่างที่ได้ใช้งาน psensor โดยปิดพัดลมเป่าเครื่อง จะเห็นอุณหมูมิสูงขึ้น แล้วเปิดพัดลมให้อุณหภูมิลดลง temp1 สีดำ และ temp2 จาก CPU และเมนบอร์ด

temp3 จากฮาร์ดดิสก์ ส่วน temp1 สีเขียวเป็นของ power supply