FreeBSD 7 обновление коллекции портов
Как известно в FreeBSD (в данный момент использую версию 7) удобно ставить пакеты через коллекцию портов (ports), ну также нужно не забывать поддерживать эту коллекцию в актуальном состоянии, для это есть несколько способов, я опишу способ привычный для меня.
Обновление с помощью инструмента CVSup
Для начала нам нужно установить пакет cvsup:
# cd /usr/ports/net/cvsup/
# make install
После этого нужно создать конфикурационный файл cvsup, для этого создадим файл ports-supfile в /usr/local/etc/ports-supfile слудующего содержания:
*default host=cvsup.ru.FreeBSD.org
*default base=/usr
*default prefix=/usr
*default release=cvs
*default tag=.
*default delete use-rel-suffix
ports-all
Собственно host можно прописать другой, какой удобнее для вас к примеру: cvsup12.FreeBSD.org
Ну вот теперь мы можем запустить процесс обновления CVSup:
# /usr/local/bin/cvsup -L 2 /usr/local/etc/ports-supfile
CVSup подключиться к выбранному серверу и начнет синхронизацию. Опция -L 2 определяет самую высокую степень подробности.
После того как процесс завершится коллекция портов будет обновлена.
Теперь можно выполнить: pkg_version -v , чтобы посмотреть, какие порты необходимо обновить.
Также можно данный процесс автоматизировать, для этого нужно сделать слудующее:
Добавить последнюю команду в periodic, если нет то нужно создать каталог под именем 'periodic' в /usr/local/etc, а в нем создать каталог 'daily', внутри каталога файл 100.cvsup-ports и поместить в него следующие строки:
#!/bin/sh
/usr/local/bin/cvsup -g -L 2 /usr/local/etc/cvsupfile
Размещено в разделе FreeBSD
08.09.2008
Комментарии:
admin
2009-03-29 13:29:37
Спасибо. Учту на будущее.
anibius
2009-01-26 23:02:47
Доброго времени суток! По поводу обновления портов для семерки можно воспользоваться замечательной программой portmaster!Она обновляет порты,которые уже стоят не нарушая зависимости. cd /usr/ports/ports-mgmt/portmaster make install clean rehash -для того чтобы программа стала доступна для нашей оболочки сразу после установки,иначе logout пришлось бы сделать ищем что необходимо обновить portmaster -L | grep -B1 "New version" выводятся имена пакетов пример portmaster -b expat-1.95.8 обновляем expat -b -сохраняем копию установленного пакета в /root,чтобы можно было откатиться,если новый софт ведет себя плохо если новая версия нам не нравится,то # pkg_delete -f expat-2.0.0 # pkg_add /root/expat-1.95.8.tbz откатились к старой Если еще прикрутить portaudit,то вообще счастье будет ) Она проверяет установленные пакеты на уязвимости. Еще у меня вопросик по /usr/local/etc/ports-supfile ports-all а строчки src-all нет. Вы не хотите собирать ядро и поэтому не обновляете коды?