Update/p11

Материал из ALT Linux Wiki

Процедура обновления с p10 до p11 аналогична обновлению до p10.

Обновление

Примечание: При обновлении продолжает действовать лицензионное соглашение установленной изначально системы.
Примечание: Все команды в данной статье требуют права root.
Внимание! Так как обновление затрагивает и службу D-Bus, процесс обновления может вызвать падение Xorg. Поэтому непосредственно команду обновления дистрибутива apt-get dist-upgrade лучше выполнять в текстовой консоли (Ctrl+Alt+F2)
Внимание! Сначала прочитайте раздел "Известные проблемы" в конце статьи.


0. Подготовка к обновлению

Внимание! Если не уверены, что можете сами починить систему при неудачном обновлении, обязательно сделайте резервную копию системы!

Желательно перед обновлением системы удалить все ненужные вам пакеты, и отключить ненужные сервисные службы. Это сэкономит вам некоторое время в процессе обновления, и уменьшит трафик скачанных пакетов.

Сторонние пакеты, не входящие в репозиторий p10, в том числе несвободные, могут не поддерживаться в обновлённой системе и мешать успешному обновлению. Например, некоторый программный компонент собран под p10 с устаревшей библиотекой OpenSSL 1.1, не поддерживает актуальную OpenSSL 3 из p11, и исправить его исходный код не представляется возможным. В этом случае перед обновлением такие пакеты потребуется удалить.

1. Обновить дистрибутив до самого свежего p10

Все операции нужно делать с правами пользователя root.

# apt-get update
# apt-get dist-upgrade
Внимание! В некоторых дистрибутивах на базе p10 используется репозиторий gostcrypto, а в системе установлен пакет apt-conf-branch-gostcrypto. Ввиду altbug #51886 ссылка на репозиторий gostcrypto могла давно пропасть, если проводились какие-то манипуляции с репозиториями через apt-repo, соответственно apt-conf-branch-gostcrypto не будет обновлён, что позже приведёт к появлению ошибки "Unknown vendor ID". Если у Вас установлен пакет apt-conf-branch-gostcrypto, следует убедиться, что репозиторий gostcrypto подключен.


2. Проверить apt-repo

Скорее всего утилита уже была установлена и обновилась на первом шаге, но на всякий случай проверьте наличие:

# apt-get install apt-repo

3. Изменить источники обновления

Внимание! Перед началом данной операции следует выполнить перезагрузку операционной системы!
Примечание: Следующая команда заменит все источники в файле /etc/apt/sources.list. Если у вас прописаны сторонние репозитории, сделайте резервную копию файла.
# apt-repo set p11
Внимание! Если необходимо (присутствует apt-conf-branch-gostcrypto), и если altbug #51886 ещё не исправлен, вернуть репозиторий gostcrypto

Для перехода с p10 на p11 недостаточно просто сменить источники. apt-repo делает всё необходимое: помимо смены источников, создаётся файл /etc/rpm/macros.d/priority_distbranch следующего содержимого:

%_priority_distbranch p11


4. Обновиться до p11

Внимание! Так как обновление затрагивает и службу D-Bus, процесс обновления может вызвать падение Xorg. Поэтому непосредственно команду обновления дистрибутива apt-get dist-upgrade лучше вводить в текстовой консоли (Нажмите Ctrl+Alt+F2, введите root и пароль пользователя root).
Примечание: Можно использовать screen или tmux. В этом случае падение xorg не должно вызвать закрытие консоли с запущенной процедурой обновления, и к ней можно будет переподключиться из текстовой консоли, доступной по Ctrl+Alt+F2. В системе с systemd следует установить предварительно пакет systemd-settings-disable-kill-user-processes, перезапустить сервис systemd-logind[1] и повторно зайти в систему (перелогиниться).
# apt-get update
Примечание: Необязательный шаг:
# apt-get clean
# apt-get dist-upgrade -d
Первая команда удалит из кэша apt все старые пакеты, вторая скачает (но не установит) все нужные пакеты. Если у Вас уже скачивалось что-то новое, вместо clean может оказаться выгоднее использовать autoclean. Полученное содержимое /var/cache/apt может быть использовано для последующей массовой установки пакетов посредством rpm в случае возникновения проблем с обновлением.


Внимание! На системах, использующих SecureBoot, обязательно обновление ядра командой update-kernel до перезагрузки. В противном случае система может стать незагружаемой!


Выполните собственно обновление:

# apt-get dist-upgrade
# update-kernel

Если во время обновления в конце написало

E: Произошли ошибки при выполнении транзакции

выполните

# apt-get -f install
# apt-get dist-upgrade

5. Перезагрузка

Внимание! На системах, использующих SecureBoot, обязательно обновление ядра командой update-kernel до перезагрузки. В противном случае система может стать незагружаемой!

Перезагрузите систему.

6. Удаление устаревших пакетов

Следует воспользоваться советами по ссылке APT в ALT Linux/Советы по использованию для удаления устаревших пакетов.


Известные проблемы

1. Удаление scilab (профиль «Высшая школа» в Альт Образование). Новая версия пока не собрана.

2. Удаление qgis3-python. Установите

 apt-get install qgis-python

3. Удаление swi-prolog. Новая версия пока не собрана.

4. Удаление transcode. Пакет более не поддерживается.

5. Удаление gz-sim. Установите

 apt-get install gz-sim

6. Удаление postgresql14-1C-server. Для перехода на новую мажорную версию postgresql16-1C-server воспользуйтесь инструкцией https://www.postgresql.org/docs/10/upgrading.html и используйте промежуточный пакет postgresql14-server.

Примечания