แบตเตอรี่หมดเมื่อแล็ปท็อป HP ถูกปิดจาก Ubuntu แต่ไม่ใช่จาก Windows


13

ฉันมีการติดตั้งบูตคู่กับอูบุนตู 16.04 LTS และ Windows 10 บนHP Pavilion 15 เมื่อฉันปิดระบบจาก Windows 10 แบตเตอรี่ของฉันจะยังคงเหมือนเดิมไม่มีประจุ แต่เมื่อฉันปิดจาก Ubuntu แบตเตอรี่จะหายไป 5% ต่อวัน

ฉันติดตั้งแพคเกจ TLP และปิดใช้งาน WOL (Wake-On-Lan) บนการ์ดอีเธอร์เน็ต แต่แบตเตอรี่จะยังคงคายประจุเมื่อปิดคอมพิวเตอร์ - 2% ต่อวัน

ฉันคิดว่าฮาร์ดแวร์บางตัวยังคงระบายพลังงานออกในขณะที่คอมพิวเตอร์ปิดอยู่

มีความคิดที่จะระบุปัญหา / ฮาร์ดแวร์ที่ก่อให้เกิดปัญหาหรือไม่


คุณติดตั้งเครื่องมือโหมดแล็ปท็อปหรือไม่
เซบาสเตียนสตาร์ค

4
คุณปิดคอมพิวเตอร์อย่างไร (ปุ่มเปิดปิด, บรรทัดคำสั่งและอื่น ๆ ... ) คุณพูดถึงทั้งปิดและนอนในคำถามของคุณ การปิดระบบไฮเบอร์เนตและโหมดสลีปล้วนมีพฤติกรรมที่แตกต่างกัน
Jeff

คุณจะระบุความแตกต่างของแบตเตอรี่ได้อย่างไร เป็นไปได้หรือไม่ว่า Ubuntu จะแสดงสถานะการชาร์จที่แตกต่างจากหน้าต่าง
Robert Riedl

@sebastien ไม่มีการติดตั้งโหมดเครื่องมือแล็ปท็อปฉันสามารถลองใช้แพคเกจเครื่องมือโหมดแล็ปท็อปและลบ TLP เพื่อหลีกเลี่ยงความขัดแย้ง
yoann_dev

@jeff มันเป็นเพียงเกี่ยวกับการปิดฉันจะแก้ไขคำถามของฉันเพื่อชี้แจงประเด็นนี้ @RobertRiedl ฉันระบุขอบคุณคลาดเคลื่อนแบตเตอรี่แพคเกจ TLP sudo tlp-stat -bในอูบุนตูด้วย: จะแสดงค่าใช้จ่ายที่เหลืออยู่ในปัจจุบันเป็น mAh และค่าใช้จ่ายเต็ม หลังจากปิด Windows 10 หรือ Ubuntu ในวันถัดไปฉันจะบูตที่ Ubuntu เพื่อรับค่าใช้จ่ายที่เหลืออยู่
yoann_dev

คำตอบ:


6

ผู้ใช้ที่มี HP Pavilion อื่นได้สูญเสียแบตเตอรี่ในชั่วข้ามคืน 10% เห็นได้ชัดว่าไม่มีการกำหนดค่า BIOS สำหรับ Wake-on-LAN และพวกเขาต้องใช้วิธีนี้:

$ sudo lshw -class network | grep logical
       logical name: enp59s0
       logical name: wlp60s0

ชื่อโลจิคัลเริ่มต้นด้วยeสำหรับอีเทอร์เน็ตซึ่งหมายถึง "LAN" ชื่อโลจิคัลเริ่มต้นด้วยwสำหรับ WiFi ซึ่งไม่ต้องกังวล

จากนั้นนำชื่อโลจิคัล Ethernet / LAN และส่งไปยังethtoolคำสั่ง:

$ sudo ethtool enp59s0
Settings for enp59s0:
    Supported ports: [ TP ]
    Supported link modes:   10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Full 
    Supported pause frame use: Symmetric Receive-only
    Supports auto-negotiation: Yes
    Advertised link modes:  10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Full 
    Advertised pause frame use: Symmetric
    Advertised auto-negotiation: Yes
    Speed: 1000Mb/s
    Duplex: Full
    Port: Twisted Pair
    PHYAD: 0
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: Unknown
    Current message level: 0x000060e4 (24804)
                   link ifup rx_err tx_err hw wol
    Link detected: yes

ในกรณีของฉัน "Wake on LAN" ไม่ได้เปิดอยู่ แต่ถ้าคุณแสดง:

    Wake-on: g

นั่นหมายความว่า "Wake-on-LAN" เปิดอยู่และเหมือนว่า OP กำลังสูญเสียแบตเตอรี่ `0% ต่อคืนคุณจะสูญเสีย 5% ต่อวัน

วิธีปิด "Wake-on-LAN" OP ที่ใช้:

sudo ethtool -s enp59s0 wol d
  • อย่าลืมแทนที่enp59s0ด้วยชื่อตรรกะของคุณจากขั้นตอนที่ 1 ด้านบน
  • wol ย่อมาจาก "Wake-on-LAN"
  • ยืนddisable

ArchLinux มีที่กว้างขวางเขียนขึ้นเกี่ยวกับWake-On-LAN

ทำไมคุณต้องใช้ "Wake-on-LAN"

เซิร์ฟเวอร์บางตัวอาจต้องการปลุกพีซีไคลเอนต์ข้ามคืนและติดตั้งโปรแกรมใหม่ในชั่วข้ามคืนหรืออัปเดตไฟล์


USB ถูกปิดใน Windows ที่เหลือใน Ubuntu

ผู้ใช้ฮาร์ดแวร์ของทอมรายงานว่าเมื่อ Windows ปิดอุปกรณ์ที่ใช้พลังงาน USB ทั้งหมดจะปิด อย่างไรก็ตามเมื่อ Ubuntu 16.04 ปิดอุปกรณ์ที่ใช้พลังงานจาก USB ยังคงเปิดอยู่

เพื่อยืนยันว่าสิ่งนี้เกิดขึ้นในกรณีของคุณหรือไม่ให้เชื่อมต่ออุปกรณ์ที่ใช้พลังงาน USB เช่นโทรศัพท์มือถือหรือเมาส์เข้ากับพอร์ต USB ทั้งหมดและดูว่าอุปกรณ์นั้นใช้พลังงานเมื่อ Ubuntu ปิดคอมพิวเตอร์หรือไม่

ฉากที่มีโอกาสน้อยกว่า

  • เปิดใช้งาน USB
  • เปิดใช้งาน LAN ไร้สาย

ตรวจสอบบันทึกการปิดระบบ

ฉันพบในระหว่างsuspendระบบไม่เสร็จสิ้นกระบวนการ เมื่อระบบดำเนินการต่อจะเสร็จสิ้นกระบวนการ คุณควรตรวจสอบ/var/log/syslogหรือ/var/log/syslog.1เพื่อให้แน่ใจว่าทุกอย่างปิดอย่างถูกต้องและถูกปิด คุณสามารถตรวจสอบjournalctl -b-1เพื่อดูจุดสิ้นสุดของการบูตก่อนหน้านี้ ใช้journalctl -bเพื่อดูจุดเริ่มต้นของการบูตปัจจุบัน

พื้นหลัง: systemd หยุดระบบ แต่เมื่อกลับมาทำงานเคอร์เนลจากนั้นเข้าสู่โหมดสลีปและปลุก


ขอบคุณสำหรับคำตอบ. อย่างที่ฉันพูดในโพสต์แรกของฉันฉันได้ปิดการใช้งาน WOL สำหรับอินเทอร์เฟซ en01 แต่การปรับเปลี่ยนดูเหมือนจะไม่คงอยู่หลังจากรีบูต ... อาจเป็นสาเหตุของปัญหาแบตเตอรี่ของฉันหรือไม่ ฉันจะลองเขียนบทความเพิ่มเติมสำหรับ ArchLinux
yoann_dev

@yoann_dev สิ่งที่ฉันเห็นในอดีตในการดูอัลบูตคือว่าไดรเวอร์ Windows เองอาจเปิด WoL อีกครั้งเพื่อปิดการใช้งานบนทั้งสองระบบปฏิบัติการและลองปิดเครื่องแทนการรีบูตจากระบบหนึ่งไปอีกระบบหนึ่ง
Fabby

@ Fabby นอกจากนี้ยังมีปัญหาเมื่อคุณรีบูตจาก Windows เพื่อด้วงบางครั้งก็ปิดไฟการ์ด LAN ทั้งหมดทำให้มันไม่ทำงานสำหรับ Ubuntu คุณต้องปิดระบบจาก Windows เปิดเครื่องแล้วบูตเข้า Ubuntu ในกรณีเหล่านี้ จริงอยู่ที่มันเป็นเรื่องยาก
WinEunuuchs2Unix

คุณทำอะไรมาสายมาก (ping ฉันในการแชท)
Fabby

1
@yoann_dev อาจจะมีชื่อทั่วไปเช่นen01 eth0ตรวจสอบให้แน่ใจว่าคุณเรียกใช้sudo lshw -class network | grep logicalเพื่อยืนยันชื่อที่แน่นอน ฉันไม่ได้ทำการวิจัยtlpเพื่อแก้ไขปัญหานี้ แต่ฉันขอแนะนำให้คุณลองethtoolใช้ในคำตอบนี้และลิงก์ที่อ้างถึง
WinEunuuchs2Unix

0

ฉันคิดว่าระบบยังคงเปิดให้บริการอยู่

ฉันจะแนะนำให้ดูก่อนservice --status-allและตัดสินใจว่ามีสิ่งใดที่คุณต้องการหยุด คุณสามารถลองหยุดทั้งหมดก่อนที่จะปิดเช่นกัน มีวิธีหยุดบริการจนกว่าจะรีบูตดังนั้นอาจเป็นสิ่งที่คุณต้องการ

คุณยังสามารถใส่รายการบริการลงใน.txtไฟล์และใช้เพื่อหยุดหรือเริ่มกลุ่มของบริการ

หากคุณไม่ได้ทั้งหมดเกี่ยวกับวิธีการ "หนึ่งหลังจากที่อื่น" อย่างใดอย่างหนึ่งคุณสามารถติดตั้งสิ่งที่ให้คุณอินเทอร์เฟซชนิด GUI - เครื่องมือเช่น sysv-rc-conf หรือ Jobs-Admin พวกเขาทั้งสองมีอินเทอร์เฟซที่ดีสำหรับคุณที่จะหยุดและเริ่มบริการ การรันครั้งแรกในเทอร์มินัลที่สองรัน GUI แยกเนื่องจากฉันรู้ว่าบางคนมีอคติต่อ - หรือ

หวังว่าจะช่วย ฉันก็ไม่รู้เหมือนกันว่ามันจะเป็นไปตามที่ฉันคิดว่าการปิดระบบจะหยุดการทำงานของ runlevels ทั้งหมดใช่ไหม? แต่มันก็คุ้มค่าที่จะลอง :)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.