最近我不得不在服务器上安装一些新软件包,但 Ubuntu 版本(10.10-maverick)不再受支持。因此,当我尝试时apt-get update
,我收到了很多404 not found
消息。
我不知道我可以sources.list
使用旧版本的地址进行更改,因此我使用下一个较新支持的版本(11.10)中的存储库更改了我的 sources.list。
我执行了apt-get update
,它成功了。然后我毫无问题地安装了新软件包。我可以看到一些旧软件包(如 libc、perl 等)也得到了更新。
到目前为止,一切似乎都运行良好,但我不知道这种解决方案将来是否会带来问题。我对此有点担心,因为服务器正在生产中,许多人都依赖于它上面的服务。sources.list
如果遇到库或类似问题,我不想使用新程序安装新软件包。
你能帮助我吗?提前谢谢。
答案1
将 Ubuntu 系统升级到下一个版本的正确方法是使用do-release-upgrade
。该工具会下载一组升级脚本,每个 Ubuntu 版本都不同,这些脚本不仅可以更新您的sources.list
,还可以调整一些设置。
你说你正在使用 Maverick,然后你跳到了 Oneiric。这意味着你没有运行 Natty 和 Oneiric 脚本集。它们是:
- http://archive.ubuntu.com/ubuntu/dists/natty/main/dist-upgrader-all/current/natty.tar.gz
- http://archive.ubuntu.com/ubuntu/dists/oneiric/main/dist-upgrader-all/current/oneiric.tar.gz
您可以下载并解压这两个 tarball,然后检查内容,查看脚本将执行的操作。请注意,您会发现一些无趣的脚本,例如与 Nvidia 相关的脚本(在服务器上不需要运行)。可以安全地跳过它们。
一旦确定了正确升级后会运行的脚本,您就可以尝试执行该脚本的操作。检查脚本还可以帮助您检测升级可能引入的潜在问题。
顺便一提,做测试深入检查服务器的服务。这是唯一可以确定一切是否正常的方法。如果一切正常,那么您就不必担心(显然,这句话只有在您进行了准确而完整的测试后才是正确的)。
最后,我想向大家指出这个问题的答案:如何安装软件或从旧的不受支持的版本升级?。现在应用那里描述的程序已经太晚了,但是下次你就会知道该怎么做了。
答案2
如果您现在执行sudo apt-get upgrade
或,sudo apt-get dist-upgrade
它将从 11.10 中提取所有新软件包,本质上是将您升级到 11.10。
答案3
Ubuntu 软件包可能与 Windows 不同,只能运行特定版本。例如,为 Ubuntu 10.04 制作的软件包(应用程序)只能在 10.04 上运行,不会出现任何问题。如果您尝试在 11.10 或任何更高或更低版本上安装此软件包,它可能会运行,但会导致依赖性和其他错误。因此,建议您升级到另一个 LTS 版本,因为您的系统非常繁忙,无法频繁升级,或者不推荐继续使用旧的 Ubuntu,而无需更新和升级软件包。通过修改 sources.list 安装属于不同版本的软件包,在我看来,是在自找麻烦。
答案4
我想我只是通过替换存储库列表中的几行来实现这一点/etc/apt/sources.list
:似乎服务器没有被调用档案库但
旧版本。我只是替换了所有archives.
条目,old-releases.
其余的则保持原样。我还删除了us.
条目。
希望它也适合你。