Обновление коллекции портов FreeBSD
Рубрика: Работа с ПО | Дата: 26 марта 2009
Когда я познакомился с основными принципами установки программ в FreeBSD меня очень порадовала коллекция портов – там тысячи программ. Вот только интернет нужен для этого быстрый, а так система просто великолепная.
Система портов обновляется постоянно и это не преувеличение – обновив порты утром, вечером вы запускаете обновление и видите, что уже есть изменения! Конечно вам не нужны все программы, но пусть лучше выбор будет большой, чем маленький.
Коллекцию портов лучше обновлять перед каждой установкой. Вернее если вы обновили порты утром и в течении дня ставите софт не нужно каждый раз перед установкой обновлять порты, достаточно утреннего обновления.
Обновить порты в 7-й линейке FreeBSD очень легко. Я расскажу самый простой вариант.
В составе 7-й линейки FreeBSD уже идет приложение для обновления коллекции портов – CSUP
Для его работы нужен конфигурационный файл, например /usr/src/ports-supfile
Содержимое моего файла для обновления портов
*default host=cvsup4.ru.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=.
*default delete use-rel-suffix
*default compress
ports-all
пример конфигурационного файла с комментариями можно посмотреть в файле
/usr/share/examples/cvsup/ports-supfile
идем в директорию, где лежит наш конфиг
cd /usr/src/
и запускаем обновление
csup -g -L 2 ports-supfile
побегут строчки вроде
os1# csup -g -L 2 ports-supfile
Parsing supfile “ports-supfile”
Connecting to cvsup4.ru.FreeBSD.org
Connected to 212.188.8.36
Server software version: SNAP_16_1h
Negotiating file attribute support
Exchanging collection information
Establishing multiplexed-mode data connection
Running
………….
Add delta 1.13 2009.03.25.07.47.11 jkim
Edit ports/audio/p5-Audio-MPD/Makefile
Add delta 1.3 2009.03.23.02.00.56 chinsan
Edit ports/audio/p5-Audio-MPD/distinfo
Add delta 1.3 2009.03.23.02.00.56 chinsan
Edit ports/audio/p5-Audio-WMA/Makefile
Add delta 1.6 2009.03.22.21.01.02 pav
Add delta 1.7 2009.03.23.01.01.11 linimon
……
Finished successfully
При первой синхронизации времени уходит достаточно много, затем при регулярной синхронизации все проходит намного быстрее.
Это самый простой способ обновления коллекции портов, про то, как настроить исключения из коллекции портов, как найти самый быстрый сервер обновлений – в других заметках.
21 мая 2009 в 23:34
А самый простой способ для обновления портов в 7ке разве не portsnap?
22 мая 2009 в 2:45
Может и так, по крайней мере он (portsnap) вроде как официально рекомендуемый, для обновления дерева портов. Но мне удобнее csup, так как он еще и исходники системы тащит – если обновляться на новые версии, то это необходимо для пересборки мира и ядра. Так зачем мне два инструмента? В любом случае спасибо за напоминание, напиши и про работу с portsnap.
22 мая 2009 в 13:04
Так я и рассуждаю исключительно в контексте дерева портов
Если Вы используете csup как универсальное средство, то стоит превратить эту статью как раз таки в описание обновления как портов, так и исходных текстов. Напишите как меняется опции конф. файла: тэги tag=, опции ports-all, src-all. пмхо, тогда статья приобретет большую ценность в глазах публики.
22 мая 2009 в 13:11
Можно сделать статью еще более универсальной, описать в ней все существующие методы обновления портов и исходных текстов с приведением плюсов и минусов того или иного. Насколько я помню, это: csup, portsnap, make.
3 января 2010 в 18:18
…”ports-all” – а зачем Вам к примеру порты Китая, Венгрии и презренного Израиля?
В экзампле конфига можно просто выбрать, какие именно порты обновлять