损坏的软件中心——“创建 bsddb 时出错”

损坏的软件中心——“创建 bsddb 时出错”

我运行的是 14.04.5 LTS 桌面 Ubuntu,/usr/bin/software-center版本为 13.10-0ubuntu4.1。
我无法software-center从 Dash 打开。
我目前所做的:

  • 查看其他 AU 帖子 ([1][2][3],...) -> 没有帮助
  • 已尝试$ sudo apt-get update && sudo apt-get upgrade-> 没有错误,但是不行。
  • 尝试过$ sudo apt-get install --reinstall software-center-> 没有错误,但不行。从 Synaptic 包管理器执行相同操作 -> 相同
  • 尝试使用 运行终端$ gksudo software-center。USC 启动正常,但不允许.deb安装第三方软件包。这显然是众所周知的错误对于 16.04.x,我怀疑 14.04.5 也是如此,因为它们共享内核和更多内容。
  • 重建/var/cache/apt/{src,}pkgcache.bin文件 -> 无济于事
  • 发布 $ dpkg-query -s software-center

终端显示器

Package: software-center
Status: install ok installed
Priority: optional
Section: gnome
Installed-Size: 2944
Maintainer: Ubuntu Developers <[email protected]>
Architecture: all
Version: 13.10-0ubuntu4.1
Replaces: gnome-app-install
Provides: gnome-app-install
Depends: python:any (>= 2.7.1-0ubuntu2), iso-codes, app-install-data (>= 0.4.0), aptdaemon (>= 0.40), software-center-aptdaemon-plugins, humanity-icon-theme, gir1.2-glib-2.0 (>= 1.31), gir1.2-gtk-3.0, gir1.2-gmenu-3.0 (>= 3.1.5), gir1.2-webkit-3.0, gvfs-backends, python-gi (>= 3.4.0-1ubuntu0.1), python-gi-cairo, python-xapian, python-apt (>= 0.8.3ubuntu4), python-aptdaemon (>= 0.40), python-aptdaemon.gtk3widgets, python-dbus, python-defer, python-lxml, policykit-1, policykit-1-gnome | policykit-1-kde, python-xdg, ubuntu-sso-client, python-piston-mini-client (>= 0.1+bzr29), oneconf (>= 0.2.6), python-oneconf (>= 0.3) | oneconf (<< 0.3), python-debtagshw, ubuntu-extras-keyring
Recommends: lsb-release, apt-xapian-index (>= 0.38ubuntu1), update-notifier, software-properties-gtk, sessioninstaller, xz-utils (>= 5.1.1alpha+20120614-1)
Conflicts: gnome-app-install (<< 1)
Conffiles:
 /etc/dbus-1/system.d/com.ubuntu.SoftwareCenter.conf d5c450e6bccfcb8177943516e8beb673
Description: ...

编辑: 从终端运行software-center显示:

$ software-center
2016-09-20 17:21:16,569 - softwarecenter.ui.gtk3.app - INFO - setting up proxy 'None'
2016-09-20 17:21:16,694 - softwarecenter.fixme - WARNING - logs to the root logger: '('/usr/lib/python2.7/dist-packages/dbus/proxies.py', 410, '_introspect_error_handler')'
2016-09-20 17:21:16,694 - dbus.proxies - ERROR - Introspect error on com.ubuntu.sso:/com/ubuntu/sso/credentials: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.Spawn.ChildExited: Process /usr/lib/ubuntu-sso-client/ubuntu-sso-login exited with status 1
....

似乎与此相匹配漏洞。

更远:

$ /usr/lib/ubuntu-sso-client/ubuntu-sso-login
Traceback (most recent call last):
  File "/usr/lib/ubuntu-sso-client/ubuntu-sso-login", line 67, in <module>
    from ubuntu_sso.main import main
  File "/usr/lib/python2.7/dist-packages/ubuntu-sso-client/ubuntu_sso/main/__init__.py", line 39, in <module>
    from twisted.internet import defer
  File "/usr/lib/python2.7/dist-packages/twisted/__init__.py", line 53, in <module>
    _checkRequirements()
  File "/usr/lib/python2.7/dist-packages/twisted/__init__.py", line 40, in _checkRequirements
    raise ImportError(required + ".")
ImportError: Twisted requires zope.interface 3.6.0 or later.

因此我安装了,zope.interface尽管我不确定为什么它与sudo pip2 sudo pip2 install --upgrade zope.interfaceGitHub 先前引用的错误报告页面上 Marty Miller-Crispe 的建议相关。software-center现在启动但不允许第三方包安装。

从终端再次运行它:

$ software-center
2016-09-20 18:09:25,160 - softwarecenter.ui.gtk3.app - INFO - setting up proxy 'None'
2016-09-20 18:09:26,051 - softwarecenter.region - WARNING - failed to use geoclue: 'org.freedesktop.Geoclue.Error.notAvailable: Geoclue master client has no usable Address providers'
2016-09-20 18:09:26,599 - softwarecenter.plugin - INFO - activating plugin '<module 'webapps_activation' from '/usr/share/software-center/softwarecenter/plugins/webapps_activation.pyc'>'
2016-09-20 18:09:26,705 - softwarecenter.db.pkginfo_impl.aptcache - INFO - aptcache.open()
2016-09-20 18:09:27,772 - softwarecenter.backend.reviews - WARNING - error creating bsddb: '(22, 'Invalid argument -- BDB0054 illegal flag combination specified to DB_ENV->open')' (corrupted?)
2016-09-20 18:09:27,773 - softwarecenter.backend.reviews - ERROR - trying to repair DB failed
Traceback (most recent call last):
...
INFO - software-center-agent finished with status 0

摘要:
它既可以从 Unity 的启动栏启动,也可以从 Dash 启动。它既可以从终端启动,也可以从终端启动gksudo。它不允许安装第三方.deb软件包。

我真的很困惑。帮助!

答案1

这些类型的问题通常是由于没有完全删除所有文件sudo apt-get install --reinstall [package-name]而导致的。或者依赖包损坏了。尝试运行以下命令:sudo apt-get remove [package-name]software-center

sudo apt-get purge software-center
sudo apt-get autoremove
sudo apt-get update
sudo apt-get install software-center

第一个命令会彻底清除与 相关的所有文件software-center。第二个命令会删除所有不再需要的软件包,其中一个软件包可能已损坏,而 需要software-center该软件包,从而导致应用程序失败。最后一个命令将重新安装software-center和 依赖项。

编辑:其中一个依赖项是ubuntu-desktop

相关内容