Gentoo Logo

1.  Настройка Portage

Как отмечалось ранее, Portage настраивается с помощью множества переменных, которые задаются в файле /etc/make.conf. За более полной и подробной информацией обращайтесь к странице справки по make.conf:

Листинг 1.1: Чтение страницы справки по make.conf

$ man make.conf

1.  Параметры сборки

Параметры конфигурирования и компиляции

Когда Portage собирает приложения, компилятору и сценарию конфигурации передаются значения следующих переменных:

  • CFLAGS и CXXFLAGS определяют желаемые флаги компилятора для C и C++
  • CHOST определяет информацию об используемой платформе для сценария конфигурации приложения
  • MAKEOPTS передается команде make и обычно применяется для установки степени распараллеливания компиляции. Более подробная информация о параметрах команды make находится на странице справки по make.

Переменная USE также используется при конфигурировании и компиляции, но о ней уже много и подробно говорилось в предыдущих главах.

Параметры установки

Когда Portage устанавливает (merge) новую версию программного продукта, файлы более старых версий удаляются из системы. Portage дает пользователю 5-ти секундную задержку перед стиранием старых версий. Эти 5 секунд задаются переменной CLEAN_DELAY.

1.  Защита конфигурационных файлов

Места, защищаемые Portage

Portage записывает файлы, предоставляемые новой версией программы, поверх старых, если только эти файлы не расположены в защищенном месте. Защищенные каталоги определяются переменной CONFIG_PROTECT. Обычно, это места расположения файлов конфигурации. Каталоги в списке разделяются пробелами.

Файл, который должен быть записан в такой защищенный каталог, переименовывается, а пользователь получает предупреждение о наличии новой версии (обычно) файла конфигурации.

Узнать текущее значение CONFIG_PROTECT можно из сообщений emerge --info:

Листинг 1.1: Получение значения CONFIG_PROTECT

$ emerge --info | grep 'CONFIG_PROTECT='

Более подробная информация о защите конфигурационных файлов, осуществляемой системой Portage, доступна по команде emerge:

Листинг 1.1: Подробная информация о защите конфигурационных файлов

$ emerge --help config

Исключение каталогов

Чтобы снять защиту с определенных подкаталогов защищенного каталога, можно использовать переменную CONFIG_PROTECT_MASK.

1.  Параметры скачивания

Расположение сервера

Если запрошенная информация или данные отсутствуют в вашей системе, Portage обращается за ними в интернет. Расположение серверов для различных каналов получения информации задается следующими переменными:

  • GENTOO_MIRRORS определяет список адресов серверов, содержащих исходный код (distfiles)
  • PORTAGE_BINHOST указывает расположение определенного сервера, содержащего двоичные пакеты (prebuilt packages) для вашей системы

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

  • SYNC указывает сервер, с которого Portage извлекает дерево портежей

Переменные GENTOO_MIRRORS и SYNC можно установить автоматически программой mirrorselect. Перед тем, как использовать, ее нужно установить, выполнив emerge mirrorselect. За дополнительной информацией обращайтесь к оперативной справке mirrorselect:

Листинг 1.1: Дополнительные сведения о mirrorselect

# mirrorselect --help

Если вы вынуждены использовать прокси-сервер, для его указания можно использовать переменные HTTP_PROXY, FTP_PROXY и RSYNC_PROXY.

Команды для извлечения

Когда Portage требуется извлечь исходный код, по умолчанию используется wget. Вы можете это изменить с помощью переменной FETCHCOMMAND.

Portage может возобновлять скачивание частично загруженного исходного кода. По умолчанию используется wget, но это можно переопределить переменной RESUMECOMMAND.

Удостоверьтесь, что ваши команды FETCHCOMMAND и RESUMECOMMAND сохраняют исходный код в нужном месте. Внутри этих переменных следует использовать \${URI} и \${DISTDIR}, для указания расположения исходных кодов и distfiles, соответственно.

Также существует возможность определить индивидуальные настройки для различных протоколов, используя FETCHCOMMAND_HTTP, FETCHCOMMAND_FTP, RESUMECOMMAND_HTTP, RESUMECOMMAND_FTP, и т.п.

Настройки rsync

Вы не можете заменить команду rsync, которую Portage использует для обновления дерева портежей, но можно установить несколько переменных, определяющих ее поведение:

  • RSYNC_EXCLUDEFROM указывает на файл, где перечислены пакеты и/или категории, которые rsync должна игнорировать во время обновления.
  • RSYNC_RETRIES определяет, сколько раз rsync должна пытаться соединиться с зеркалом, на которое указывает переменная SYNC. По умолчанию равна 3.
  • RSYNC_TIMEOUT определяет количество секунд, в течение которого rsync соединение может бездействовать, перед тем как rsync сочтет его превысившим время ожидания. По умолчанию равна 180, но если вы используете соединение по модему или у вас медленный компьютер, возможно, следует установить значение этой переменной равным 300 или большим.

1.  Настройка Gentoo

Выбор ветви

Используемую ветвь можно изменить переменной ACCEPT_KEYWORDS. По умолчанию используется стабильная ветвь для вашей архитектуры. Дополнительная информация о ветвях Gento находится в следующей главе.

Возможности Portage

Вы можете включить отдельные функции Portage с помощью переменной FEATURES. Возможности Portage рассматривались в предыдущих главах, например, (Возможности Portage).

1.  Поведение Portage

Распределение ресурсов

С помощью переменной PORTAGE_NICENESS можно увеличивать или уменьшать значение nice, с которым выполняется Portage. Значение PORTAGE_NICENESS прибавляется к текущему значению nice.

Более подробно о значениях nice написано в странице справки:

Листинг 1.1: Дополнительные сведения о nice

$ man nice

Настройки вывода

Переменная NOCOLOR (по умолчанию «false») определяет, следует ли Portage отключить цветовую раскраску своих сообщений.

Обновлено 22 января 2005

Исходный документ обновлен 28 февраля 2008

Donate to support our development efforts.

Copyright 2001-2012 Gentoo Foundation, Inc. Questions, Comments? Contact us.