Руководство по обновлению Gentoo
1.
Gentoo и обновления
Философия
Здесь, на земле Gentoo, обновление понимается совсем не так, как во всем
остальном мире Linux. Вы, вероятно, уже знаете, что в наших дистрибутивах
мы никогда не следовали «классическому» способу обновления
программ: дождаться нового релиза, скачать его, прожечь, засунуть диск в
дисковод и, наконец, следовать установочным инструкциям.
Вы знаете (вы же не зря выбрали Gentoo), как такой процесс раздражает опытного
пользователя, стремящегося всегда быть на переднем крае. Учитывая популярность
и распространенность инструментов типа apt или apt-rpm, облегчающих быстрые и
частые обновления, мы полагаем, что и опытные пользователи других дистрибутивов
испытывают те же чувства. Однако ни один дистрибутив не приспособлен для
удовлетворения нужд требовательных пользователей лучше Gentoo, поскольку Gentoo
с самого начала строился на идее быстрых последовательных обновлений.
В идеале, вы устанавливаете систему однажды, и более никогда не беспокоитесь о
выпусках: просто следуйте инструкциям из введения в
Portage в настольной книге Gentoo,
где описывается, как поддерживать актуальность системы. Хотя обычно такого
подхода достаточно, иногда в ядро системы вносятся изменения, требующее
установки вручную.
Выпуски и профили
О процессе выпуска версий Gentoo постоянно задают вопрос: «Зачем нужно
часто делать новые выпуски, если они не предназначены для обновления
программ у пользователей?". Тому есть ряд причин:
-
Новый выпуск — это новые исправленные и дополненные установочные
диски.
-
Новый выпуск несет обновленный набор пакетов GRP, так что пользователи,
избираюшие «быстрый способ» установки (stage3 + заранее
скомпилированные пакеты), получают не устаревшую систему.
-
Наконец, в новых выпусках время от времени реализуются функции,
несовместимые с предыдущими выпусками.
Если в выпуск входят возможности, несовместимые с предыдущими, или содержится
набор фундаментальных пакетов и установок, сильно меняющих поведение системы,
мы говорим, что он задает новый профиль.
Профиль — это набор конфигурационных файлов, хранимый в
подкаталоге /usr/portage/profiles, описывающий сценарии ebuild
системных пакетов, флаги использования (USE) по умолчанию, отображение
виртуальных пакетов по умолчанию, а также архитектуру, на которой запускается
система.
Используемый профиль определяется символьной ссылкой
/etc/make.profile, которая указывает на подкаталог в
/usr/portage/profiles, содержащий файлы профиля. К примеру,
профиль x86 2005.1 по умолчанию находится в
/usr/portage/profiles/default-linux/x86/2005.1.
Файлы в родительских каталогах также входят в состав профиля (и, таким образом,
совместно используются различными подпрофилями). Поэтому мы называем такие
профили каскадными профилями.
Профили, устаревающие с появлением новых, хранятся в
/usr/portage/profiles наравне с актуальными, но помечены как
как нежелательные для использования. Для этого в каталог профиля помещается
файл deprecated. Файл содержит имя профиля, на который
рекомендуется обновиться. Portage использует эту информацию для
автоматического предупреждения о необходимости перехода на новый профиль.
Существуют различные причины для создания нового профиля: выпуск новых
несовместимых версий базовых пакетов (таких, как baselayout, gcc,
или glibc), изменения в USE-флагах по умолчанию или отображении
виртуальных пакетов, или, возможно, серьезные системные изменения.
2.
Гонка за новыми выпусками
Выпуски без изменений в профиле
Если объявлен новый выпуск Gentoo, в котором не появился новый профиль, то
твердо можно притвориться, что вы его не заметили :).
Ваша система будет в точности соответствовать вновь установленной с нового
выпуска, если вы обновите установленные пакеты
согласно
описанию из Настольной книги Gentoo.
Выпуски с изменениями в профиле
Если в выпуске появился новый профиль (как, например, в 2005.1 для x86), у вас
есть возможность на него перейти.
Естественно, вы не обязаны это делать, и можете продолжать пользоваться старым
профилем, просто обновляя свои пакеты, как описано
в Настольной книге Gentoo.
Однако, Gentoo крайне рекомендует обновлять профиль, если он объявляется
нежелательным для использования. Когда такое происходит, это означает, что
разработчики больше не планируют его поддерживать. В приведенной ниже таблице
можно быстро уточнить, какие профили поддерживаются в данный момент.
Переход на новый профиль придется осуществлять вручную. Необходимые действия
могут сильно отличаться от выпуска к выпуску, в зависимости от глубины
изменений, привносимых в новом профиле.
В простейшем случае, вам просто потребуется изменить символьную ссылку
/etc/make.profile, а в худшем — придется перекомпилировать
всю систему, тем временем изображая танец вуду. Процесс перехода обычно
описывается в замечаниях к выпуску. Кроме того, есть инструкции в конце данного руководства.
Поддерживаемые профили
Следующие профили официально поддерживаются разработчиками Gentoo:
| Архитектура |
Свежайшие профили |
Прочие поддерживаемые профили |
| alpha |
2005.0, 2005.0/2.4 |
|
| arm |
2004.3 |
|
| amd64 |
2005.1, 2005.1/no-multilib |
2005.0, 2005.0/no-multilib, 2004.3 |
| hppa |
2005.0, 2005.0/2.4 |
2004.3, 2004.2 |
| ia64 |
2005.0 |
2004.3 |
| ppc |
2005.1 |
2005.0, 2004.3, 2004.0 |
| mips |
2005.0 |
2004.2 |
| s390 |
2004.3 |
|
| sparc |
2005.1 |
2005.0 |
| x86 |
2005.1, 2005.1/2.4 |
2005.0, 2005.0/2.4 |
3.
Инструкции по обновлению профиля
Переход на 2005.1
Для переключения на профиль 2005.1 укажите символьной ссылкой
/etc/make.profile на новое место. Перед изменением профиля
убедитесь, что Portage обновлена.
Листинг 3.1: Переход на профиль 2005.1 |
# rm /etc/make.profile
# ln -s ../usr/portage/profiles/<selected profile> /etc/make.profile
|
Все архитектуры — в этом профиле нет фундаментальных изменений.
Конкретных действий не требуется.
ppc — в выпуске 2005.1 профили ppc и ppc64 объединены, и созданы
различные подпрофили для конкретных архитектур. При переходе на профиль 2005.1
убедитесь, что вы выбираете для своей системы верный подпрофиль.
Переход на 2005.0
С появлением 2005.0 в некоторые архитектуры было решено добавить дополнительные
профили. Если вы решили перейти на какой-либо из таких профилей —
не забудьте прежде прочитать его описание. Кроме того, теперь во многих
архитектурах по умолчанию используется дерево ядра 2.6 вместо ранее
применявшегося 2.4.
В некоторых архитектурах теперь требуется больше шагов для смены профиля. В
этих случаях из таблицы можно перейти на соответствующие пошаговые руководства.
| Профиль |
Описание |
Специфическое руководство по обновлению |
| default-linux/alpha/2005.0 |
Профиль Alpha 2005.0 по умолчанию для ядер 2.6 |
|
| default-linux/alpha/2005.0/2.4 |
Профиль Alpha 2005.0 для ядер 2.4 |
|
| default-linux/amd64/2005.0 |
Профиль AMD64 2005.0 по умолчанию для ядер 2.6 |
Обновление на 2005.0 (англ.)
|
| default-linux/amd64/2005.0/no-multilib |
Профиль AMD64 2005.0 для системы без многорежимных библиотек |
Обновление на 2005.0 (англ.)
|
| default-linux/arm/2005.0 |
Профиль ARM 2005.0 по умолчанию для ядер 2.6 |
|
| default-linux/hppa/2005.0 |
Профиль HPPA 2005.0 по умолчанию для ядер 2.6 |
|
| default-linux/hppa/2005.0/2.4 |
Профиль HPPA 2005.0 для ядер 2.4 |
|
| default-linux/mips/2005.0 |
Профиль MIPS 2005.0 по умолчанию |
|
| default-linux/mips/cobalt/2005.0 |
Профиль MIPS 2005.0 для Cobalt |
|
| default-linux/mips/mips64/n32/2005.0 |
Профиль 2005.0 для MIPS-платформ с поддержкой n32 |
|
| default-linux/mips/mips64/ip28/2005.0 |
64-битный профиль 2005.0 для Indigo2 Impact |
|
| default-linux/mips/mips64/2005.0 |
64-битный профиль MIPS 2005.0 |
|
| default-linux/ppc/2005.0 |
Профиль PPC 2005.0 по умолчанию для ядер 2.6 |
|
| default-linux/ppc64/2005.0 |
Профиль PPC64 2005.0 по умолчанию для ядер 2.6 |
|
| default-linux/s390/2005.0 |
Профиль S390 2005.0 по умолчанию |
|
| default-linux/sparc/sparc32/2005.0 |
32-битный профиль Sparc 2005.0 по умолчанию |
|
| default-linux/sparc/sparc64/2005.0 |
64-битный профиль Sparc 2005.0 по умолчанию |
|
| default-linux/x86/2005.0 |
Профиль x86 2005.0 по умолчанию для ядер 2.6 |
|
| default-linux/x86/2005.0/2.4 |
Профиль x86 2005.0 для ядер 2.4 |
|
Для перехода на выбранный профиль необходимо сменить путь, на который указывает
символьная ссылка /etc/make.profile, указав на новое место. Но
перед этим не забудьте обновить Portage.
Листинг 3.2: Переход на профиль 2005.0 |
# rm /etc/make.profile
# ln -s ../usr/portage/profiles/<selected profile> /etc/make.profile
|
Если у вас система с ядром 2.4, но вы хотите перейти на ядро 2.6 — не
забудьте прочитать Руководство по
переходу на Gentoo Linux 2.6 (англ.).
Переход на 2004.3
С появлением профилей 2004.3 особых изменений системы не произошло (подробности
— ниже). Однако разработчики Gentoo все же решили выпустить его,
прекратив поддержку некоторых старых, для ускорения принятия каскадных
профилей, то есть профилей, следующих новой структуре каталога
/usr/portage/profiles, например,
/usr/portage/profiles/default-linux/x86/2004.3 (поддерживается
Portage начиная с версии 2.0.51).
Для перехода на профиль 2004.3, укажите на новое место символьной
ссылкой /etc/make.profile:
Предупреждение:
Не забудьте обновить Portage перед сменой профиля!!!
|
Листинг 3.3: Обновление символьной ссылки /etc/make.profile |
# rm /etc/make.profile
# ln -s ../usr/portage/profiles/default-linux/<arch>/2004.3 /etc/make.profile
|
Все архитектуры — Как сказанно выше, в этом профиле не введены
серьезные изменения. Однако, следует отметить, что sys-apps/slocate и
net-misc/dhcpcd перестали считаться системными пакетами. Это значит, что
при запуске emerge --depclean Portage попытается удалить их из системы.
Если же вам они нужны, после смены профиля добавьте их в
/var/lib/portage/world, или установите вручную.
ppc — теперь на новые системы по умолчанию устанавливается
sys-fs/udev вместо sys-fs/devfs. При этом в ранее установленных
ничего не меняется.
Обновление Portage для поддержки каскадных профилей
Хотя этот раздел не слишком вписывается в такое руководство по обновлению, он
достаточно важен. Для каждого профиля, упомянутого выше, требуется версия
Portage, поддерживающая каскадные профили. Однако, некоторые устаревшие
профили не позволяют обновить Portage, и при использовании профиля, который
больше не доступен, любая попытка обновления Portage приведет к неудаче.
Чтобы обойти эту проблему, можно установить временную символьную ссылку на
устаревший профиль, позволяющую обновить Portage, после чего можно
продолжать процедуру перехода, изложенную в этом руководстве. Пожалуйста,
вместо <arch> указывайте название своей архитектуры:
Листинг 3.4: Обновление Portage при устаревшем профиле |
# rm /etc/make.profile
# cd /etc
# ln -sf ../usr/portage/profiles/obsolete/<arch> make.profile
# emerge -n '>=sys-apps/portage-2.0.51'
|
Переход на 2004.2
Для переключения на профиль 2004.2, смените путь, на который указывает
символьная ссылка /etc/make.profile, на новый:
Предупреждение:
Не забудьте обновить Portage перед сменой профиля!!!
|
Листинг 3.5: Обновление символьной ссылки /etc/make.profile |
# rm /etc/make.profile
# ln -s ../usr/portage/profiles/default-linux/<arch>/2004.2 /etc/make.profile
|
x86 — В этом профиле реализация X11 по умолчанию изменяется с
x11-base/xfree на x11-base/xorg-x11. Это влияет только на
значение по умолчанию, и касается только тех, кто еще не установил X сервер.
Если в системе он уже установлен, это вас вообще не затронет; как и раньше, по
желанию, вы можете сменять один на другой.
amd64 — фундаментальные изменения отсутствуют, и конкретных
действий не требуется.
Переход на 2004.0
Для переключения на профиль 2004.0, смените путь, на который указывает
символьная ссылка /etc/make.profile, на новый:
Листинг 3.6: Обновление символьной ссылки /etc/make.profile |
# rm /etc/make.profile
# ln -s ../usr/portage/profiles/default-<arch>-2004.0 /etc/make.profile
|
Все архитектуры — — фундаментальные изменения отсутствуют,
и конкретных действий не требуется.
Переход на 1.4 c более старых профилей
Инструкции для подобного обновления достаточно сложны, и находятся
здесь.
Текст этого документа распространяется на условиях лицензии
Creative Commons
- Attribution / Share Alike.
|