FreeBSD Tips
- Просмотров: 3065
- Комментариев: 1
- Подписаться на обновления
- Печатать
- Поделиться
В данная заметка является памяткой по обновлению дерева портов, а также отдельных портов.
Обновление портов
Для обновление дерева портов используется portsnap
При первом запуске нужно скачать и извлечь полную базу портов:portsnap fetch extract
При последующих - скачивать и обновлять дерево портов:portsnap fetch update
Для обновление непосредственно портов используется portupgrade
Для рекурсивного обновления всех портов:portupgrade -arR
Для рекурсивного обновления отдельного пакета:portupgrade -rR
{pkgname}
Также иногда полезно исключить некоторые пакеты из обновления, делается это с помощью ключа -x (для исключения нескольких пакетов опцию можно использовать многократно)portupgrade -arR -x php5
Обновит все кроме php5
Для того, чтоб предварительно сконфигурировать все пакеты, а потом уже запустить сборку (полезно, когда надо запустить в фоне сборку и не ждать сюрпризов в виде несконфигурированного пакета) нужно использовать ключ -cportupgrade -crR {pkgname}
Также можно установить новый порт со всеми зависимостями:portupgrade -N {pkgname}
Также бывает ситуация, когда нужно сделать откат до более ранней версии порта, за это отвечает пакет portdowngrade о синтаксисе постараюсь написать чуть позже...
Для просмотра версий установленных портов, а рядом доступных (из репозитория):pkg_version -v
Для того, чтоб вывести только требующие обновления порты:pkg_version -v | grep needs
Тогоже эфекта только быстрее можно добится следующей коммандой:portversion -v | grep needs
Удалить ненужные рабочие файлы, а также очистить папку distfiles (удалить все файлы, на которые нет ссылки в дереве портов и нет установленного пакета):portsclean -C -DD