Документация по ОС FreeBSD Воскресенье, 19.05.2024, 15:18
Приветствую Вас Гость | RSS
Меню сайта

Категории каталога
Мои статьи [0]
Установка и настройка [281]
X Window [25]
Man pages [30]
Ports & Packages [26]
cvs [18]
Multimedia [20]
Нововсти в мире Unix [0]
RFC [4]
RFC (Request for Comments, Запрос на комментарии) - серия документов, публикуемая сообществом исследователей и разработчиков, руководствующихся практическими интересами, в которой описывается набор протоколов и обобщается опыт функционирования Интернет.
Безопасность [52]
Работа с железом [58]
Книги по FreeBSD [17]
Сеть [505]
Программирование [40]
FireWall [58]
Темы экзамена BSDA [14]
Официальные темы экзамена BSDA, включая подробноые описания и советы по обучению.

Главная » Статьи » Ports & Packages

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

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

Порт - это один из очень удобных способов установки программного обеспечения для FreeBSD. Чтобы установить нужную программу достаточно войти в директорию с нужным портом и дать всего одну команду make install.

Что же происходит при выполнении make install?

1. Если в каталоге /usr/ports/distfiles не обнаружен устанавливаемый пакет, то выполняется команда make fetch. Загружается с ftp сервера исходный tar-архив и копируется в каталог /usr/ports/distfiles. Проверяются зависимость от других пакетов, нужные скачиваются.

2. Выполняется команда make checksum. Т.е. проверяется подлинность архива tar.

3. Далее архив расспаковывается в рабочий каталог work (make extract).

4. В исходный код вносятся исправления из каталога files (make patch).

5. Выполняется сценарий конфигурирования make configure.

6. Компилируется исходный код (make build)

7. Копирование файлов в соответствующие каталоги (make install).

После инсталляции порта, запись о нем создается в каталоге /var/db/pkg/.

Ну чтож за дело! Для обновления локального дерева портов нам понадобится пакет cvsup. Установим его.

# cd /usr/ports/net/cvsup/
# make install

Создадим конфигурацию при помощи псевдо-порта cvsupit

# cd /usr/ports/net/cvsupit/
# make
# make install

На экране должно появится меню псевдо-порта cvsupit. Выберите пункт меню The 5.0-current branch (.=HEAD). В остальных меню примите все по умолчанию (не устанавливайте исходники /src) и откажитесь от обновления CVSup.

В каталоге /etc должен появится файл cvsupfile. Откройте его и закоментируйте все строки начинающиеся с src. Должно получится примерно следующее:

*default host=cvsup.ru.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

А теперь самое главное - обновляем порты:

# /usr/local/bin/cvsup -g -L 2 /etc/cvsupfile

Я обновляю дерево портов каждую неделю через cron. Я создал файлик cvsup_up.sh в /usr/local/sbin/ и поместил в него команду обновления портов (см. выше). В /etc/crontab добавил следующую строчку

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

Чтобы посмотреть какие программы мне нужно обновить, я использую команду

# pkg_version -v > /tmp/newport

Для обновления какой-либо программы заходим в нужный порт и последовательно выполняем следующие команды:

# make clean
# make
# pkg_delete -f имя_пакета
# make install clean

имя_пакета - это название установленного ранее пакета (например cvsup-6.1_3)


Евгений А. Беденко (bedenko@cbor.ru)
Категория: Ports & Packages | Добавил: oleg (31.10.2007)
Просмотров: 1485 | Комментарии: 1 | Рейтинг: 0.0/0 |
Всего комментариев: 1
1 iZEN  
0
Чтобы посмотреть какие программы мне нужно обновить, я использую команду:
% pkg_version -v | grep "<"

Для обновления какой-либо программы:
% portupgrade pkgname-oldversion


Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Beastie

Друзья сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
links

Copyright MyCorp © 2024