当我尝试运行更新管理器时收到以下错误:
szymon@sm:~$ 更新管理器 回溯(最近一次调用最后一次): 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 477 行,位于 _inline_callbacks 中 结果 = gen.throw(结果.类型(结果.值).with_traceback(结果.traceback)) 文件“/usr/lib/python3/dist-packages/UpdateManager/backend/InstallBackendAptdaemon.py”,第 67 行,正在更新 _(“正在检查更新…”),False) 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 477 行,位于 _inline_callbacks 中 结果 = gen.throw(结果.类型(结果.值).with_traceback(结果.traceback)) 文件“/usr/lib/python3/dist-packages/UpdateManager/backend/InstallBackendAptdaemon.py”,第 159 行,位于 _show_transaction 产量 trans.run() dbus.exceptions.DBusException:org.freedesktop.DBus.Python.TypeError:Traceback(最近一次调用最后一次): 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 477 行,位于 _inline_callbacks 中 结果 = gen.throw(结果.类型(结果.值).with_traceback(结果.traceback)) 文件“/usr/lib/python3/dist-packages/aptdaemon/core.py”,第 913 行,在 _run 中 产生 self._check_auth() 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 477 行,位于 _inline_callbacks 中 结果 = gen.throw(结果.类型(结果.值).with_traceback(结果.traceback)) 文件“/usr/lib/python3/dist-packages/aptdaemon/core.py”,第 965 行,位于 _check_auth 授权=产生self._check_alternative_auth() 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 477 行,位于 _inline_callbacks 中 结果 = gen.throw(结果.类型(结果.值).with_traceback(结果.traceback)) TypeError:__init__() 缺少 1 个必需的位置参数:'action_id' 回溯(最近一次调用最后一次): 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 477 行,位于 _inline_callbacks 中 结果 = gen.throw(结果.类型(结果.值).with_traceback(结果.traceback)) 文件“/usr/lib/python3/dist-packages/UpdateManager/backend/InstallBackendAptdaemon.py”,第 67 行,正在更新 _(“正在检查更新…”),False) 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 477 行,位于 _inline_callbacks 中 结果 = gen.throw(结果.类型(结果.值).with_traceback(结果.traceback)) 文件“/usr/lib/python3/dist-packages/UpdateManager/backend/InstallBackendAptdaemon.py”,第 159 行,位于 _show_transaction 产量 trans.run() dbus.exceptions.DBusException:org.freedesktop.DBus.Python.TypeError:Traceback(最近一次调用最后一次): 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 477 行,位于 _inline_callbacks 中 结果 = gen.throw(结果.类型(结果.值).with_traceback(结果.traceback)) 文件“/usr/lib/python3/dist-packages/aptdaemon/core.py”,第 913 行,在 _run 中 产生 self._check_auth() 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 477 行,位于 _inline_callbacks 中 结果 = gen.throw(结果.类型(结果.值).with_traceback(结果.traceback)) 文件“/usr/lib/python3/dist-packages/aptdaemon/core.py”,第 965 行,位于 _check_auth 授权=产生self._check_alternative_auth() 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 477 行,位于 _inline_callbacks 中 结果 = gen.throw(结果.类型(结果.值).with_traceback(结果.traceback)) TypeError:__init__() 缺少 1 个必需的位置参数:'action_id' 在处理上述异常的过程中,又发生了另一个异常: 回溯(最近一次调用最后一次): 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 390 行,位于 _next self.result = 回调(self.result,*args,**kwargs) 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 535 行,位于 gotResult 中 _inline_callbacks(res,gen,延迟) 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 525 行,位于 _inline_callbacks 中 deferred.errback() 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 352 行,在 errback 中 self._next() 文件“/usr/local/lib/python3.6/dist-packages/defer/__init__.py”,第 408 行,位于 _next 自我.结果.回溯) 文件“/usr/lib/python3/dist-packages/apport_python_hook.py”,第 98 行,位于 apport_excepthook pr['_PythonExceptionQualifier'] = 名称 文件“/usr/lib/python3/dist-packages/problem_report.py”,第 652 行,位于 __setitem__ 引发 TypeError("键 %s 的值必须是字符串、压缩值或文件引用" % k) TypeError:键 _PythonExceptionQualifier 的值必须是字符串、CompressedValue 或文件引用
当更新管理器在系统启动时自动运行时也会发生这种情况。
当我使用 sudo 运行 update-manager 时,不会发生此错误。
版本信息:
szymon@sm:~$ update-manager --version 更新管理器:版本 1:17.10.11su szymon@sm:~$ lsb_release -a LSB 版本:core-9.20160110ubuntu5-amd64:core-9.20160110ubuntu5-noarch:printing-9.20160110ubuntu5-amd64:printing-9.20160110ubuntu5-noarch:security-9.20160110ubuntu5-amd64:security-9.20160110ubuntu5-noarch 分销商 ID:Ubuntu 描述:Ubuntu 17.10 版本:17.10 代号:巧妙
迄今已执行的操作:
- 重新安装了 update-manager、python3-update-manager、update-manager-core,并使用 synaptic 进行延迟。
我可以执行其他步骤来修复此问题吗? update-manager 默认应使用 python3.6 吗?
编辑 1:添加 pip3 列表输出
szymon@sm:~/Projects/aurelia/contact-manager$ pip3 列表 弃用:默认格式将来会切换为列。您可以使用 --format=(legacy|columns)(或在 pip.conf 中的 [list] 部分下定义 format=(legacy|columns))来禁用此警告。 asn1crypto (0.23.0) 证书(2017.4.17) cffi (1.11.2) chardet (3.0.4) 命令未找到 (0.3) 配置对象 (5.0.6) 密码学(2.1.4) 推迟(1.0.4) defusedxml (0.5.0) 发行版信息 (0.0.0) 未来(0.16.0) 伊德娜 (2.5) jira(1.0.10) junitparser (1.0.0) 钥匙圈(10.5.0) oauthlib (2.0.1) 聚苯乙烯 (3.1.1) pep8 (1.7.1) pip(9.0.1) pycparser (2.18) python-debian(0.1.30) 请求(2.18.1) 请求-oauthlib (0.8.0) 请求工具带 (0.8.0) SecretStorage(2.3.1) 设置工具 (36.6.0) 六 (1.10.0) 制表(0.8.2) ubuntu-驱动程序-通用 (0.0.0) 无人值守升级 (0.1) urllib3 (1.21.1) 轮子 (0.29.0)
答案1
看来该问题是由defer
包引起的,update-manager
有 15 条相关消息。
尝试使用
sudo pip3 uninstall defer==1.0.4
并从存储库重新安装一个
sudo apt-get install --reinstall python3-defer