Gentoo Linux переход на новый профиль 17.1 с профиля 17.0

Дата | 13.05.2020

gentoo profile 17.1
Решил пока жаркие деньки не наступили, перейти на новый профиль в системе.
В новом системном профиле 17.1 у системы gentoo была переработана функция multilib.
Переходим в системе Gentoo Linux профиль 17.1 с профиля 17.0.
Изначально профиль у меня был default/linux/amd64/17.0/no-multilib (stable)
Для начало, найдем новость о новом стабильном профиле 17.1

eselect news list | grep "17.1 profiles"
  [19]     2019-06-05  amd64 17.1 profiles are now stable

Прочитаем новость.

eselect news read 19

В новости есть структура последовательности действий по переходу.
Вот мои действия по переходу на новый профиль:
1 Обновляем текущую систему.

# emerge -auvDN world.

2 У моей системы изначальный профиль системы 17.0 и gcc 9.3.0, так что этот пункт мне не нужно делать.
3 Установим вспомогательный пакет по переходу на профиль 17.1.

# emerge -1v app-portage/unsymlink-lib

4 Запустим анализ действий, что эта утилита будет делать, смотрим есть ли ошибки
Будет видно, какие директории и библиотеки перенесутся в новую директорию.

# unsymlink-lib --analyze

5 Самое время сделать backup системы, на всякий пожарный.
6 Запускаем миграцию для профиля 17,1,

# unsymlink-lib --migrate

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

[/lib32] & /lib -> /lib.new ...
Remove extraneous files from /lib.new ...
[/usr/lib32] & /usr/lib -> /usr/lib.new ...
[/usr/local/lib32] & /usr/local/lib -> /usr/local/lib.new ...
Updating: /lib -> lib.new ...
Updating: /usr/lib -> lib.new ...
Updating: /usr/local/lib -> lib.new ...

Initial migration complete. Please now test whether your system works
correctly. It might be a good idea to try rebooting it. Once tested,
complete the migration and clean up backup files via calling:

	/usr/lib/python-exec/python3.7/unsymlink-lib --finish

If you wish to revert the changes, run:

	/usr/lib/python-exec/python3.7/unsymlink-lib --rollback

7 Перезагрузим систему, проверяем как загрузится, есть ли ошибки в portage.

gcc-config -l
emerge --info

Если есть ошибки, разбираем их, либо возвратить как было.

unsymlink-lib --rollback

8 Если все в порядке, то удаляем бэкапы директорий и библиотек созданные в 6 пункте.

unsymlink-lib --finish

Что типа этого увидите.

enaming /lib.new -> /lib ...
Renaming /usr/lib.new -> /usr/lib ...
Renaming /usr/local/lib.new -> /usr/local/lib ...
Removing stale files from /lib64 ...
Removing stale files from /usr/lib64 ...
Removing stale files from /usr/local/lib64 ...


Migration complete. Please switch to the new profiles, or add
the following to your make.conf (or equivalent):

	SYMLINK_LIB=no

Afterwards, please rebuild all installed GCC versions, e.g.:

	emerge -1v /usr/lib/gcc

9 Переходим на новый профиль 17.1.

eselect profile set 26

или

eselect profile set default/linux/amd64/17.1/no-multilib

Проверим какой профиль сейчас.

eselect profile show

или

eselect profile list | grep '*'

10 Осталось пересобрать gcc компилятор, это на долго, на моем 12 ядерном процессоре с 16 Гиг памяти и диском nvme заняло примерно 15-20 минут.

emerge -1v sys-devel/gcc

11-12 Так как я не использую multilib, то значит в моей системы нет 32 битных библиотек и значит эти два пункта мне выполнять не нужно.

Вот как бы и все, вся логика перехода в Gentoo Linux профиль 17.1, это со стороны сложно!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *