当 HP 笔记本电脑从 Ubuntu 关闭而不是从 Windows 关闭时电池耗尽

yoa*_*dev 13 battery shutdown power-management 16.04

我在HP Pavilion 15-CC508NF上使用 Ubuntu 16.04 LTS 和 Windows 10 进行双引导设置。当我从 Windows 10 关闭时,我的电池保持原样,没有放电。但是当我从 Ubuntu 关机时,电池每天会损失 5%。

我已经安装了 TLP 包并在以太网卡上禁用了 WOL(Wake-On-Lan)。但是,当计算机关闭时,电池会继续放电 - 每天 2%。

我认为某些硬件在计算机关闭时继续耗电。

任何想法来确定问题/导致问题的硬件?

Win*_*nix 6

另一位使用 HP Pavilion 的用户在一夜之间失去了 10% 的电池电量。显然,局域网唤醒没有 BIOS 配置,他们不得不使用这种方法:

$ sudo lshw -class network | grep logical
       logical name: enp59s0
       logical name: wlp60s0
Run Code Online (Sandbox Code Playgroud)

以 开头的逻辑名称e用于以太网,意思是“LAN”。以 开头的逻辑名称w用于无关紧要的 WiFi。

然后获取以太网/局域网逻辑名称并将其传递给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
Run Code Online (Sandbox Code Playgroud)

在我的情况下,“局域网唤醒”没有打开,但如果你的显示:

    Wake-on: g
Run Code Online (Sandbox Code Playgroud)

这意味着“局域网唤醒”已打开,就像 OP 每晚损失 0% 的电量一样,您每天损失的电量为 5%。

要关闭 OP 使用的“局域网唤醒”:

sudo ethtool -s enp59s0 wol d
Run Code Online (Sandbox Code Playgroud)
  • 请记住enp59s0用上面步骤 1 中的逻辑名称替换。
  • wol 代表“局域网唤醒”。
  • d代表disable

ArchLinux 有大量关于Wake-on-LAN 的文章

为什么要使用“局域网唤醒”?

某些服务器会希望在夜间唤醒客户端 PC 并在夜间在其上安装新程序或更新文件。


USB 在 Windows 中关闭,在 Ubuntu 中保持打开状态

Tom's Hardware一位用户报告说,当 Windows 关闭时,所有 USB 供电设备都会关闭。但是,当 Ubuntu 16.04 关闭 USB 供电设备时,它会保持通电状态。

要确认您的情况是否发生这种情况,请将 USB 供电设备(例如手机或鼠标)连接到所有 USB 端口,并在 Ubuntu 关闭计算机时查看它们是否已供电。

不太可能的场景

  • USB唤醒
  • 无线局域网唤醒

查看关机日志

我在suspend系统没有完成过程中的经验。当系统恢复时,它完成了该过程。您应该检查您的/var/log/syslog/var/log/syslog.1以确保一切正常关闭并已关闭。您还可以检查journalctl -b-1以查看上次启动的结尾。用journalctl -b看当前引导的开始。

背景:systemd 挂起系统但在恢复内核后进入睡眠和唤醒


小智 0

我想象系统仍在运行服务或其他东西。

我建议您首先查看service --status-all并决定是否有任何您想停止的内容。您也可以尝试在关闭之前停止所有操作。有多种方法可以停止服务直到重新启动,因此这可能正是您所需要的。

您还可以将服务列表放入文件中.txt,并使用它来停止或启动一组服务。

如果您也不热衷于“一个接一个”的方法,您也可以安装一些为您提供 GUI 类型界面的工具 - sysv-rc-conf 或 Jobs-Admin 之类的工具。它们都为您提供了一个很好的界面来停止和启动服务。第一个在终端中运行,第二个运行单独的 GUI,因为我知道有些人倾向于非此即彼。

希望有帮助。老实说,我不知道它是否会,因为我认为关闭系统会同时停止运行级别,对吧?但值得一试。:)