Ошибка ImportError: отсутствие модуля с именем _struct при управлении пакетами

Я запускаю элементарную ОС 0.2 (на основе Ubuntu 12.04), и начиная с сегодняшнего дня я вижу странную ошибку при попытке установить / обновить пакеты. Только сейчас, например, я сделал:

sudo apt-get update 

который работал нормально, а затем:

 sudo apt-get upgrade 

который попытался вернуть это:

 Setting up idle-python2.7 (2.7.3-0ubuntu3.5) ... Traceback (most recent call last): File "/usr/lib/python2.7/compileall.py", line 16, in <module> import struct File "/usr/lib/python2.7/struct.py", line 1, in <module> from _struct import * ImportError: No module named _struct dpkg: error processing idle-python2.7 (--configure): subprocess installed post-installation script returned error exit status 1 Errors were encountered while processing: idle-python2.7 E: Sub-process /usr/bin/dpkg returned an error code (1) 

Что происходит? Очевидно, что это связано с пакетом python , но я все еще могу запускать скрипты python без проблем. Как я могу это исправить?


Добавить

Следуя рекомендациям, приведенным в ответе, я попытался:

 sudo apt-get --reinstall install python python-support 

Это вернулось:

 Reading package lists... Done Building dependency tree Reading state information... Done 0 upgraded, 0 newly installed, 2 reinstalled, 0 to remove and 0 not upgraded. 1 not fully installed or removed. Need to get 0 B/192 kB of archives. After this operation, 0 B of additional disk space will be used. (Reading database ... 864980 files and directories currently installed.) Preparing to replace python 2.7.3-0ubuntu2.2 (using .../python_2.7.3-0ubuntu2.2_i386.deb) ... Unpacking replacement python ... Preparing to replace python-support 1.0.14ubuntu2 (using .../python-support_1.0.14ubuntu2_all.deb) ... Unpacking replacement python-support ... Processing triggers for man-db ... Processing triggers for doc-base ... Processing 1 changed doc-base file... Registering documents with scrollkeeper... Setting up idle-python2.7 (2.7.3-0ubuntu3.5) ... Traceback (most recent call last): File "/usr/lib/python2.7/compileall.py", line 16, in <module> import struct File "/usr/lib/python2.7/struct.py", line 1, in <module> from _struct import * ImportError: No module named _struct dpkg: error processing idle-python2.7 (--configure): subprocess installed post-installation script returned error exit status 1 Setting up python (2.7.3-0ubuntu2.2) ... Setting up python-support (1.0.14ubuntu2) ... Traceback (most recent call last): File "/usr/local/lib/python2.7/site.py", line 548, in <module> main() File "/usr/local/lib/python2.7/site.py", line 530, in main known_paths = addusersitepackages(known_paths) File "/usr/local/lib/python2.7/site.py", line 266, in addusersitepackages user_site = getusersitepackages() File "/usr/local/lib/python2.7/site.py", line 241, in getusersitepackages user_base = getuserbase() # this will also set USER_BASE File "/usr/local/lib/python2.7/site.py", line 231, in getuserbase USER_BASE = get_config_var('userbase') File "/usr/local/lib/python2.7/sysconfig.py", line 516, in get_config_var return get_config_vars().get(name) File "/usr/local/lib/python2.7/sysconfig.py", line 449, in get_config_vars import re File "/usr/local/lib/python2.7/re.py", line 105, in <module> import sre_compile File "/usr/local/lib/python2.7/sre_compile.py", line 14, in <module> import sre_parse File "/usr/local/lib/python2.7/sre_parse.py", line 17, in <module> from sre_constants import * File "/usr/local/lib/python2.7/sre_constants.py", line 18, in <module> from _sre import MAXREPEAT ImportError: cannot import name MAXREPEAT Errors were encountered while processing: idle-python2.7 E: Sub-process /usr/bin/dpkg returned an error code (1) 

так что это не выход.

3 Solutions collect form web for “Ошибка ImportError: отсутствие модуля с именем _struct при управлении пакетами”

Искает это, чтобы попробовать несколько вещей.

  1. Переустановить python

    Найдена эта ссылка: Broken python (2.7) после ручного создания и установки python 2.6 . Было предложено переустановить так:

     $ sudo apt-get --reinstall install python python-support 
  2. Убедитесь, что у приложения для обновления программного обеспечения включен интернет

    Нашел эту ссылку: больше проблем с зависимостями пакета, я всегда получаю множество проблем после новой установки .

    face palm Я зашел в менеджер обновлений / настройки Ubuntu и переустановил все загружаемые из интернет-кнопок.

Я нашел способ решить эту проблему, просто удалив пакет idle-python2.7 :

 sudo apt-get remove idle-python2.7 

как указано здесь .

Ответ прост. Ваша система неверно настроена. Вы сделали локальную установку базовых пакетов Python. Это не-нет. Вы должны установить базовые двоичные пакеты Python из своего репозитория дистрибутивов. В частности, ваша установка Python ищет файлы, такие как lib/python2.7/site.py и lib/python2.7/sysconfig.py в /usr/local , но эти файлы являются частью базового пакета Python python2.7-minimal или, возможно, libpython2.7-minimal , в зависимости от того, какая версия Debian / Ubuntu соответствует вашему дистрибутиву.

Во всяком случае, решение простое. Удалите локально установленные базовые пакеты Python и установите базовые пакеты Python из вашего дистрибутива. Если программное обеспечение недоступно в вашем дистрибутиве, установите его локально. На самом деле нет смысла использовать дистрибутив, если вы не используете их пакеты.

Что значит

 apt-cache policy python2.7-minimal libpython2.7-minimal python2.7 

сказать? Два из них должны быть установлены в вашей системе.

  • Как я могу обновить pip на Ubuntu 10.04?
  • Проблемы с OOM обрабатываются ужасно - лучше отключить обмен?
  • Открытие Nautilus без --no-desktop, на Xmonad поверх Ubuntu, что происходит?
  • Yakuake не сохраняет настройку оболочки
  • Apt Unmet dependecies: libefl-bin
  • как запустить скрипт при завершении ubuntu, когда ему нужна сеть
  • udev создает правильные правила, но права исчезают, как только я пытаюсь получить доступ к файлам через C ++
  • Загрузка Ubuntu с USB на Mac
  • Понимание прав на домашнюю папку
  • Как правильно проверить отравление кэша арп локально
  • Как вы исправляете обновление apt-get «Несоответствие хэш-суммы»
  • Удаленный файл заголовка /bits/types.h
  • Linux и Unix - лучшая ОС в мире.