Ошибка 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) 

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

  • Нет микрофонного входа - VIZIO CT15-A5 и 12.04 LTS (64)
  • Как исправить графические проблемы с приложениями Qt? (дельфин: 14635): Gdk-WARNING **: ошибка shmget: ошибка 28 (на устройстве не осталось места)
  • Ubuntu зависает при входе в систему после nvidia-prime intel
  • Каковы каталоги generic-pae в / lib / modules?
  • dnsmasq недоступен из сетевого пространства имен сначала
  • Проблема временных файлов
  • Драйверы для Sapphire HD 4870 GDDR 512 для Ubuntu
  • Расширение раздела Linux
  • 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 

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

    Linux и Unix - лучшая ОС в мире.