赞
踩
安装openEuler22.03后,笔记本续航从10多个小时下降到6个小时,还发热严重,作为Ubuntu老用户,一猜就知道是独立显卡耗电导致的,为解决这个问题,经历了一下过程
一、卸载开源显卡驱动
sudo dnf remove xorg-x11-drv-nouveau
之后,发热依然严重
二、安装Nvidia官方驱动
查看自己的显卡型号
lspci | grep NVIDIA
然后去官网
https://www.nvidia.cn/geforce/drivers/
下载对应驱动程序,并安装
安装后,发现nvidia-setting中去掉了禁用独立显卡的选项,没办法,只能用bbswitch自己禁用了
先卸载nvidia驱动
sudo nvidia-uninstall
三、安装bbswitch
https://github.com/Bumblebee-Project/bbswitch
下载源码,因为openEuler22.03的内核是5.1所以master分支和release版都编译失败,只能用develop分支了
按照README,进行编译安装
make
sudo make load
sudo tee /proc/acpi/bbswitch <<<OFF
cat /proc/acpi/bbswitch
结果发现第四行输出了ON,表示没关上,查看原因
dmesg
发现是nvidia驱动还在生效,写个service自动执行吧
[Unit]
Description=Turn Off Nvidia
After=systemd-modules-load.service
[Service]
Type=simple
User=root
Restart=on-failure
RestartSec=5s
ExecStart=/home/local/opt/bbswitch/off_nvidia.sh
ExecReload=/home/local/opt/bbswitch/off_nvidia.sh
[Install]
WantedBy=multi-user.target
#!/bin/bash
# off_nvidia.sh
cd `dirname $0`
rmmod nvidia_drm
rmmod nvidia_modeset
rmmod nvidia
insmod bbswitch.ko
tee /proc/acpi/bbswitch <<<OFF
其中,bbswitch.ko是bbswitch编译生成的
sudo systemctl enable nvidiaoff.service
然后重启
sudo systemctl status nvidiaoff.service
输出正常
lspci | grep NVIDIA
输出 “01:00.0 3D controller: NVIDIA Corporation GP108M [GeForce MX250] (rev ff)”,ff表示显卡也关闭了
续航也提高了,成功
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。