我已经使用 Linux 八年了,使用 Ubuntu 的 LTS 版本五年了;我对这个系统很熟悉,命令行也还行,但绝不是专家级用户。我已经到了第三方软件需要库的地步,而我当前的 16.04 中没有这些库。我需要的库是libc++-8-dev
和libc++abi-8-dev
,它们是可以在bionic-updates
存储库中使用 - 因此,18.04,带有一个可选的(仍然来自 Canonical)库。
然而,每次我尝试升级 Linux 安装时,都会遇到这样或那样的故障,需要全新安装才能修复——我的经验是,如果一切顺利,全新安装、重新启用必要的存储库/ppas 以及重新安装我选择使用的软件需要一整天的时间(如果有问题,可能需要第二天)。我有两台机器需要升级;我的台式机(安装了许多第三方应用程序)和我的笔记本电脑(第三方应用程序较少,但处理器和网络连接较慢),我不愿意同时运行两个升级或安装,因为我想有一台可以正常工作的机器,以便在出现问题时查找解决方案。
这意味着我必须允许至少一个周末进行升级——有可能需要第二个周末。
两个系统都保持最新状态,并带有更新通知(这样我就可以在准备好时加载更新,而不会让它们打断其他事情)。我知道 Synaptic 能够导出我已安装软件包的列表,并导入此类列表以自动安装列出的项目,并且过去曾使用过此功能。我的/home
位于单独的分区中,因此我可以轻松拖入或创建第三方软件的启动器,这些启动器相当于一个.tar.gz
存档。
我还能做些什么来使这个过程更加顺利和减少痛苦?
答案1
我是我所在大学的一个学生实验室的成员。我通常会花很多时间来更新所有运行 Ubuntu 的计算机。我注意到在更新过程中导致重大问题的方面包括:
- 驱动器速度。目前较旧的机器使用的是老式旋转硬盘。如果您还没有 SSD,则 SSD 应该可以加快这一过程。
- 依赖项。这个真的很难处理。我的机器在升级后无法启动,因为一个烦人的包无法正确升级。卸载这些奇怪的包有助于增加第一次尝试成功升级的机会。我遇到了一些问题,特别是 ROS 和 nfs-kernel。不幸的是,知道要小心处理哪些包需要依靠经验。
除此之外,我执行过的大多数升级do-release-upgrade
都是第一次尝试就成功的,之后只需进行很少的清理。