在用ubuntu apt-get安装或卸载软件时出现了python-minimal等错误问题,网上找了很多处理方法都没有解决。提示错误信息如下:
python-minimal (2.7.12-1~16.04) ...
Traceback (most recent call last):
File "/usr/local/lib/python2.7/runpy.py", line 174, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/usr/local/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/usr/local/lib/python2.7/compileall.py", line 16, in <module>
import struct
File "/usr/local/lib/python2.7/struct.py", line 1, in <module>
from _struct import *
ImportError: No module named _struct
dpkg: 处理软件包 python-minimal (--configure)时出错:
子进程 已安装 post-installation 脚本 返回错误状态 1
正在设置 python2.7 (2.7.12-1ubuntu0~16.04.18) ...
在处理时有错误发生:
python-minimal
E: Sub-process /usr/bin/dpkg returned an error code (1)
开始以为是python版本出了问题,切换成python3也没有解决,使用apt-get remove python是也出现了上述同样的问题,无法卸载。郁闷了很久,最终找到了解决办法。
基本思路就是临时替换/var/lib/dpkg/info
方法1:
sudo cp -fr /var/lib/dpkg/info /var/lib/dpkg/info-bak
sudo rm -fr /var/lib/dpkg/info/*
sudo apt-get update
sudo apt-get install xxx //xxx 为你想安装的软件
安装完软件后记得还原:
sudo rm -rf /var/lib/dpkg/info
sudo mv /var/lib/dpkg/info-bak /var/lib/dpkg/info
如果还是有问题,试试下面的方法.
方法2:
1. sudo apt-get update --fix-missing
2. sudo apt-get autoremove && sudo apt-get clean && sudo apt-get install -f
本人用方法2确实解决了问题。