Автор: Сергей
Обновление портов c помощью csup
Создаем директорию для конфигурационных файлов
- mkdir /var/db/cvsup
Создаем файл csup из шаблона
- cp /usr/share/examples/cvsup/ports-supfile /var/db/cvsup
Нужно заменить строку в файле ports-supfile указав одно из следующих зеркал
- cvsup2.ua.FreeBSD.org
cvsup3.ua.FreeBSD.org
cvsup5.ua.FreeBSD.org
cvsup6.ua.FreeBSD.org
cvsup7.ua.FreeBSD.org
- vi /var/db/cvsup/ports-supfile
в результате строка примет вид :
- *default host=cvsup7.ua.FreeBSD.org
Проверяем наличие файла /etc/make.conf и наличае в нем следующих строк
- SUP_UPDATE=yes
SUPFILE= /var/db/cvsup/stable-supfile
PORTSSUPFILE= /var/db/cvsup/ports-supfile
- cd /usr/ports/ make update
- csup /var/db/cvsup/ports-supfile
- cd /usr/ports/ make fetchindex
- portupgrade autoconf
- portupgrade autoconf-wrapper
- rehash
Иногда бывает ситуация когда просто нужно установить пакет в вашем релизе.
Тогда для этого нам нужно ввести в командной строке
- setenv PACKAGESITE http://ftp-archive.freebsd.org/pub/FreeBSD-Archive/ports/i386/packages-8.1-release/misc/
Если у вас стоит оболочка bash то команда будет такая:
- export PACKAGESITE="http://ftp-archive.freebsd.org/pub/FreeBSD-Archive/ports/amd64/packages-8.3-release/mail/"
- pkg_add -r mc-4.7.2_1.tbz
Чтобы посмотреть устаревшие пакеты нужно:
- pkg_version -v | grep "need"
Обновление портов c помощью portsnap
- portsnap fetch
После загрузки снэпшота из него может быть развернуто основное дерево портов. Это необходимо, даже есть каталог /usr/ports/заполнен каким-либо другим способом, например при помощи CVSup, поскольку позволяет установить точку отсчета, от которой portsnap будет определять необходимый объем изменений.
- portsnap extract
После того как первоначальный снэпшот дерева портов будет развернут в каталог /usr/ports/, обновление дерева портов будет состоять из двух шагов: загрузки (fetch) обновлений к упакованному снэпшоту и последующего обновления (update) основного дерева.
- portsnap fetch update