Многие новые пользователи FreeBSD, после установки системы, сталкиваются с тем, что жизненно необходимая коллекция портов отсутствует в системе. В этой статье представлены два способа получения и разворачивания портов после установки системы.

1. Portsnap
Portsnap – утилита для работы с коллекцией портов. Начиная с FreeBSD 6.0 она по умолчанию установлена в систему.
Порядок действий:
- Логинимся в систему пользователем root
- Создаем директорию /usr/ports
# mkdir /usr/ports - Скачиваем сжатый архив с коллекцией портов в /var/db/portsnap. После завершения этой операции интернет больше не потребуется.
# portsnap fetch - Распаковываем коллекцию портов из архива в /usr/ports
# portsnap extract
2. Sysinstall
Этот метод подразумевает использование утилиты sysinstall для установки коллекции портов с установочного диска. Учтите что будет установлена не самая свежая версия портов, а доступная на момент релиза операционной системы. Если вы имеете доступ в интернет, лучше использовать метод описанный выше.
- От имени пользователя root, запустите утилиту sysinstall:
# sysinstall - Выберите пункт меню Configure, нажмите Enter
- Выберите пункт меню Distributions, нажмите Enter
- Выберите пункт меню ports, нажмите пробел
- Выберите пункт меню Exit, нажмите Enter
- Выберите источник с которого будет устанавливаться коллекция портов (CDROM, FTP, и т.д.)
- Выберите пункт меню Exit, нажмите Enter
- Нажмите X для выхода из sysinstall.
Все, теперь коллекция портов установлена. И еще пара советов:
- поиск интересующего порта можно произвести следующий образом:
#cd /usr/ports; make search name='bash' - после того как путь к интересующему порту найдем, установить софт можно такой командой:
#cd /usr/ports/shells/bash; make install

мля, не думал что все-равно на каждый порт траффик тратить…
Да, пожалуй прокомментирую сейчас.
Статья качественная. Сам использую только первый способ. Здесь всё правильно и чётко!
К администратору блога: По-поводу двух предыдущих комментариев от «Shadow» и «васв» …
По-моему, – это обычный спам. Уберите это. Не приятно залезть на такую качественную статью,
с такими «комментариями». А так, огромное Благодарство!
«portsnap fetch extract» можно писать в одну строку
Не нужно создавать каталог mkdir /usr/ports для установки дерева портов через portsnap. Порты ставятся так (в одну строку): portsnap fetch extract
При этом portsnap не дает откатиться к какой то версии. К примеру, после обновления дерева портов, PHP изменила версию с 5.2.x на 5.3. А нам нужно собрать какой то модуль php, при этом переходить на PHP 5.3 в планах нет. Откатим порт на нужную версию:
vi /usr/local/etc/cvsup.ports
*default host=cvsup8.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=.
*default delete use-rel-suffix
*default date=2011.03.21.00.00.00
*default compress
Как несложно понять, 2011.03.21.00.00.00 – дата и время
Далее:
csup -G -L 3 /usr/local/etc/cvsup.ports
Для поиска пакета в коллекции портов, удобно использовать quicksearch вместо search, при этом переходить в /usr/ports не нужно:
make -C /usr/ports quicksearch name=mc