Ubuntu 14.04 更新内核与组件后的回滚
Ubuntu 14.04 是 LTS 长期支持版本,这意味着你可以长期使用它,可能有些人觉得不用新版会无法体会到最新内核和 Mesa 之类的驱动,实际上你还是可以通过源安装当前主流版本的套件的。
Ubuntu 14.04 在后续版本 14.04.1 / 14.04.2 中都会对套件进行升级,不过默认跟随更新似乎不会主动更改,你需要手动切换内核和组件。
官方 Wiki 中对于这种方法有介绍和描述,包括桌面版和服务器版都可以升级到相对比较新的内核。
命令:
sudo apt-get install --install-recommends linux-generic-lts-utopic xserver-xorg-lts-utopic libgl1-mesa-glx-lts-utopic libegl1-mesa-drivers-lts-utopic
运行后 Ubuntu 14.04 就已经使用了 14.10 的大部分套件了,如果你开启了最新的 Proposed 通道,就会在里面发现 linux-generic-lts-vivid ,也就是 15.04 的内核。
安装这个内核是没问题的,不过你得开启 Proposed 测试通道才可以看到,开启后更新系统会安装测试版本的一些组件,这些组件会给你带来莫名其妙的问题,比如在 X250 上会导致缺字。
于是需要将 Proposed 通道安装的更新进行回滚。
网络上对此有很多种方法,比如看日志挨个制定版本的,有看记录强制安装的,总体来说还是设定优先级的方式比较好。
首先,勾掉 Proposed 然后关闭,先不更新源。
然后创建自定义源文件,设定优先级
sudo vim /etc/apt/preferences.d/99-back-to-stable-updates
文件内容:
Package: *
Pin: release a=trusty
Pin-Priority: 1001
Package: *
Pin: release a=trusty-updates
Pin-Priority: 1001
Package: *
Pin: release a=trusty-security
Pin-Priority: 1001
Package: *
Pin: release a=trusty-proposed
Pin-Priority: -10
Package: *
Pin: release a=trusty-backports
Pin-Priority: -10
其他发行版一样适用,替换 "trusty" 即可。
接下来就是更新回滚了。
sudo apt-get update
sudo apt-get dist-upgrade
这样回滚后会有一个问题,比如 Ubuntu 14.04 拥有的那个 sunpinyin 的输入 Bug 升级包修复方式会因为回滚而失效,重新安装一下即可。
顺便一提,PPA 回滚是 ppa-purge
sudo apt-get install ppa-purge
sudo ppa-purge ppa:pockieswili/henntaidesu