我尝试使用标准 do-release-upgrade 脚本将服务器从 Ubuntu 14 升级到 16。一切似乎都很顺利,直到中途,它向我显示了 libc 的错误,说我的 3.2 内核不受支持,但它还是会尝试升级。我不确定为什么我的服务器使用 3.2 内核,以及为什么不升级它,但我选择了“ok”,这是唯一的选择。然后它尝试升级 libc,但 3 小时后,它似乎卡在了“检查初始化脚本...”这一步。
所以我取消了升级,遇到了常见的软件包损坏问题。运行dpkg --configure -a
显示问题当然出在 libc 上。但是,如果我尝试重新安装 libc,它只会卡在同一步骤。我尝试升级我的内核,但失败了,因为它需要最新的 libc 软件包。
我不确定接下来该怎么做。如何修复 libc 卡在“检查初始化脚本”的问题?
答案1
问题是,我不知怎么地意外地将服务器设置为使用非常旧的内核,尽管安装了较新的内核。解决方案是重新启动,并在 Grub 启动屏幕上确保选择了最新的内核,对我来说是 3.13。
这使得我能够通过修复 libc6 的安装和运行所有其他升级来完成升级,包括安装标准 Xenial 内核包,这使我获得了 4.4 内核。