DISTDIR

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page DISTDIR and the translation is 94% complete.

Переменная DISTDIR определяет каталог, где Portage будет хранить скачанные архивы с исходным кодом. По умолчанию это путь /var/cache/distfiles для новых установок. Ранее был выставлен путь ${PORTDIR}/distfiles, который обрабатывался по умолчанию в /usr/portage/distfiles.

Этот каталог, который часто называется каталогом distfiles, хранит архивы с исходным кодом всех программ, установленных (или которые пытались установить) в системе. Однако данный каталог не очищается автоматически, поэтому пользователи должны использовать специальные программы, например, команду eclean-dist (которая поставляется как часть пакета app-portage/gentoolkit), чтобы размер данного каталога не вышел из-под контроля. Для более подробной информации смотрите статью Eclean.

Пользователи могут установить переменную DISTDIR в /etc/portage/make.conf:

Предупреждение
Beware where you place your DISTDIR! Only trusted users should be granted write access to this location.


File integrity check and unpacking is a non-atomic operation, allowing for an attack where a file is swapped in between, possibly leading to compromise the system.
ФАЙЛ /etc/portage/make.confИспользование другого каталога в DISTDIR
DISTDIR=/var/gentoo/distfiles

Исходники архивов

Для загрузки архивов исходного кода Portage будет сначала загружать файлы с серверов, определённых в переменной GENTOO_MIRRORS (для снижения нагрузки на ресурсы upstream проекта и по другим причинам). Переменная SRC_URI в отдельных ebuild-файлах указывает на исходные файлы пакета, которые изначально загружаются сопровождающими ebuild-файла во время создания и разработки этого ebuild-файла.

Частью разработки ebuild-файлов является создание файла Manifest, который гарантирует, что исходные файлы не будут изменены с момента их загрузки разработчиком ebuild-файла, распространения в зеркальной системе Gentoo, а затем и их загрузки в конечной системе.

Обход зеркал Gentoo

Предупреждение
Со временем upstream проекты, размещающие исходные файлы пакетов, перемещают URL-адреса исходных файлов своих проектов в новые места. В некоторых случаях проекты, размещающие исходные файлы, прекращают разработку, что в конечном итоге приводит к невозможности получения исходных файлов программного обеспечения из мест размещения исходных файлов.

Благодаря системе зеркалирования Gentoo, сопровождающие могут по-прежнему 'поддерживать' ebuild-файлы с устаревшими исходными текстами. Это позволяет плавно удалять пакеты из репозитория ebuild-файлов gentoo::, что является частью хорошего пользовательского опыта для сообщества Gentoo. По этим и другим причинам пользователям, решившим обойти систему зеркал Gentoo, следует ожидать ненадежной загрузки исходных файлов.

Чтобы загрузить исходные архивы в обход зеркал Gentoo, установите переменную GENTOO_MIRRORS в пустое значение из командной строки. Например:

root #GENTOO_MIRRORS="" emerge --ask www-client/firefox

Смотрите также