解决apt 依赖破损的问题
在
安装 python3 / python2 共存的环境时, 不知道做了什么, 导致
apt 依赖故障
odoo@sy-odoo-08:~$ sudo apt-get remove apport
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
下列软件包是自动安装的并且现在不需要了:
gir1.2-glib-2.0 iso-codes libgirepository-1.0-1 python3-apport python3-apt python3-gi
python3-problem-report
使用'sudo apt autoremove'来卸载它(它们)。
下列软件包将被【卸载】:
apport
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 31 个软件包未被升级。
有 2 个软件包没有被完全安装或卸载。
需要下载 0 B/144 kB 的归档。
解压缩后将会空出 778 kB 的空间。
您希望继续执行吗? [Y/n] y
(正在读取数据库 ... 系统当前共安装有 99960 个文件和目录。)
正在卸载 apport (2.20.1-0ubuntu2.10) ...
Traceback (most recent call last):
File "/usr/bin/pyclean", line 31, in <module>
from debpython import files as dpf
ImportError: No module named debpython
dpkg: 处理软件包 apport (--remove)时出错:
子进程 已安装 pre-removal 脚本 返回错误状态 1
Traceback (most recent call last):
File "/usr/bin/pycompile", line 35, in <module>
from debpython.version import SUPPORTED, debsorted, vrepr, \
ImportError: No module named debpython.version
dpkg:清理时出错:
子进程 已安装 post-installation 脚本 返回错误状态 1
在处理时有错误发生:
apport
E: Sub-process /usr/bin/dpkg returned an error code (1)
报告
Traceback (most recent call last):
File "/usr/bin/pycompile", line 35, in <module>
from debpython.version import SUPPORTED, debsorted, vrepr, \
ImportError: No module named debpython.version
如下图

尝试用 apt-get install -f 也无法解决..
偶尔运行 apt-get install --reinstall python-mininal , 却发现
这个
破损被修复了.
查找 python-mininal 包的 详情, 发现 /usr/bin/pycompile 正好是 它所提供的

所以 重装 python-minimal 刚刚好 修复了这个问题.
备注:
python3-minimal 内容跟 python-minimal 不一样

总结:
python程序报错, 第一步 应该检查 程序本身, 然后, 才是接着 检查 依赖包
本例 应该检查 /usr/bin/pycompile , pycompile 可以在 安装其他版本的python时 被污染, 所以, 重装 包含pycompile 的包 才是正确的做法…..
那么 怎么反查 文件包含在哪个 包里面呢?
可以用 dpkg -S
dpkg -S /usr/bin/pycompile

还可以用 apt-file
例如, 查找 包含 pycompile 的包

解决apt 依赖破损的问题的更多相关文章
- strace 解决库依赖问题
解决库依赖问题 starce 的另一个用处是解决和动态库相关的问题.当对一个可执行文件运行ldd时,它会告诉你程序使用的动态库和找到动态库的位置.但是如果你正在使用一个比较老 的glibc版本(2.2 ...
- Linux 桌面玩家指南:17. 在 Ubuntu 中使用 deepin-wine,解决一些依赖 Windows 的痛点问题
特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...
- Linux安装gcc时碰到的有关问题解决(解决gcc依赖有关问题)
Linux安装gcc时碰到的有关问题解决(解决gcc依赖有关问题) rpm安装gcc时碰到的有关问题解决(解决gcc依赖有关问题) 提示:error: Failed dependencies: clo ...
- Android Studio 解决 Gradle 依赖冲突的问题
Android Studio 解决 Gradle 依赖冲突的问题 参考链接: Android Studio(Gradle)解决库依赖冲突问题:http://www.mobibrw.com/2016/3 ...
- Java-idea-常用技巧-转maven,解决包依赖冲突
1.Intellij IDEA如何将普通工程转换成maven工程 项目上右键 Add Framework Support,选择maven 2.Intellij IDEA 自动生成 serialVers ...
- 【Python】解决测试依赖之 Mock模块的基本使用
什么是mock? Mock,顾名思义,模拟,在我们日常生活中或者影视作品中见得最多的可能就是预备飞行员的模拟训练,印象比较深的是电影<萨利机长>中的模拟器,经过几千次模拟,人们得出机长萨利 ...
- 浅谈Spring解决循环依赖的三种方式
引言:循环依赖就是N个类中循环嵌套引用,如果在日常开发中我们用new 对象的方式发生这种循环依赖的话程序会在运行时一直循环调用,直至内存溢出报错.下面说一下Spring是如果解决循环依赖的. 第一种: ...
- Spring 如何解决循环依赖问题?
在关于Spring的面试中,我们经常会被问到一个问题,就是Spring是如何解决循环依赖的问题的. 这个问题算是关于Spring的一个高频面试题,因为如果不刻意研读,相信即使读过源码,面试者也不一定能 ...
- Spring如何解决循环依赖问题
目录 1. 什么是循环依赖? 2. 怎么检测是否存在循环依赖 3. Spring怎么解决循环依赖 本文主要是分析Spring bean的循环依赖,以及Spring的解决方式. 通过这种解决方式,我们可 ...
随机推荐
- arcgis engine10.1和arcObjects的一些问题
1.arcengine10.1只支持vs2010 2.10.1以后没有engine runtimes,改成engine了,以前的engine可以理解为Arcobject,就是我们可以只装AO
- linux系统——etc下的group 文件
etc/group 文件 用户组的所有信息都存放在/etc/group文件中 将用户分组是Linux系统中对用户进行管理及控制访问权限的一种手段.每个用户都属于某个用户组:一个组中可以有多个用户,一个 ...
- ext2 与 ext3
http://linux.vbird.org/linux_basic/1010appendix_B.php https://baike.baidu.com/item/Ext2/822106?fr=al ...
- react 基础语法复习1- 搭建开发环境
之前有看过阮一峰老师的react教程跟着做了一遍,学习了一下.好久没看,有点忘记了,这次跟着脚手架工具系统的复习一遍.顺便学习学习 react-router 和 redux 首先,脚手架工具我使用的是 ...
- 【01】iconfont的使用
我之前因为项目用bootstrap比较多,所以使用font awesome字体图标比较多,后来接触到了iconfont,发现想要的什么图标都有,还可以自定义图标,非常强大!之前看了一波教程,觉得繁琐, ...
- WP7资源
原文发布时间为:2012-07-31 -- 来源于本人的百度文章 [由搬家工具导入] Code libraries and toolkits Enterprise Library 5.0provide ...
- powershell 调用winform dll
//1.加载dll,调用winform窗体,使用指定构造函数 param{ $filePath="" } [void][reflection.assembly]::LoadFile ...
- pcm2aac
1.下载faac源代码:http://downloads.sourceforge.net/faac/faac-1.28.zip 2.在VAWARE上进行交叉编译,安装. ./configure --t ...
- c# automapper 使用
一.最简单的用法 有两个类User和UserDto 1 public class User 2 { 3 public int Id { get; set; } 4 public string Name ...
- 使用p6spy格式化日志输出
P6Spy 是针对数据库访问操作的动态监测框架(为开源项目,项目首 页:www.p6spy.com)它使得数据库数据可无缝截取和操纵,而不必对现有应用程序的代码作任何修改.P6Spy 分发包包括P6L ...