如何在不破坏Nvidia图形驱动程序的情况下在12.04 LTS上更新到Ubuntu内核3.13.0?

我正在联想W530(Nvidia Optimus架构)上运行Ubuntu 12.04“LTS”并将内核更新为3.13.0-32-generic,因为我运行的内核版本已经不再支持,3.5.0-52 -generic。 我收到了以下警告;

“您当前的硬件支持堆栈(HWE)将于08/07/14停止支持。在此日期之后,系统关键部件(内核和图形堆栈)的安全更新将不再可用。”

我经历了一些痛苦,让过去使用这台机器的第二台显示器,在更新到新内核后,所有这些工作都消失了。 屏幕分辨率达到800×600,辅助显示器不再工作。 我的机器是一台工作笔记本电脑,我认为LTS是一个安全的赌注,但显然不是……

我对这个问题做了一些调查,并尝试了以下方法;

清除了nvidia驱动程序,重新安装了nvidia当前并重新启动;

sudo apt-get purge 'nvidia*' sudo apt-get install nvidia-current sudo reboot 

试图在回购中安装最新版本的nvidia驱动程序;

 sudo apt-get purge 'nvidia*' sudo apt-get install nvidia-331 sudo reboot 

配置nvidia xconfig,加载驱动程序并重启UI;

 sudo nvidia-xconfig sudo modprobe nvidia sudo service lightdm restart 

这导致我尝试使用modprobe加载Nvidia驱动程序时引发的dmesg错误。 基本上驱动程序不加载。

nvidia:模块许可证’NVIDIA’污染内核

nvidia:未知符号acpi_os_wait_events_complete(错误0)

这引导我进入nvidia论坛,该论坛概述了修补系统的方法https://devtalk.nvidia.com/default/topic/644906/linux/331-20-on-3-13-rc1-kernel/

有一个关于修复的混合信息包,没有什么真正具体的。 新内核中存在一个破坏Nvidia驱动程序的错误(根据我的理解),并且有一些步骤可以自行修补它。 这台机器再次用于工作,我不想乱搞,所以我决定恢复到以前的工作内核;

 sudo apt-get remove linux-image-3.13.0-32-generic sudo reboot uname -r 

3.5.0-52generics

 sudo apt-get purge 'nvidia*' sudo apt-get install nvidia-current sudo nvidia-xconfig sudo modprobe nvidia sudo service lightdm restart 

一切都回到了我的方式,但这并没有解决8月之后我不再接受安全更新的事实。 我以为这是一个LTS ……

8月之前是否有关于官方解决方案的任何信息。 或者,如果有人知道如何在不破坏Nvidia显卡驱动程序的情况下更新到3.13.0?

这是一个错误,我希望他们能够解决这个问题,这样它很快就会开箱即用,但是如果你想使用新的内核,你可以进行更新,然后在启动后再执行以下操作。

打开一个终端(在按住 T的同时按住CTRLALT )添加xorg-edgers PPA并更新

 sudo add-apt-repository ppa:xorg-edgers/ppa 

您必须在出现提示时提供密码。 您将获得有关此回购的各种信息,但要继续只需按ENTER键

现在在同一个终端:

 sudo add-get update sudo apt-get install nvidia-current 

如果你有一台旧机器,你只需用nvidia-304替换nvidia-current 。 您需要按Y + ENTER才能安装它。

当它完成后,你重新启动你的系统。 要确认您确实使用的是Nvidia驱动程序,可以在右上角的菜单中打开系统设置 ,然后从硬件部分选择其他驱动程序 。 启动它需要一些时间,但是当它在那里它将告诉你是否使用Nvidia驱动程序。 实际上,你可以在sudo add-get update之后从这个视图中激活你的驱动程序,但我没有这样做,所以我不是百分百肯定。 在HWE更新之前,我有几个选择,但现在我只有我安装的那个。

希望这可以解决问题,直到2017年4月:-p