Ubuntu 24.04无Nvidia硬件却因Nvidia相关问题导致休眠失败求助
Ubuntu 24.04无Nvidia硬件却因Nvidia相关问题导致休眠失败求助
问题描述
我升级到Ubuntu 24.04 LTS后,休眠功能出问题了。之前每次系统升级后休眠选项都会消失,我都得重新激活,但这次先测试休眠就直接失败了:
$ sudo systemctl hibernate Call to Hibernate failed: Invalid argument Failed to start hibernate.target: Unit nvidia-resume.service not found.
最奇怪的是,我的电脑根本没有Nvidia硬件——用的是AMD处理器+AMD Radeon RX 7600显卡。不过之前软件升级时,我好像看到过一些Nvidia包在更新,可能这台机器之前装过Nvidia硬件?
我想知道怎么让Ubuntu识别到我没有Nvidia硬件,或者说怎么彻底修复休眠功能?另外我打算先检查并移除Nvidia相关包,如果解决了问题会回来更新这个帖子。
解决方案
根据你的情况,残留的Nvidia相关包/服务是导致休眠失败的核心原因,按以下步骤操作应该能解决问题:
列出已安装的Nvidia相关包
先确认系统里到底装了哪些Nvidia相关包,打开终端运行:dpkg -l | grep nvidia这会列出所有带
nvidia关键字的已安装包。移除所有Nvidia相关包
把搜索到的Nvidia包全部卸载,运行:sudo apt purge nvidia*遇到依赖相关的提示时,按提示确认即可。
清理残留配置和无用依赖
卸载完成后,清理系统里的残留配置文件和冗余依赖:sudo apt autoremove --purge sudo apt clean重新配置系统服务与休眠
移除Nvidia相关服务后,先刷新systemd的服务配置:sudo systemctl daemon-reload如果之前的休眠激活步骤失效,可以重新配置:
- 运行
blkid找到你的swap分区UUID - 编辑grub配置:
sudo nano /etc/default/grub,找到GRUB_CMDLINE_LINUX_DEFAULT行,添加resume=UUID=你的swap分区UUID - 更新grub:
sudo update-grub - 编辑
/etc/initramfs-tools/conf.d/resume,添加RESUME=UUID=你的swap分区UUID - 更新initramfs:
sudo update-initramfs -u
- 运行
测试休眠功能
完成以上步骤后重启系统,再运行以下命令测试:sudo systemctl hibernate如果还是有问题,可以查看日志排查其他错误:
journalctl -xe | grep hibernate
备注:内容来源于stack exchange,提问作者Walter -
相关产品推荐
相关产品推荐

