отсутствует пакет CommandNotFound

Я недавно обновил с 15.10 до 16.04, и теперь мой python3, похоже, испорчен.

Перед обновлением у меня были установлены python3.4 и python3.5.1 (вручную). Обновление удалило python3.4 и заменило его на python3.2 и python3.1.
Новый python3.5.1 удалил мою python3.5.1 установку.

Но сейчас я сталкиваюсь с множеством проблем:

  • проверить этот вопрос
  • comand-not-found больше не работает и вылетает с этот след (1)

  • , если я попытаюсь запустить commmand-not-found с python3.2 (2)

, я лишил еще нескольких вещей , как это всегда одинаково.

Я не хочу использовать старые версии python3, так как я могу это исправить?
И , почему есть python3.1?

(1)

 me@my-machine:~$ whareis systemd     
 Traceback (most recent call last):
   File "/usr/lib/command-not-found", line 27, in <module>
     from CommandNotFound.util import crash_guard
 ImportError: No module named 'CommandNotFound'

(2)

Traceback (most recent call last):
  File "/usr/lib/python3.2/dbm/gnu.py", line 6, in <module>
    from _gdbm import *
ImportError: No module named _gdbm
2
задан 13 April 2017 в 15:24

2 ответа

Решение : В отличие от этого, я упомянул перед моим python3.5.1, установка не была удалена обновлением. Это все еще находилось под /usr/local/bin/python3.5.

Трассировка Ошибки : Я записал несколько строк отладки в /usr/lib/python3.5/_sysconfigdata.py:

print("python-version", sys.version_info)
print("python-gcc-version",sys.version)
print("python-executable",sys.executable)

вывод отличался между вызовом /usr/bin/python3 и rhythmbox, но исполняемый файл Python был обоими способами /usr/bin/python3

Затем, я искал неправильную установку с помощью whereis python3 и удалил /usr/local/bin/python3.5

Затем, я произвел чистку и переустановил python3 и работал apt install -f.
, Таким образом, эта Ошибка исчезла.

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

1
ответ дан 14 April 2017 в 01:24
  • 1
    И я думаю, что у меня может быть он. Clonezilla имеет способность преобразовать изображение клона в ISO-образ, который является загрузочным и от которого может быть проведено восстановление. Это достает меня к одному установочному носителю. Теперь, чтобы видеть, как получить изображение на третьем разделе и создать резервную копию первых двух без включения его. Даже если я должен включать DVD для начинания установки из раздела, that' ll все еще делают его одним диском для всей среды восстановления. – Charles Chambers 22 October 2017 в 01:48

Видел ту же ошибку в Ubuntu 16.04 с двумя установками Python3 (3.5.2 и 3.7.3):

$ junk
Traceback (most recent call last):
  File "/usr/lib/command-not-found", line 27, in <module>
    from CommandNotFound.util import crash_guard
ModuleNotFoundError: No module named 'CommandNotFound'

Мне не был нужен Python 3.5.2. Так, удаление его путем выполнения следующего разрешило ошибку для меня:

sudo apt-get remove --purge python3*
sudo apt autoremove

Затем я вижу command not found как ожидалось:

$ junk
junk: command not found
0
ответ дан 29 September 2019 в 16:57

Другие вопросы по тегам:

Похожие вопросы: