Portupgrade — легкое обновление портов

Опубликовано:

FreeBSD 9

1. Обновления системы и дерева портов

обновляем систему, используя утилиту для бинарного обновления системы — freebsd-update:

freebsd-update fetch && freebsd-update install

скачиваем и обновляем коллекцию портов
portsnap fetch Если вы запускаете Portsnap впервые, извлекаем снэпшот в /usr/ports: portsnap extract По завершении первого запуска Portsnap, как было показано выше, /usr/ports может быть обновлен при помощи:

# portsnap fetch && portsnap update

ОБНОВЛЕНИЕ УСТАНОВЛЕННЫХ ПАКЕТОВ ПРИ ПОМОЩИ PKGNG

Не секрет, что желательно иметь в системе последние версии программного обеспечения. Но когда начинаешь задумываться о том, что иногда нужно чтобы обновить порт пересобрать кучу других приложений и библиотек, зависящих от обновляемого порта становится тоскливо, особенно если это нужно сделать на множестве компьютеров.
Но есть и готовое решение, помогающиее решить эту проблему. Оно носит гордое название portupgrade.

#whereis portupgrade
portupgrade: /usr/ports/ports-mgmt/portupgrade
#cd /usr/ports/ports-mgmt/portupgrade
#make install clean

При установке вылезет окошко с запросом выбора базы. Лучше выбрать BDB4.
Далее идет установка, тянет она кстати немало, порядка 10 Mb.
Но вот установка завершилась. Смотрим что утилита умеет, а умеет она многое.
Вот основное:

— a все установленные порты

— F Получить все исходные тексты устанавливаемого пакета, но не устанавливать/обновить.
— r Обновить все порты, от которых зависит устанавливаемый порт.
— R Обновить все порты, которые зависят от устанавливаемого порта.
— v Выводить всю информацию.
— c Выполнить «make config-confitional» перед обновлением каждого порта.
— f Принудительно обновляет порт, если он был переустановлен на другую версию или выполнен downgrade порта.

Лично я обновляю через команду

#portupgrade -rcvf имя_порта 

Ну, а узнать список обновляемых портов можно командой

#pkg_version -v | grep "need"
png-1.4.1_1                    < need updating (port has 1.4.3)

Далее просто

portupgrade -rcvf png-1.4.1_1 

И еще, если утилита просит выполнить pkgdb -F — выполните обязательно, она исправляет нарушенные зависимости.

Однако стоит иметь ввиду, что portupgrade — это целый набор утилит:

  • portupgrade – одноименная утилита, средство автоматического обновления установленных программ
  • portinstall – утилита установки новых программ, присутствующих в системе портов FreeBSD
  • portversion – утилита показывающая установленный софт и наличие обновлений для него.
  • portsclean – утилита очистки мусора остающигося после сборки портов
  • portsdb – утилита создающая базу программ, присутствующих в портах FreeBSD
  • ports_glob – предназначена для поиска по базе портов
  • portcvsweb – браузер для CVSWeb
  • pkgdu – утилита, предназначенная для подсчета дискового пространства занятого уcтановленными программами
  • pkgdb – еще одна утилита для управления базой портов
  • pkg_which – предназначен для поиска по базе портов
  • pkg_sort – утилита сортирует порты в соответствии c зависимостями
  • pkg_fetch – утилита для скачки собранных(бинарных) пакетов
  • pkg_deinstall – средство для массового удаления установленного софта

Надеюсь, теперь вы не будете испытывать проблем с обновлением приложений.

 

Понравилась статья, расскажи о ней друзьям, нажми кнопку!