【问题标题】:Ubuntu old upgrade 8.04 -> 12.04Ubuntu 旧升级 8.04 -> 12.04
【发布时间】:2016-01-25 01:04:35
【问题描述】:

已移至superuser.com


我有一台运行旧的Ubuntu 8.04 LTS 的计算机。

除了8.04,下一个 LTS 版本,10.04 也不再支持。

没有公开的从8.04 -> 12.04直接升级的路径。

发布了path from 8.04 -> 10.04,然后发布了path from 10.04 -> 12.04

如果我尝试标准的正常升级指令,我会收到 Python 错误。 Ubuntu 8.04 附带Python 2.5。在此错误消息中,“Precise”是Ubuntu 12.04 的昵称。

stewart@old-ubuntu-box:~$ sudo do-release-upgrade
Checking for a new ubuntu release
Done Upgrade tool signature
Done Upgrade tool
Done downloading
authenticate 'precise.tar.gz' against 'precise.tar.gz.gpg'
extracting 'precise.tar.gz'
/tmp/tmpwfCGnZ/DistUpgradeMain.py:102: Warning: 'with' will become a reserved keyword in Python 2.6
Traceback (most recent call last):
  File "/tmp/tmpwfCGnZ/precise", line 3, in <module>
    from DistUpgradeMain import main
  File "/tmp/tmpwfCGnZ/DistUpgradeMain.py", line 102
    with open(fname, "a"):
            ^
SyntaxError: invalid syntax

如果我尝试将 Python 升级到 2.62.7,以支持升级的运行,我会发现依赖问题,因为我仍然只在 8.04 上。

stewart@old-ubuntu-box:~$ sudo apt-get install python2.6
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.

Since you only requested a single operation it is extremely likely that
the package is simply not installable and a bug report against
that package should be filed.
The following information may help to resolve the situation:

The following packages have unmet dependencies.
  python2.6: Depends: python2.6-minimal (= 2.6.5-1ubuntu7~lts1) but it is not going to be installed
             Depends: libc6 (>= 2.11) but 2.7-10ubuntu8.3 is to be installed
             Depends: libdb4.8 but it is not installable
             Depends: libreadline6 (>= 6.0) but it is not installable
             Depends: libsqlite3-0 (>= 3.6.22) but 3.4.2-2 is to be installed
E: Broken packages

这是一个循环的 catch-22。理想情况下,我应该能够安装这些损坏的依赖项的正确版本(libc6 等),但追查如何为不受支持的版本执行此操作一直难以捉摸。

任何建议如何逃避/解决这个问题?


更新:

我已经成功地使用指令 found here 中的 make install 升级了 Python,但是,do-release-upgrade 上的 Python 错误是相同的。

【问题讨论】:

标签: linux ubuntu installation upgrade debian-based


【解决方案1】:

讨厌破坏旧线程,但我在启动旧 PC 并开始升级到 18.04 时遇到了这个问题...我通过降级 update-manager 和 update-manager-core 在我的实例中解决了这个问题从 1:0.87.33 到 1:0.87.24 的包(如果我没记错的话)。没有其他工作。

【讨论】:

  • 这是一个非常随机的解决方案。我要把电脑挖出来试试看!
  • 感谢您的建议,真的帮助我复活了一台旧电脑。
  • 非常有帮助。谢谢。
【解决方案2】:

上述版本的Official upgrade notes manual 声明:

为避免损坏正在运行的系统,只应进行升级 从一个版本到下一个版本(例如 Ubuntu 12.04 到 Ubuntu 12.10)或从一个 LTS 版本到下一个版本(例如 Ubuntu 10.04 LTS 到 Ubuntu 12.04 LTS)如果您希望“跳过”一个版本,您可以备份数据并进行全新安装,或逐步升级到每个版本 后续版本。

【讨论】:

    【解决方案3】:

    我的建议是,下载 Ubuntu 12.04/14.04,备份当前系统并将其擦干净,然后加载新系统。如果您按照这种方式进行操作,您将不会遇到任何依赖关系和其他问题。

    但是如果你仍然想坚持这条路线,你需要升级很多东西,从 libc、gtk、xorg、xserver、python、gcc、g++ 等等开始。这很耗时,而且更难做到。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-11
      • 1970-01-01
      • 2014-10-01
      • 2015-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多