====== Обновление дополнительного ПО в FreeBSD ======
[[http://msnp.ru/59]]
===== Обновление с использованием pkg =====
==== Какие пакеты нужно обновить ====
* [[http://www.vuxml.org/freebsd/vuln.xml.bz2]]
# pkg audit -F
==== Какие пакеты можно обновить ====
# pkg update
$ pkg search ".*" | grep curl
Опираясь на версию дерева портов:
$ pkg version
==== Обновление пакета ====
# pkg upgrade clamav
==== Обновление всех пакетов ====
кроме заблокированных pkg lock
# pkg upgrade
===== Обновление с использованием портов =====
==== Обновление дерева портов ====
[server:~] # portsnap fetch update
[server:~] # less /usr/ports/UPDATING
==== Обновление ПО в ручную ====
[server:~] # pkg unlock asterisk11
[server:~] # cd /usr/ports/net/asterisk11
[server:ports/net/asterisk11] # make
[server:ports/net/asterisk11] # pkg delete asterisk11
[server:ports/net/asterisk11] # make install clean
[server:~] # pkg lock asterisk11
[server:~] # service asterisk11 restart
==== Обновление ПО программой portmaster ====
* [[http://i-rrv.ru/portmaster-%D1%88%D0%BF%D0%B0%D1%80%D0%B3%D0%B0%D0%BB%D0%BA%D0%B0-%D0%BF%D0%BE-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0%D0%BC/|Portmaster — шпаргалка по ключам]]
=== Установка portmaster ===
[server:~] # pkg install portmaster
=== Вывод списка установленных портов по категориям ===
[server:~] # portmaster -l
=== Сравнение версии установленного по с версиями в дереве портов ===
[server:~] # portmaster -L
=== Обновление отдельного пакета ===
* ключ -i позволяет отказаться от обновления до свежайшей версии из портов зависимых пакетов, установленных через pkg install
[server:~] # pkg unlock asterisk11
[server:~] # portmaster -i asterisk11
[server:~] # pkg lock asterisk11
==== Обновление ПО программой portupgrade ====
=== Установка portupgrade ===
[server:~] # pkg install portupgrade
=== Сравнение версии установленного по с версиями в дереве портов ===
[server:~] # portversion -v
=== Обновление отдельного пакета ===
[server:~] # pkg unlock asterisk11
[server:~] # portupgrade asterisk11
[server:~] # pkg lock asterisk11
=== Обновление всех пакетов ===
[server:~] # portupgrade --batch -aRr
=== Обновление индекса portupgrade ===
[server:~] # portsdb -u
=== Исправление базы данных установленных пакетов (в случае необходимости) ===
[server:~] # pkgdb -Ff
===== Дополнительные материалы =====
==== Обновление дерева портов и индекса с использование cvsup ====
[server:~] # csup -h cvsup4.ru.FreeBSD.org /usr/share/examples/cvsup/ports-supfile
Для устаревших систем может использоваться метка версии портов наподобии:
*default release=cvs tag=RELEASE_5_EOL
[server:~] # cd /usr/ports
[server:/usr/ports/] # make index
ИЛИ
[server:/usr/ports/] # make fetchindex