不使用更新管理器升级到 12.10

不使用更新管理器升级到 12.10

我目前正在我的 x86 桌面系统上运行 Ubuntu 12.04(有点)。

(实际上我/etc/lsb-release说的是:

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.10
DISTRIB_CODENAME=quantal
DISTRIB_DESCRIPTION="Ubuntu quantal (development branch)"

可能是因为我在官方版本发布前不久安装了 12.04 的测试版。)

我想升级到新的 12.10(非测试版)。通常的方法是使用更新管理器——但是当我运行update-manager或任何apt-*命令(至少是我尝试过的命令)时,它会因分段错误而死机。当我尝试运行时,gdb 会说apt-cache

$ apt-cache --version
apt 0.8.16~exp12ubuntu10.3 for i386 compiled on Aug 20 2012 22:34:48
$ gdb apt-cache
[...]
(gdb) run search git
Starting program: /usr/bin/apt-cache search git

Program received signal SIGSEGV, Segmentation fault.
0xb7ee16ce in pkgCache::VerIterator::TranslatedDescription() const () from /usr/lib/i386-linux-gnu/libapt-pkg.so.4.12
(gdb) where
#0  0xb7ee16ce in pkgCache::VerIterator::TranslatedDescription() const () from /usr/lib/i386-linux-gnu/libapt-pkg.so.4.12
#1  0x08051bd1 in ?? ()
#2  0xb7eccf6e in CommandLine::DispatchArg(CommandLine::Dispatch*, bool) () from /usr/lib/i386-linux-gnu/libapt-pkg.so.4.12
#3  0x0804e833 in ?? ()
#4  0xb7c044d3 in __libc_start_main (main=0x804e520, argc=3, ubp_av=0xbffff964, init=0x805bdf0, fini=0x805be60, 
    rtld_fini=0xb7fed270 <_dl_fini>, stack_end=0xbffff95c) at libc-start.c:226
#5  0x0804e8f1 in ?? ()
(gdb) 

dpkg命令不存在这个问题。

我尝试重新安装libapt-pkg4.12(提供的包/usr/lib/i386-linux-gnu/libapt-pkg.so.4.12),但没有帮助。

我的目标是升级到 12.10(非测试版)并让update-manager命令apt-*正常运行。

我可以通过 DVD 或 USB 拇指驱动器更新现有系统吗(我ubuntu-12.10-desktop-i386.iso现在正在下载)没有删除我现有的文件?

如果没有,我可以重新安装或修复我的libapt-pkg4.12和/或apt包并apt-*再次update-manager工作吗?

如果没有,我想我剩下的选择是从头开始安装 12.10,然后从备份中恢复我的文件——如果有必要我会这么做,但我宁愿保留我的文件。(无论如何我都有备份,以防在正常升级过程中出现问题。)

更新 :

通过 Google 搜索错误信息(我之前就应该这样做),我发现错误 #970988,指的是同一例程中的崩溃TranslatedDescription()。它被关闭为错误 #938116。据称 update-manager 1:0.156.12 已经修复了这个问题——但我已经安装了 update-manager 1:0.156.14.9,但仍然崩溃。在两个错误报告中,我都没有看到任何建议修复我系统上的问题的方法(除了重新安装)。

其中一个错误报告提到有人在安装 Skype 后遇到了这个错误,并通过卸载 Skype 解决了这个问题。我恰好在出现这个问题的时候安装了 Skype,但卸载它并没有帮助。

相关内容