sudo apt-get update subprocess вернул код ошибки

Я использую Ubuntu 18.04 и заметил, что в верхнем левом углу экрана неожиданно появился этот значок . Я думал, что это произошло из-за краткого отключения, поэтому я не особо волновался.

Теперь, когда я запускаю sudo apt-get update, процесс останавливается с этой ошибкой:

Hit:1 http://it.archive.ubuntu.com/ubuntu bionic InRelease
Hit:2 http://it.archive.ubuntu.com/ubuntu bionic-updates InRelease             
Hit:3 http://it.archive.ubuntu.com/ubuntu bionic-backports InRelease           
Hit:4 http://security.ubuntu.com/ubuntu bionic-security InRelease              
Hit:5 http://packages.ros.org/ros/ubuntu bionic InRelease                      
Hit:6 https://download.sublimetext.com apt/stable/ InRelease                   
Traceback (most recent call last):                 
  File "/usr/lib/cnf-update-db", line 8, in <module>
    from CommandNotFound.db.creator import DbCreator
  File "/usr/lib/python3/dist-packages/CommandNotFound/db/creator.py", line 11, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
Error in sys.excepthook:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
    from apport.fileutils import likely_packaged, get_recent_crashes
  File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
    from apport.report import Report
  File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
    import apport.fileutils
  File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module>
    from apport.packaging_impl import impl as packaging
  File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 24, in <module>
    import apt
  File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'

Original exception was:
Traceback (most recent call last):
  File "/usr/lib/cnf-update-db", line 8, in <module>
    from CommandNotFound.db.creator import DbCreator
  File "/usr/lib/python3/dist-packages/CommandNotFound/db/creator.py", line 11, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
Reading package lists... Done
E: Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/lib/command-not-found/ -a -e /usr/lib/cnf-update-db; then /usr/lib/cnf-update-db > /dev/null; fi'
E: Sub-process returned an error code

Единственная «злая» вещь, которую я помню, делал перед тем, как увидел такую ​​иконку, - вход sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 0 расставить приоритеты этой новой версии Python.

Так как по ошибке я вижу, что импорт Python завершается неудачно, я решил прояснить ситуацию.
Итак, я попробовал:

  • sudo apt-get clean
  • sudo dpkg --configure -a
  • sudo apt-get autoremove
  • sudo apt-get upgrade
  • sudo apt-get install apt_pkg -> E: Unable to locate package apt_pkg
  • sudo update-альтернативы --remove-все python && sudo update-альтернативы --remove-all python3

-> ошибка вывода изменена на

(...)
sh: 1: /usr/lib/cnf-update-db: not found           
Reading package lists... Done
E: Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/lib/command-not-found/ -a -e /usr/lib/cnf-update-db; then /usr/lib/cnf-update-db > /dev/null; fi'
E: Sub-process returned an error code

Более того : я больше не могу получить доступ к своему терминалу. Единственный неудобный способ, который я нахожу, - это щелкнуть правой кнопкой мыши в любом месте, а затем выбрать «Открыть терминал». Для этого я попытался

  • изменить языковые настройки , даже если они никогда не были повреждены.
  • запуск терминала из «Приложения», в результате чего появляется уведомление failed to execute child process gnome-terminal: no such file or directory
  • , запуск его через «правый клик» и ввод $ gnome-terminal приводит к bash: /usr/bin/gnome-terminal: /usr/bin/python3: bad interpreter: No such file or directory

Надеюсь, что решение одного решает другое ..

0
задан 23 September 2019 в 20:16

3 ответа

Гм, попробуйте "путь окон"

sudo apt install --reinstall  python3-commandnotfound  command-not-found            
0
ответ дан 23 October 2019 в 10:48

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

я предполагаю, что Python действительно что-то, что необходимо быть дополнительно-осторожными при обработке с Ubuntu. Урок научился на горьком опыте.

0
ответ дан 23 October 2019 в 10:48

Используйте альтернативы обновления для откладывания версии Python по умолчанию к тому, каково это было. Я также запускаю Ubuntu 18.04, которая моя версия Python 2.7.15

$ python --version
Python 2.7.15+

Затем, я рекомендовал бы изучить установку виртуальных сред Python с помощью venv (venv в python3 и virtualenv для python2) для того, чтобы протестировать или запустить программы, которые требуют python 3.

Первый, удостоверьтесь, что Вы имеете зернышко, установленное путем выполнения sudo apt install python3-pip, или удостоверяетесь, что это актуально путем выполнения python3 -m pip install --user --upgrade pip.

Затем установка venv путем выполнения python3 -m pip install --user virtualenv

я очень не хочу связать Вас с внешней веб-страницей, но существуют четкие указания в выполнении этого на веб-сайте python.org. Можно найти ссылку на сайт в здесь

1
ответ дан 23 October 2019 в 10:48

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

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