Pull to refresh

Обновление Elementary OS 5 Hera до Elementary OS 6 Odin без переустановки

Reading time4 min
Views11K
Elementary OS 6 Odin
Elementary OS 6 Odin

Вступление

Привет, Хабр! 10.08.2021 вышло крупное обновление операционной системы Elementary OS - Elementary OS 6.0 Odin. Так как я около двух лет пользуюсь Elementary OS и имею уже настроенную под себя ОС, я задался логичным вопросом - Как обновить Elementary OS без переустановки?

Все мои изыскания в Google не привели меня к искомой информации, сами разработчики Elementary OS рекомендуют переустановку ОС как способ перехода на новую версию. Пришлось разобраться в вопросе и найти способ решения своей проблемы, чем и делюсь с вами.

Для тех кто не знаком с данной ОС, можно ознакомиться здесь и да, добро пожаловать в сообщество Elementary OS :)

Предупреждение

Разработчики Elementary OS не поддерживают данный способ обновления и в случае отказа системы техническая поддержка не станет вам помогать.
Здесь описаны мои личные изыскания и личный опыт который помог мне без боли потери данных\программ\настроек и лишних действий обновиться до свежей версии Elementary OS 6 Odin на двух машинах:

  • Ноутбук Jumper Ezbook X4, Elementary OS 5.1.7 Hera.

  • Виртуальная машина в VMWare, Elementary OS 5.1.7 Hera.

Для использования этой статьи требуются минимальные знания UNIX-подобных систем. Рекомендую перед началом сделать резервную копию всех важных данных на внешний носитель.

Действуйте на свой страх и риск.


Подготовка Elementary OS 5 Hera к обновлению

Перед началом обновления ОС нам необходимо предпринять ряд действий для обновления всего окружения текущей версии ОС до самых свежих версий. Весь процесс подготовки и обновления будет происходить в терминальном режиме с правами суперпользователя:

  • Переходим в терминальный режим сочетанием клавиш Ctrl+Alt+F1.

  • Авторизуемся под своим пользователем.

  • Переходим в режим суперпользователя, вводим пароль:
    $ sudo su

Первым делом отключаем графическое окружение Pantheon и дисплейный менеджер LightDM:
# systemctl stop lightdm
ВНИМАНИЕ: Если обновление ОС производится после авторизации и полной её загрузки, во избежание проблем с обновлением необходимо остановить все процессы запущенные пользователем командой ниже. Если пользователей в системе больше одного, следующую команду необходимо выполнить для всех пользователей входивших в систему в текущем сеансе. Если вход не осуществлялся - этот шаг можно пропустить.
# pkill -u gutleibmann

Теперь нам необходимо обновить все установленные пакеты до самых свежих версий в текущей версии ОС. Для этого необходимо выполнить по порядку следующие команды:
# apt-get update
# apt-get upgrade -y
# apt-get dist-upgrade -y

Следующим шагом проверяем ОС на предмет установленных пакетов имеющих проблемы:
# dpkg --audit
ПРИМЕЧАНИЕ: В случае отсутствия проблем вывод команды будет пуст. Если проблемы всё таки обнаружены - необходимо прочитать вывод команды и решить проблемы перед продолжением.

Дальше мы проверяем ОС на предмет наличия отложенных пакетов:
# apt-mark showhold
ПРИМЕЧАНИЕ: В случае отсутствия подобных пакетов вывод команды будет пуст. В случае наличия подобных пакетов они могут нарушить работу приложений после обновления ОС, поэтому необходимо их выявить и принять решение что с ними делать - удалять или обновлять принудительно. Проверить какие именно пакеты отложены можно командой ниже:
# dpkg --get-selections | grep -i hold

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


Обновление Elementary OS 5 Hera до Elementary OS 6 Odin

Так как в качестве основы Elementary OS 6 Odin используется дистрибутив Ubuntu 20.04 то нам потребуется изменить ветки программного обеспечения и исходных кодов использовавшихся в Elementary OS 5 Hera основанного на Ubuntu 18.04 на новые.

Первым делом изменяем ветки репозиториев:
# nano /etc/apt/sources.list
Заменяем все слова bionic на focal.

Далее изменяем ветки официальных исходных кодов Elementary OS:
# nano /etc/apt/sources.list.d/elementary.list
Заменяем все слова bionic на focal.
# nano /etc/apt/sources.list.d/patches.list
Заменяем все слова bionic на focal.

Теперь получаем списки пакетов из новых веток:
# apt-get update

ВНИМАНИЕ: Перед продолжением настоятельно рекомендую убедиться что все предыдущие шаги выполнены правильно, для этого необходимо запустить симуляцию обновления, после этого пункта пути назад уже не будет.
# apt-get --simulate upgrade
Если выполнение этой команды завершилось без ошибки в конце, можно продолжать.

Приступаем к обновлению всего окружения ОС Elementary OS 5 Hera до Elementary OS 6 Odin:
# apt-get upgrade -y
# apt-get dist-upgrade -y

  • В процессе обновления появится окно настройки "keyboard-configuration", где будет предложено выбрать предпочтительный способ переключения раскладки клавиатуры.

  • После этого в процессе обновления появится окно "libpam0g:..." с запросом на перезагрузку без предупреждения служб при обновлении пакетов, соглашаемся.

ПРИМЕЧАНИЕ: Иногда могут возникать проблемы с пакетом "io.elementary.wingspanel", если такая проблема возникла, выполни следующую команду:
# apt-get --fix-broken install

Последнее что нам остаётся сделать - Удалить оставшиеся пакеты от прошлой версии Elementary OS:
# apt-get autoremove

Перезагружаем машину и наслаждаемся результатом проделанной работы. Ниже можно увидеть скриншоты ДО и ПОСЛЕ обновления моей виртуальной машины описанным способом.

ДО
ДО
ПОСЛЕ
ПОСЛЕ

P.S.: Если остались какие-то вопросы или сложности в процессе обновления - оставляйте комментарии, постараюсь ответить и помочь.

Tags:
Hubs:
Total votes 12: ↑10 and ↓2+10
Comments20

Articles