惠普笔记本电脑从Ubuntu关闭时电池耗尽,但不是从Windows关闭

我在HP Pavilion 15-CC508NF上安装了Ubuntu 16.04 LTS和Windows 10的双启动设置。 当我从Windows 10关闭时,我的电池保持原样,没有放电。 但是当我从Ubuntu关闭时,电池每天损失5%。

我在以太网卡上安装了TLP软件包并禁用了WOL(Wake-On-Lan)。 但是,当电脑关闭时,电池会继续放电 – 白天为2%。

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

有没有想法找出导致问题的问题/硬件?

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

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

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

然后获取以太网/ 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 

这意味着“局域网唤醒”已开启,就像OP每晚失去0%电池一样,你每天失去5%的电量。

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

 sudo ethtool -s enp59s0 wol d 
  • 请记住用上面步骤1中的逻辑名替换enp59s0
  • wol代表“Wake-on-LAN”。
  • d代表disable

ArchLinux有关于局域网唤醒的广泛报道。

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

有些服务器希望在一夜之间唤醒客户端PC并在一夜之间安装新程序或更新文件。


在Windows中关闭USB,在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暂停系统但在恢复内核后进入睡眠和唤醒状态

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

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

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

如果您不是所有关于“一个接一个”的方法,您可以安装一些能够提供GUI类型接口的东西 – 像sysv-rc-conf或Jobs-Admin这样的工具。 它们都为您提供了一个很好的界面来停止和启动服务。 第一个在终端运行,第二个运行一个单独的GUI,因为我知道有些人偏向于 – 或者。

希望有所帮助。 老实说,我不知道是否会这样,因为我认为关闭一个系统会阻止所有的运行级别,对吧? 但值得一试。 🙂