This is Gentoo's testing wiki. It is a non-operational environment and its textual content is outdated.

Please visit our production wiki at https://wiki.gentoo.org

Handbook:IA64/Portage/Variables

From Gentoo Wiki (test)
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:IA64/Portage/Variables and the translation is 100% complete.
IA64 Handbook
Установка
Об установке
Выбор подходящего источника для установки
Настройка сети
Подготовка дисков
Установка stage3
Установка базовой системы
Настройка ядра
Настройка системы
Установка системных утилит
Настройка загрузчика
Завершение
Работа с Gentoo
Введение в Portage
USE-флаги
Возможности Portage
Система init-скриптов
Переменные окружения
Работа с Portage
Файлы и каталоги
Переменные
Смешение ветвей программного обеспечения
Дополнительные утилиты
Дополнительные репозитории пакетов
Расширенные возможности
Настройка сети
Начальная настройка
Расширенная настройка
Модульное построение сети
Беспроводная сеть
Добавляем функциональность
Динамическое управление


Настройка Portage

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

user $man make.conf
user $man portage

Параметры работающие во время сборки

Параметры для configure и компилятора

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

CFLAGS и CXXFLAGS
определяет желаемые флаги компилятора для компиляции кода на C и C++
CHOST
определяет информацию о хосте, на котором производиться компиляция (build host), которая передается скрипту configure в приложении
MAKEOPTS
передается команде make и в основном используется для определения степени распараллеливания во время компиляции. Больше информации о всех параметрах команды make можно найти в man-странице make.

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

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

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

Можно сказать emerge использовать определенные параметры при каждом запуске, настроив их в переменой EMERGE_DEFAULT_OPTS. Некоторые полезные параметры --ask, --verbose, --tree и так далее.

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

Каталоги, защищаемые Portage

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

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

Чтобы узнать текущие настройки CONFIG_PROTECT, проверьте вывод команды emerge --info:

user $emerge --info | grep 'CONFIG_PROTECT='

Больше информации о том, как работает защита конфигурационных файлов в Portage можно найти в разделе CONFIGURATION FILES man-страницы emerge:

user $man emerge

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

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

Параметры загрузки

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

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

GENTOO_MIRRORS
определяет список серверов, которые содержат исходный код (distfiles).
PORTAGE_BINHOST
определяет расположение конкретного сервера, который содержит бинарные пакеты.

Третий параметр содержит расположение сервера rsync, который используется при обновлении локального Gentoo репозитория. Он определяется в файле /etc/portage/repos.conf (либо в файле внутри данного каталога, если это каталог):

sync-type
определяет тип сервера, по умолчанию rsync.
sync-uri
определяет конкретный сервер, который Portage использует чтобы загрузить Gentoo репозиторий.

Переменные GENTOO_MIRRORS, sync-type и sync-uri могут быть установлены автоматически с помощью приложения mirrorselect. Конечно, прежде чем им воспользоваться, необходимо сперва установить пакет app-portage/mirrorselect. Больше информации можно посмотреть в mirrorselect help:

root #mirrorselect --help

Если требуется использовать прокси-сервер, то можно настроить переменные http_proxy, ftp_proxy и RSYNC_PROXY.

Команды загрузки

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

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

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

Можно определить обработчики для каждого протокола с помощью переменных FETCHCOMMAND_HTTP, FETCHCOMMAND_FTP, RESUMECOMMAND_HTTP, RESUMECOMMAND_FTP и так далее.

Настройка rsync

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

PORTAGE_RSYNC_OPTS
Определяет ряд значений по умолчанию, которые используются в процессе синхронизации (sync), каждая из которых разделена пробелом. Не стоит менять эту переменную, пока вы точно не будете знать что делаете. Обратите внимание, что некоторые необходимые параметры всегда будут использоваться, даже если переменная PORTAGE_RSYNC_OPTS будет пуста.
PORTAGE_RSYNC_EXTRA_OPTS
используется для определения дополнительных параметров во время синхронизации. Каждый параметр должен быть разделен пробелом:
--timeout=<number>
определяет сколько секунд rsync будет ожидать подключения, прежде чем подключение будет считаться истекшим по временем ожидания. По умолчанию эта переменная установлена в 180, но пользователи с диалап (dialup) или медленным компьютером могут попробовать установить 300 или выше.
--exclude-from=/etc/portage/rsync_excludes
указывает файл, содержащий список пакетов и/или категорий, который rsync должен игнорировать в процессе синхронизации. В этом случае он указывает на /etc/portage/rsync_excludes.
--quiet
уменьшит вывод на экран.
--verbose
выводит полный список файлов.
--progress
отображает процесс загрузки для каждого файла.
PORTAGE_RSYNC_RETRIES
определяет, сколько раз rsync должен пытаться соединиться с зеркалом, на который указывает переменная SYNC, прежде чем сообщить об ошибке. По умолчанию, значение этой переменной 3.

Более подробную информацию о этих и других опциях читайте в rsync man-странице.

Конфигурация Gentoo

Выбор ветвь

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

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

Можно активировать определенные возможности Portage с помощью переменной FEATURES. Возможности Portage уже были рассмотрены в предыдущих главах.

Поведение Portage

Управление ресурсами

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

Более подробную информацию о значениях nice смотрите в man-странице nice:

user $man nice

Управление выводом

Переменная NOCOLOR (по умолчанию она установлена в false) определяет, должен ли Portage отключить использование цветного вывода.