Неудавшееся обновление от 17,10 до 18,04 - “Никакой модуль под названием DistUpgrade. DistUpgradeVersion”

В попытке обновить мой виртуальный сервер Ubuntu от 17,10 до 18.04.2 LTS:

sudo do-release-upgrade

Результаты в этом выводе:

Traceback (most recent call last):
  File "/usr/bin/do-release-upgrade", line 8, in <module>
    from DistUpgrade.DistUpgradeVersion import VERSION
ImportError: No module named DistUpgrade.DistUpgradeVersion

Это - первый импорт в том сценарии Python, таким образом, я возбужден, что я пропустил что-то довольно очевидное о своей установке Python. Я проверил ссылку Python, используемую в do-resease-upgrade версию с:

head -n1 /usr/bin/do-release-upgrade
#!/usr/bin/python3

Проверка, что-обновление-версии указывает на корректную ссылку:

sudo which do-release-upgrade
/usr/bin/do-release-upgrade

Я проверил, что у меня есть символьная ссылка в/usr/bin/к python3

lrwxrwxrwx  1 root   root          18 Mar 22 12:34 python3 -> /usr/bin/python3.6
-rwxr-xr-x  2 root   root     4568920 Oct  3  2017 python3.6

И должен отметить, что переустановка python3 не изменяет результат. Я не внес никакие другие изменения в Python недавно.

Если я выполняю команду в Python /usr/bin/python3.6 ошибка генерировала изменения от ImportError до ModuleNotFound как показано ниже:

>>> from DistUpgrade.DistUpgradeVersion import VERSION
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'DistUpgrade'

Я не достаточно знаком с этим, чтобы знать, должен ли я искать модуль DistUpgrade для установки или если существует другая проблема в действии.

Реконфигурирование пакетов с sudo dpkg --configure -a также не решает проблему.

Я действительно смотрел на askubuntu.com/q/565107/301745, но не испытывал ни одну из других проблем, которые испытывал пользователь. Кроме того, я также не попытался удалить любые версии Python, как этот пользователь имел. (Хотя, в моем поиске и устранении неисправностей я действительно переустанавливал python3 и не видел изменения в поведении.)

Заранее спасибо.

2
задан 23 March 2019 в 02:32

2 ответа

Решенный: Этой проблемой является проблема версии Python, попытайтесь установить python 3.6, который является минимальным требованием для импорта пакетов.

, Если отказавший не волнуется, продолжают выполнять все шаги:

sudo add-apt-repository ppa:jonathonf/python-3.6

Затем обновления проверки и установка Python 3.6 через команды:

sudo apt-get update

sudo apt-get install python3.6

Теперь Вы имеете три версии Python, используете команду Python для версии 2.7, python3 для версии 3.5 и/или python3.6 для версии 3.6.1

, Чтобы заставить python3 использовать новый установленный python 3.6 вместо значения по умолчанию 3,5 выпуска, выполнить следующие 2 команды

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 1

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 2

Наконец, переключатель между двумя версиями Python для python3 через команду:

sudo update-alternatives --config python3

После выбора версии 3.6:

python3 -V

ОБНОВЛЕНИЕ: из-за этой ошибки, терминал гнома won’t запуск после шага 3, обходное решение выполняет следующие команды для воссоздания символьной ссылки:

sudo rm /usr/bin/python3

sudo ln -s python3.5 /usr/bin/python3

Проверка этот ресурс: http://ubuntuhandbook.org/index.php/2017/07/install-python-3-6-1-in-ubuntu-16-04-lts/

Теперь, если Вы сталкиваетесь с другой ошибкой как это:

Checking for a new Ubuntu release
Please install all available updates for your release before upgrading.

The Fix при столкновении с ошибкой выше, выполняет каждую команду ниже.

sudo apt-get update

sudo apt-get upgrade -y

sudo apt-get dist-upgrade

sudo do-release-upgrade

Ресурс: https://www.liquidweb.com/kb/troubleshooting-please-install-available-updates-release-upgrading / Hope это помогает и решает Ваш вопрос также.

0
ответ дан 2 December 2019 в 06:26

У меня была та же проблема, потому что я отключил snapd.service. Проверьте snapd.service с помощью команды: sudo systemctl status snapd.service

Если он неактивен:

● snapd.service — Snap Daemon Загружено: загружено (/lib/systemd/system/snapd.service; отключено; предустановка поставщика: включена) Active: inactive (dead)

Запустите службу с помощью sudo systemctl start snapd.service, затем запустите обновление релиза

0
ответ дан 10 August 2020 в 16:56

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

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