我正在使用图形驱动程序ppa。我今天收到一个更新对话框,上面说我可以将我的 nvidia 驱动程序更新为367.18(〜gpu16.04.6)。我像往常一样开始更新,但失败了,
Failed to get unit file state for var-lib-snapd-lib-gl.mount
重新启动后,我的图形驱动程序坏了,我被迫进入恢复模式。
通常,当我的 Nvidia 驱动程序坏了时,我只需将其卸载,然后
sudo apt purge nvidia*
重新安装即可。
在恢复模式下执行此操作会卸载除因nvidia-opencl-icd-367
上述错误而失败的包之外的所有内容。
尝试手动卸载该包最终出现以下错误:
更新@20160605-解决方案:
跟随Videonauth 的下面的答案解决了这个问题。请完成所有步骤并确保删除所有内容后重新启动NVIDIA 通过sudo apt purge nvidia*
成功没有问题重新安装驱动程序后通过sudo apt install nvidia-367
。
这将使你的驱动程序重新工作。
如果这没有帮助,请尝试手动删除所有旧的 xorg 配置sudo rm /etc/X11/xorg.conf* && sudo rm /etc/X11/xorg.conf
并重新安装驱动程序sudo apt install nvidia-367 --reinstall
。
如果这仍然不允许您重新登录(典型错误:登录屏幕 --> 已输入密码,按下回车键 --> 返回登录屏幕)尝试完全删除您的 Nvidia 驱动程序,方法是使用Ctrl+ Alt+从日志屏幕切换到文本控制台F1,使用您的帐户名和密码登录,从中下载适合您的显卡的驱动程序这里在控制台中,停止 lightdm:
sudo service lightdm
使用以下方法安装 Nvidia 的二进制驱动程序sudo ./NVIDIA-VERSION...
并重启系统:
sudo reboot now
系统:
Ubuntu 16.04 64位
Linux 4.4.0-22
答案1
好的,要解决这个问题(我今天早上遇到了同样的麻烦),你有两种方法:
1. Launchpad 团队通过电子邮件向我提出的简洁方法:
要解决此问题,您可以先按Ctrl+ Alt+切换到文本控制台F1,然后使用 停止显示管理器sudo systemctl stop <displaymanager>
,其中 是lightdm
、gdm
、sddm
或您正在使用的任何其他显示管理器。
停止 X 可清除卸载失败,从而允许您使用 成功升级到 ~gpu16.04.6,该版本不再包含有缺陷的补丁sudo apt upgrade
。此时,您可以运行sudo systemctl reboot
重新启动系统,这应该会使其恢复正常功能。
如果您仍然收到错误提示
Unit var-lib-snapd-lib-gl.mount not loaded.
您可以通过运行来解决此问题
sudo touch /lib/systemd/system/var-lib-snapd-lib-gl.mount && sudo systemctl daemon-reload
尝试重复升级之前。升级完成后,要清理运行
sudo touch /lib/systemd/system/var-lib-snapd-lib-gl.mount
2. 我今天早上采用的方法是通过暴力破解彻底删除:
要解决此问题,您可以先按Ctrl+ Alt+切换到文本控制台F1,然后通过以下方式重新启动
sudo apt-get remove --purge nvidia*
其次是
sudo dpkg --remove --force-all nvidia-opencl-icd-367`
然后sudo apt-get autoremove
接着是sudo apt-get clean
,然后又是sudo apt-get remove --purge nvidia
。
现在它仍然应该提到您无法删除的任何软件包,然后切换到/var/lib/dpkg/info
并找到名为的文件<packagename>.prerm
,<packagename>.postinst
然后<packagename>.postrm
对所有这些文件执行以下操作(注意这不是删除某些东西的明智方法):
sudo su
> <packagename>.prerm
> <packagename>.postinst
> <packagename>.postrm
exit
完成此操作后,照常开始删除
sudo apt-get remove <packagename>
这样做,直到一切都被清除,然后
sudo apt-get update && sudo apt-get dist-upgrade
然后重新安装 nvidia 驱动程序,现在应该已经修复了
sudo apt-get install nvidia-367