Обновление локального дерева портов FreeBSD

17 Jul 2009 | Автор: anchous |

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

Порт – это наиболее удобный способ установки приложений в среде FreeBSD, причем приложение устанавливается со всеми выпущенными на данный момент заплатками и патчами. Процесс установки начинается командой make в корневой директории порта и сводится к поиску подходящих исходниках на зеркалах, скачиванию, разархивированию, компиляции и, после задания команды make install, установки с преднастроенными параметрами, и регистрацией в каталоге /var/db/pkg/(база установленных пакетов) .

Собственно для обновления дерева портов, необходимо поставить основной порт, отвечающий за данную процедуру- cvsup.

# cd /usr/ports/net/cvsup-without-gui
# make install

После этого нам необходимо настроить конфигурационный файл cvsupfile, находящийся в каталоге /etc
######################################
*default host=cvsup.FreeBSD.org
*default base=/usr
*default prefix=/usr
*default release=cvs
*default tag=.
*default delete use-rel-suffix

src-all
*default tag=.
ports-all
doc-all
######################################
Параметры конфига таковы:
*default host=cvsup.FreeBSD.org – адрес сервера откуда мы тащим обновления.
*default tag=RELENG_6_3 – до какой версии обновляемся
RELENG_4 – обновление до FreeBSD-4-Stable
RELENG_4_10 – обновление до FreeBSD-4-10
RELENG_5 – обновление до FreeBSD-5-Stable
RELENG_5_3 – обновление до FreeBSD-5-3
RELENG_6_3 – обновление до FreeBSD-6-3
. – обновление до Current версии (по преданиям на рабочих серверах этого лучше не делать) Если обновляются только порты, то нужно ставить точку, если же вы нацелились на make world, то необходимо указывать версию системы.
src-all – обновить исходники системы
*default tag=. – указатель до какой версии обновить порты, если указать что то вместо точки, то порты благополучно потрутся, и придется поновой обновляться чтобы получить их назад.
ports-all – указываем что хотим обновить все порты

После того как конфиг сохранили, следует запустить обновление ситемы:
# /usr/local/bin/cvsup -g -L 2 /etc/cvsupfile

после этого можно спокойно идти пить чай-кофе-пиво (нужное подчеркнуть), т.к. процесс будет идти минут 15-20 как минимум, в зависимости от канала.

Теперь чтобы поддерживать актуальную коллекцию портов (звучит очень комильфо), необходимо засунуть задачу в cron, для это в каталоге /usr/local/sbin/ создаем файло например ports_update.sh, прописываем в него указанную выше строку, и пишем в cron

35 23 * * 6            root            /usr/local/sbin/cvsup_up.sh

хотя можно засунуть файл и в /etc/periodic/weekly/
Естетсвенно в обоих случаях файлу следует дать права на исполнение.

Для работы с установленными пакетами используются команды семейства pkg_ :
просмотр версий пакетов, устаревших и актуальных
# pkg_version -v

Если необходимо обновить какой либо порт, то идем в директорию его порта, и говорим следующее:

# make clean
# make
# pkg_delete -f имя_пакета  (имя пакеты выводится при листинге pkg_version  )
# make install
# make clean

***Примечание:
При обновлении портов, можно опустить неиспользуемые порты с языковыми поддержками, путем добавления в файл /usr/sup/refuse следующих строк:

ports/arabic
ports/chinese
ports/french
ports/german
ports/hebrew
ports/hungarian
ports/japanese
ports/korean
ports/portuguese
ports/polish
ports/vietnamese

VN:F [1.9.21_1169]
Rating: 10.0/10 (2 votes cast)
VN:F [1.9.21_1169]
Rating: 0 (from 0 votes)
Обновление локального дерева портов FreeBSD, 10.0 out of 10 based on 2 ratings

Теги: ,

  1. 2 Trackback(s)

  2. 30 Dec 2009: Установка сервера БД MySQL | Одминский блог
  3. 02 Aug 2011: Настройка фаервола на базе FreeBSD | Одминский блог

Ваш отзыв