Главная страница | Добавить в избранное    
   

 

» Статьи » Portmaster

   
main1
pix
 

Portmaster

Статьи  
pix pix pix

 

Portmaster – это утилита во FreeBSD для управления портами, использующая только структуру самих портов, без дополнительных надстроек или использования сторонних языков. С помощью нее можно обновлять, часть или все порты.

 

Общие флаги:

 

--force-config   Выполнить команду 'make config' для всех портов (перекрывается -G)

 

-C   Не выполнять команду 'make clean' до сборки пакетов

 

-G   Позволяет не выполнять 'make config'

 

-H   Cкрыть подробности сборки и установки в log-файле

 

-K       Не выполнять 'make clean'  после сборки пакетов

 

-B   Предотвращает создание резервного пакета установленного порта
(обычно до установки делается резервная копия, на которую откатывается в случае неудачи,
после удачной установки резервная копия удаляется)

 

-b       Создание и сохранение резервного пакета установленного порта

 

-g        Создать пакет из нового порта

 

-n       Проходит все шаги установки, но не инсталлирует ни каких портов
( я думаю удобно при отладке используя  ключ "-K" и в случаи удачи
запустить снова portmaster с ключом "-C" для установки без сборки

 

-t   Тщательные рекурсивные зависимости использует all-depends-list.
РЕКОМЕНДУЕТСЯ ИСПОЛЬЗОВАТЬ ТОЛЬКО В СЛУЧАЕ НЕОБХОДИМОСТИ.
(recurse dependencies thoroughly, using all-depends-list.
RECOMMENDED FOR USE ONLY WHEN NEEDED, NOT ROUTINELY. When applied to the
--clean-distfiles option it allows a distfile to be valid if it
matches any up to date port, not just the ones that are installed.)

 

-v   Подробный вывод

 

-w   Сохранять старые подключаемые библиотеки до деинсталляции

 

[-R] -f всегда пересобирать порты (перекрывается -i)

 

-i    Интерактивная мода обновления, спрашивать пересобирать ли порты

 

-D    Не очищать архивы исходников (distfiles)

 

-d    Всегда отчищать архивы исходников (distfiles)

 

-m arguments for make
 any arguments to supply to make(1)
-m    Аргументы make, для того что бы узнать аргументы читайте man make(1)

 

-x  avoid building or updating ports that match this pattern.  Can be
 specified more than once.  If a port is not already installed the
exclude pattern will be run against the directory name from
 /usr/ports.
-x    Используется для исключения установки или обновления портов.
Можно использовать несколько раз в одной команде. Путь задается относительно каталога /usr/ports.

 

--no-confirm Не запрашивает пользователя подтверждения списока портов
для установки или обновления перед сборкой

 

--no-term-title	 Не обновлять заголовок xterm

 

--no-index-fetch Пропустить скачивание INDEX файла

 

--index   use INDEX-[7-9] exclusively to check if a port is up to date

 

--index-first use the INDEX for status, but double-check with the port

 

--index-only do not try to use /usr/ports. For updating ports when no /usr/ports
directory is present the -PP|--packages-only option is required.  See
the ENVIRONMENT section below for additional requirements.

 

--delete-build-only удалить порты собранные только для удовлетворения зависимости,
после успешной сборки.

 

-P|--packages использовать пакеты если это возможно, иначе собирать порты

 

-PP|--packages-only Выдавать ошибку и останавливается если пакет недоступен,
"-PP" должна быть одна в строке,
например вы не можете использовать "-PPav"

 

--packages-build Использовать пакеты для удовлетворения всех зависимостей.

 

--packages-if-newer Использовать пакет если он новее чем уже установленный,
даже если пакет не является последним согласно дереву портов

 

--always-fetch Всегда скачивать пакет, даже если он уже доступен локально

 

--local-packagedir=<path> Указать путь где локальные пакеты могут быть найдены.
Эта опция должна указать на полный путь структуры каталогов, создаваемой таким же образом,
который который был создан с помощью 'make package' (или 'portmaster -g').
То есть, файлы пакета содержатся в <path>/All (ВНИМАНИЕ!!! All с большой буквы.),
символьные ссылки LATEST_LINK <path>/Latest каталог,
и символьные ссылки в папку <path>/All в категориях и подпапках,
таких как <path>/devel, <path>/ports-mgmt, и т.д. (как на ftp-шнике freebsd.org)

 

--packages-local использовать пакеты только из тех, что указаны
директивой --local-packagedir

 

--delete-packages после установки пакета, удалить его.

 

Особенности:

 

-a      Проверка всех портов и обновление по мере необходимости.

 

--show-work   Показывать какие из зависимых портов не установленные (подразумевает "-t" )

 

-o <new port dir in /usr/ports> <installed port>
 replace the installed port with a port from a different origin
-o <new port dir in /usr/ports> <installed port>   заменить существующий порт
другим портом (обычно перейти на новую версию)

 

[-R] -r имя/glob      каталога порта в /var/db/pkg восстановить указанный порт,
и все порты, которые зависят от его

 

-R            используется с -r или -f опциями, чтобы пропустить порты, обновленные ранее.
Когда использующийся с "-r" это также предотвратит восстанавление родительского порта,
если это, и все его зависимости

 

-l              список всех установленных портов по категориям

 

-L             список всех установленных портов по категориям, и поиск обновлений

 

--list-origins    список директорий относительно /usr/ports. Этот список предназначен
для передачи в portmaster либо на другой машине или для перестановки всех портов. 
См. примеры ниже.

 

 [--force-config|-G] [-aftv] -F    только скачать дистрибутивы (distfiles)

 

-n  отвечать "нет" на все вопросы пользователю

 

-y  отвечать "да" на все вопросы пользователю

 

[-n|y] [-b] [-D|d] -e имя/glob для каталога порта в /var/db/pkg удаляют порт,
используя pkg_delete, и дополнительно удаляют весь distfiles.
Вызов "-s" после удаления порта удаляет и все зависимости которые более не требуются.

 

[-n|y] [-b] [-D|d] -s   удалить неиспользуемые более порты зависимостей

 

[-t] [-n] --clean-distfiles  удаляет неиспользуемые distfiles-файлы установленных портов,
если используется "-t" то для всех портов, а не только установленных.

 

[-t] -y --clean-distfiles тоже что и выше, но удаляет все distfiles-файлы без предупреждения

 

[--index|--index-only] [-n] --clean-packages  предложит удалить устаревшие пакеты.
Опция --index-only требуется, если не дерево портов доступно.

 

[--index|--index-only]
               "-y --clean-packages" делает то же самое, что и выше, но удаляет все устаревшие файлы
без предупреждения.

 

[-n|y] [-v] --check-depends       cross-check и обновления информации зависимостей
для всех портов

 

[-n|y] [-v] --check-port-dbdir     Проверит устаревшие записи в /var/db/ports

 

-h|--help    Показать помощь

 

--version    Показать номер версии

 

Переменные среды

 

Каталог на который указывает переменная PACKAGES
(по умолчанию /usr/ports/packages) будет использоваться для хранения
и резервного копирования новых пакетов. При использовании 'make package'
с опцией -g, инфраструктура портов сохранит пакеты в ${PACKAGES}/All
иначе PKGREPOSITORY. При использовании -b опции portmaster хранит
свои резервные пакеты в ${PACKAGES}/portmaster-backup так,
чтобы вы могли создать и резервный пакет и пакет недавно установленного порта,
даже если у них одинаковая версия в разных папках.

 

При использовании опции --packages* файлы пакета будут загружены
в ${PACKAGES}/portmaster-download.  portmaster будет использовать
переменные PACKAGESITE и PACKAGEROOT (по умолчанию http://ftp.freebsd.org).
portmaster пытается использовать обе эти переменные как же
как это делает pkg_add (1).

 

Переменная UPGRADE_TOOL установленная в положение "portmaster"
и переменные UPGRADE_PORT и UPGRADE_PORT_VER устанавливаются в полное
имя пакета и версии.(The UPGRADE_TOOL variable is set to "portmaster",
and the UPGRADE_PORT  and UPGRADE_PORT_VER variables are set to the full
package name string  and version of the existing package being replaced, if any.)

 

При использовании опции --index-only переменная PACKAGES должна
содержать имя папки в которой у суперпользователя есть права на запись.
Другие полезные переменные:

 

     MASTER_SITE_INDEX       (по умолчанию http://www.FreeBSD.org/ports/)
     FETCHINDEX              (по умолчанию fetch -am -o)
     INDEXDIR                (по умолчанию $PORTSDIR, или $TMPDIR для --index-only)
     INDEXFILE               (по умолчанию версия FreeBSD)

 

Если Вы используете нестандартные настройки OPTIONS для создания пакета
и хотите использовать опцию --index-only без дерева портов, вы должны генерировать свой собственный INDEX файл так, 
чтобы зависимости соответствовали.

 

Если вы хотите настроить свою среду сборки на основе на портов,
посмотрите /usr/ports/ports-mgmt/portconf

 

Для логирования используйте переменную PM_LOG указав в ней полный путь до файла.

 

По умолчанию portmaster создает резервные пакеты установленных портов прежде,
чем он выполнит pkg_delete (1) во время обновления. Если создания пакета не удается
это рассматривается как серьезная ошибка и предлагается пользователю.
Однако для заданного сценарием использования portmaster это может быть проблемой.
В ситуациях, где пользователь АБСОЛЮТНО УВЕРЕН, что не возможность создания
резервного пакета не должна приводить к фатальной ошибке,
переменная PM_IGNORE_FAILED_BACKUP_PACKAGE
может быть определена через rc файл.

 

Для тех, кто хочет чтобы определенные порты всегда компилировались,
а не  устанавливались из пакетов, переменная PT_NO_INSTALL_PACKAGE
может быть определена в соответствии с make(1), можно установить в /usr/local/etc/ports.conf
если используется /usr/ports/ports-mgmt/portconf, или в /etc/make.conf

 

ФАЙЛЫ

 

/usr/local/etc/portmaster.rc
$HOME/.portmasterrc
        Дополнительные системные и пользовательские конфигурационные файлы.
        Набор переменных в getopts подпрограмме сценария может быть определен в этих файлах,
        чтобы включить опции. Эти файлы будут считанны главным portmaster процессом,
        все переменные в них будут экспортироваться.
/var/db/pkg/*/+IGNOREME
         Если этот файл существует в папке порта, который уже установлен,
         поведение будет следующим:
               1. Порт будет проигнорирован везде.
                 Это включает обновления зависимости, даже если нет никакого каталога для порта в /usr/ports 
и нет никакой записи для этого в/usr/ports/MOVED. Если используется опция "-v" то о факте игнорирования, будет сообщено. 2. Если используется опция "-L" и новая версия существует, существование файла +IGNOREME будет упомянуто. 3. Если вы сделаете регулярное обновление порта, или если используется опция "-a", то вас спросят, хотите ли вы обновить порт так или иначе. /var/db/pkg/*/PM_UPGRADE_DONE_FLAG Указывает на последующие опции "-a", "-f", or "-r" которые включают опцию "-R" что порт был уже востановлен, таким образом, это может быть безопасно проигнорировано (Indicates to a subsequent -a, -f, or -r run which includes the -R option that a port has already been rebuilt, so it can be safely ignored if it is up to date.) /tmp/port_log-* Если используется опция "-H", а установка или обновление не удалось, результаты сборки и установки будут сохранены в этом файле. Замените значение TMPDIR в вашей среде если это требуется. EXIT STATUS portmaster утилита возвращает 0 в случае успешного завершения и > 0, если произошла ошибка.



Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
 
Автор: hellevil | 21-01-2014, 13:09 | Просмотров: 3 174
 
pix
  Новости по теме    
pix pix pix
  • Сборс пароля Windows Server 2008 и 2008R2.
  • Копирование данных с помощью rsync + ssh
  • Установка точного времени на FreeBSD
  • Multicast во FreeBSD без igmpproxy replacement on netgraph
  • Новая версия системы управления портами pkg
  •  
     
     
    pix
     
    pix
    search
    navi
    poll
    calendar
    «    Апрель 2024    »
    ПнВтСрЧтПтСбВс
    1234567
    891011121314
    15161718192021
    22232425262728
    2930 
    main4
    pix pix pix

    2007 © www.DesktopBSD.ru
    Все права сохранены