Update/p10: различия между версиями
(не показано 20 промежуточных версий 11 участников) | |||
Строка 1: | Строка 1: | ||
Процедура обновления с p9 до p10 аналогична [[Update/p9|обновлению до p9]]. | |||
= Обновление = | = Обновление = | ||
{{Attention|При обновлении продолжает действовать лицензионное соглашение установленной изначально системы.}} | {{Attention|При обновлении продолжает действовать лицензионное соглашение установленной изначально системы.}} | ||
{{Note|Все команды в данной статье требуют права [[root]], так как во время обновления может упасть графика, обновление лучше делать в текстовой консоле (Ctrl+Alt+F2)}} | |||
{{Attention|Так как обновление затрагивает и службу D-Bus, процесс обновления может вызвать падение Xorg. Поэтому непосредственно команду обновления дистрибутива {{cmd|apt-get dist-upgrade}} лучше вводить в текстовой консоли (Нажмите Ctrl+Alt+F2, введите root и пароль пользователя root).}} | |||
{{Attention|Сначала прочитайте раздел "Известные проблемы" в конце статьи.}} | {{Attention|Сначала прочитайте раздел "Известные проблемы" в конце статьи.}} | ||
== 0. Сделайте резервную копию системы до начала обновления == | == 0. Сделайте резервную копию системы до начала обновления == | ||
{{Attention|Если не уверены, что можете сами починить систему при неудачном обновлении, обязательно сделайте [[ | {{Attention|Если не уверены, что можете сами починить систему при неудачном обновлении, обязательно сделайте [[Теневое копирование+Точка восстановления|резервную копию системы]]!}} | ||
Желательно перед обновлением системы удалить все ненужные вам пакеты, и отключить ненужные сервисные службы. Это сэкономит вам некоторое время в процессе обновления, и уменьшит трафик скачанных пакетов. | |||
Сторонние пакеты, не входящие в репозиторий p9, могут не поддерживаться обновленной системой и мешать успешному обновлению. | |||
== 1. Обновить дистрибутив до самого свежего p9 == | == 1. Обновить дистрибутив до самого свежего p9 == | ||
Все операции нужно делать [[root|с правами пользователя root]]. | |||
apt-get update | apt-get update | ||
Строка 27: | Строка 29: | ||
apt-repo set p10 | apt-repo set p10 | ||
Для перехода с p9 на p10 недостаточно сменить источники. apt-repo делает всё необходимое: помимо смены источников, создаётся файл {{path|/etc/rpm/macros.d/p10}} следующего содержимого: <source lang="text">%_priority_distbranch p10</source> | |||
== 4. Обновиться до p10 == | == 4. Обновиться до p10 == | ||
{{Attention|Так как обновление затрагивает и службу D-Bus, процесс обновления может вызвать падение Xorg. Поэтому непосредственно команду обновления дистрибутива {{cmd|apt-get dist-upgrade}} лучше вводить в текстовой консоли (Нажмите Ctrl+Alt+F2, введите root и пароль пользователя root).}} | {{Attention|Так как обновление затрагивает и службу D-Bus, процесс обновления может вызвать падение Xorg. Поэтому непосредственно команду обновления дистрибутива {{cmd|apt-get dist-upgrade}} лучше вводить в текстовой консоли (Нажмите Ctrl+Alt+F2, введите root и пароль пользователя root).}} | ||
{{Note|Можно использовать {{prg|screen}}. В этом случае падение xorg не должно вызвать закрытие консоли с запущенной процедурой обновления, и к ней можно будет переподключиться из текстовой консоли, доступной по Ctrl+Alt+F2. В системе с systemd следует установить предварительно пакет systemd-settings-disable-kill-user-processes ( | {{Note|Можно использовать {{prg|screen}}. В этом случае падение xorg не должно вызвать закрытие консоли с запущенной процедурой обновления, и к ней можно будет переподключиться из текстовой консоли, доступной по Ctrl+Alt+F2. В системе с systemd следует установить предварительно пакет systemd-settings-disable-kill-user-processes, перезапустить сервис systemd-logind<ref>https://bugzilla.altlinux.org/40840</ref> и повторно зайти в систему (перелогиниться).}} | ||
apt-get update | apt-get update | ||
Строка 39: | Строка 41: | ||
Первая команда удалит из кэша apt все старые пакеты, вторая скачает (но не установит) все нужные пакеты. Если у Вас уже скачивалось что-то новое, вместо clean может оказаться выгоднее использовать autoclean. Полученное содержимое /var/cache/apt может быть использовано для последующей массовой установки пакетов посредством rpm в случае возникновения проблем с обновлением.}} | Первая команда удалит из кэша apt все старые пакеты, вторая скачает (но не установит) все нужные пакеты. Если у Вас уже скачивалось что-то новое, вместо clean может оказаться выгоднее использовать autoclean. Полученное содержимое /var/cache/apt может быть использовано для последующей массовой установки пакетов посредством rpm в случае возникновения проблем с обновлением.}} | ||
Версии дистрибутивов 9.2 используют ядро un-def. Рекомендуется при обновлении на p10 переключиться на ядра std-def. | |||
{{Attention|На системах, использующих SecureBoot, обязательно обновление ядра командой {{cmd|update-kernel}} '''<u>до перезагрузки</u>'''. В противном случае система может стать незагружаемой!}} | {{Attention|На системах, использующих SecureBoot, обязательно обновление ядра командой {{cmd|update-kernel}} '''<u>до перезагрузки</u>'''. В противном случае система может стать незагружаемой!}} | ||
Строка 47: | Строка 49: | ||
update-kernel -t std-def | update-kernel -t std-def | ||
Если во время обновления в конце написало <source lang="text">E: Произошли ошибки при выполнении транзакции</source> выполните <source lang="bash">apt-get -f install | |||
apt-get dist-upgrade</source> | apt-get dist-upgrade</source> | ||
== 5. Перезагрузка == | == 5. Перезагрузка == | ||
Строка 57: | Строка 59: | ||
Следует воспользоваться советами по ссылке [[APT_в_ALT_Linux/Советы_по_использованию]] для удаления устаревших пакетов. | Следует воспользоваться советами по ссылке [[APT_в_ALT_Linux/Советы_по_использованию]] для удаления устаревших пакетов. | ||
= Обновление через [http://wiki.etersoft.ru/EPM EPM] = | |||
Обновиться с p9 до p10 можно посредством программы epm, предварительно установив её самую последнюю версию: | |||
# apt-get install eepm && epm install 281952 | |||
а затем скомандовав: | |||
# epm release-upgrade | |||
{{Attention|Удалённое обновление рекомендуют запускать либо через сеанс screen или tmux (но и в них будет выдано предупреждение о релогине и дело дальше не пойдёт), либо с опциями <code>--force --auto</code> — без гарантии успешного завершения. Так что лучше делать это из физической консоли.}} | |||
Устаревшие пакеты удалить командой: | |||
# epm autoremove --direct | |||
Программа выполнит все необходимые действия для обновления, в том числе команды, описанные выше в порядке ручного обновления. | |||
= Настройки после обновления = | = Настройки после обновления = | ||
Строка 114: | Строка 126: | ||
--> | --> | ||
= Известные проблемы = | = Известные проблемы = | ||
Строка 128: | Строка 133: | ||
Если после смены репозитория в ответ на команду apt-get update Вы видите сообщение "Unknown vendor ID", то, вероятнее всего, у Вас установлен пакет apt-conf-<...>, отличный от apt-conf-branch. Верните старый репозиторий и установите этот пакет. Вместо обычного "Y" Вам придётся ввести фразу "Yes, do as I say!" (будет подсказка). Либо можно удалить символы [p10] из строк, описывающих новый репозиторий: в этом случае проверка не будет выполняться. | Если после смены репозитория в ответ на команду apt-get update Вы видите сообщение "Unknown vendor ID", то, вероятнее всего, у Вас установлен пакет apt-conf-<...>, отличный от apt-conf-branch. Верните старый репозиторий и установите этот пакет. Вместо обычного "Y" Вам придётся ввести фразу "Yes, do as I say!" (будет подсказка). Либо можно удалить символы [p10] из строк, описывающих новый репозиторий: в этом случае проверка не будет выполняться. | ||
==== Grub и multiple partition labels ==== | |||
При обновлении совсем старой и несколько раз уже обновлённой системы может появиться такая ошибка: | |||
/usr/sbin/grub-install: warning: Attempting to install GRUB to a disk with multiple partition labels. This is not supported yet.. | |||
/usr/sbin/grub-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged.. | |||
/usr/sbin/grub-install: error: will not proceed with blocklists. | |||
Это (про "a disk with multiple partition labels") может быть неправдой, а истинная причина — недостаток пустого пространства между нулевым сектором и первым разделом. В дистрибутивах, основанных на ветках до [[p6]], инсталлятор создавал разделы, начиная с 63 сектора, для современного [[Grub]] этого мало. Начиная с [[p6]], инсталлятор создаёт разделы, начиная с 2048 сектора. Если есть возможность освободить необходимое место (например, сдвинув, либо вовсе удалив раздел), скорее всего потребуется ещё и очистить пространство, заполнив его нулями (интересующиеся могут самостоятельно попробовать выяснить, какой именно байт(ы) и в каком секторе не нравится загрузчику и очистить только этот сектор): | |||
dd if=/dev/zero of=/dev/sdX seek=1 count=2047 | |||
{{Attention|Не ошибитесь со значением count, значение надо выбрать таким образом, чтобы перезапись не привела к затиранию реально нужного раздела.}} | |||
==== ssh и systemd (screen и т.п.) ==== | ==== ssh и systemd (screen и т.п.) ==== | ||
В конфигурации по умолчанию systemd закрывает всё, что было запущено при входе по ssh. Установите пакет systemd-settings-disable-kill-user-processes: <s>{{altbug|36633}}</s> | В конфигурации по умолчанию systemd закрывает всё, что было запущено при входе по ssh. Установите пакет systemd-settings-disable-kill-user-processes: <s>{{altbug|36633}}</s> | ||
==== Обновление ExtensionPack для VirtualBox ==== | ==== Обновление ExtensionPack для VirtualBox ==== | ||
После обновления {{pkg|virtualbox}} потребуется обновить ExtensionPack. Сделать это можно через меню Файл → Проверить обновления… | После обновления {{pkg|virtualbox}} потребуется обновить ExtensionPack. Сделать это можно через меню Файл → Проверить обновления… | ||
==== Обновление OpenVZ7 ==== | |||
Перед началом обновления (до смены репозитория с p9 на p10) нужно удалить пакет crtools, в p10 после обновления должен появиться пакет crtools-ovz, или его нужно будет поставить. | |||
<!-- | <!-- | ||
==== Обновление MariaDB ==== | ==== Обновление MariaDB ==== | ||
Строка 163: | Строка 187: | ||
На системах с [[sysvinit]] эта проблема не замечена. | На системах с [[sysvinit]] эта проблема не замечена. | ||
--> | --> | ||
= Примечания = | = Примечания = | ||
{{примечания}} | {{примечания}} |
Текущая версия от 10:22, 2 мая 2024
Процедура обновления с p9 до p10 аналогична обновлению до p9.
Обновление
0. Сделайте резервную копию системы до начала обновления
Желательно перед обновлением системы удалить все ненужные вам пакеты, и отключить ненужные сервисные службы. Это сэкономит вам некоторое время в процессе обновления, и уменьшит трафик скачанных пакетов. Сторонние пакеты, не входящие в репозиторий p9, могут не поддерживаться обновленной системой и мешать успешному обновлению.
1. Обновить дистрибутив до самого свежего p9
Все операции нужно делать с правами пользователя root.
apt-get update apt-get dist-upgrade
2. Проверить apt-repo
Скорее всего утилита уже была установлена и обновилась на первом шаге, но на всякий случай проверьте наличие:
apt-get install apt-repo
3. Изменить источники обновления
apt-repo set p10
Для перехода с p9 на p10 недостаточно сменить источники. apt-repo делает всё необходимое: помимо смены источников, создаётся файл /etc/rpm/macros.d/p10 следующего содержимого:
%_priority_distbranch p10
4. Обновиться до p10
apt-get update
apt-get clean apt-get dist-upgrade -dПервая команда удалит из кэша apt все старые пакеты, вторая скачает (но не установит) все нужные пакеты. Если у Вас уже скачивалось что-то новое, вместо clean может оказаться выгоднее использовать autoclean. Полученное содержимое /var/cache/apt может быть использовано для последующей массовой установки пакетов посредством rpm в случае возникновения проблем с обновлением.
Версии дистрибутивов 9.2 используют ядро un-def. Рекомендуется при обновлении на p10 переключиться на ядра std-def.
Выполните собственно обновление:
apt-get dist-upgrade update-kernel -t std-def
Если во время обновления в конце написало
E: Произошли ошибки при выполнении транзакции
выполните
apt-get -f install
apt-get dist-upgrade
5. Перезагрузка
Перезагрузите систему.
6. Удаление устаревших пакетов
Следует воспользоваться советами по ссылке APT_в_ALT_Linux/Советы_по_использованию для удаления устаревших пакетов.
Обновление через EPM
Обновиться с p9 до p10 можно посредством программы epm, предварительно установив её самую последнюю версию:
# apt-get install eepm && epm install 281952
а затем скомандовав:
# epm release-upgrade
--force --auto
— без гарантии успешного завершения. Так что лучше делать это из физической консоли.Устаревшие пакеты удалить командой:
# epm autoremove --direct
Программа выполнит все необходимые действия для обновления, в том числе команды, описанные выше в порядке ручного обновления.
Настройки после обновления
Известные проблемы
E: Unknown vendor ID 'p10'
Если после смены репозитория в ответ на команду apt-get update Вы видите сообщение "Unknown vendor ID", то, вероятнее всего, у Вас установлен пакет apt-conf-<...>, отличный от apt-conf-branch. Верните старый репозиторий и установите этот пакет. Вместо обычного "Y" Вам придётся ввести фразу "Yes, do as I say!" (будет подсказка). Либо можно удалить символы [p10] из строк, описывающих новый репозиторий: в этом случае проверка не будет выполняться.
Grub и multiple partition labels
При обновлении совсем старой и несколько раз уже обновлённой системы может появиться такая ошибка:
/usr/sbin/grub-install: warning: Attempting to install GRUB to a disk with multiple partition labels. This is not supported yet.. /usr/sbin/grub-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged.. /usr/sbin/grub-install: error: will not proceed with blocklists.
Это (про "a disk with multiple partition labels") может быть неправдой, а истинная причина — недостаток пустого пространства между нулевым сектором и первым разделом. В дистрибутивах, основанных на ветках до p6, инсталлятор создавал разделы, начиная с 63 сектора, для современного Grub этого мало. Начиная с p6, инсталлятор создаёт разделы, начиная с 2048 сектора. Если есть возможность освободить необходимое место (например, сдвинув, либо вовсе удалив раздел), скорее всего потребуется ещё и очистить пространство, заполнив его нулями (интересующиеся могут самостоятельно попробовать выяснить, какой именно байт(ы) и в каком секторе не нравится загрузчику и очистить только этот сектор):
dd if=/dev/zero of=/dev/sdX seek=1 count=2047
ssh и systemd (screen и т.п.)
В конфигурации по умолчанию systemd закрывает всё, что было запущено при входе по ssh. Установите пакет systemd-settings-disable-kill-user-processes: altbug #36633
Обновление ExtensionPack для VirtualBox
После обновления virtualbox потребуется обновить ExtensionPack. Сделать это можно через меню Файл → Проверить обновления…
Обновление OpenVZ7
Перед началом обновления (до смены репозитория с p9 на p10) нужно удалить пакет crtools, в p10 после обновления должен появиться пакет crtools-ovz, или его нужно будет поставить.