Обновление портов во FreeBSD с помощью Portsnap по заданному расписанию

Обновление портов во FreeBSD с помощью Portsnap     

В связи с отказом от CVS ранее написанные скрипты «Скрипт обновления ПО FreeBSD» «FreeBSD уведомление на почту, о необходимости обновить ПО» и заметки «FreeBSD обновить порты» — становятся мало актуальными. Для обновления портов во FreeBSD есть утилита Portsnap. Согласно основной документации «Obtaining the Ports Collection» выполним следующие шаги из раздела «5.6.2 Migrating from CVSup/csup to portsnap«:

1. Отключите все автоматизированные порты обновляет вы можете использовать, например, хрон (8) Работа называя CVSup или csup.
2. Переместить существующий дерево портов во временную папку:

# mv /usr/ports /usr/ports.old

3. Используйте fetch для нового дерева портов с Portsnap и распакуйте его в /usr /ports:

# portsnap fetch extract

4. Переместите дистрибутивные файлы и сохраненные пакеты для нового дерева портов:

# mv /usr/ports.old/distfiles /usr/ports
# mv /usr/ports.old/packages /usr/ports

5. Удалите старое дерево портов:

# rm -rf /usr/ports.old

6. Если CVSup был использован ранее, теперь он может быть удален:

# pkg_delete -r -v cvsup-without-gui-\*

7. Пользователи которые используют pkgng могут использовать следующую команду:

# pkg delete cvsup-without-gui

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

# crontab -e
0 20 * * * portsnap -I cron update && pkg_version -vIL=

Чтобы все уведомления падали на почту, вначале crontab нужно указать примерно следующее (использую оболочку bash):

SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
MAILTO= nvs@8.to

Команда будет выполнятся раз в сутки в 20:00, результат придет на почту в виде списка портов, требующих обновления:
apache22-2.2.23_4 < needs updating (index has 2.2.24)
clamav-0.97.6 < needs updating (index has 0.97.7)
cmake-2.8.9 < needs updating (index has 2.8.10.2)
cmake-modules-2.8.9 < needs updating (index has 2.8.10.2)
ejabberd-2.1.9 < needs updating (index has 2.1.11)
erlang-lite-r14b04_2,1 < needs updating (index has 15.b.03.1,3)

Обновление портов во FreeBSD с помощью Portsnap завершено!

Сайт партнер:  http://todid.ru/teach/681-kak-ocenit-ideyu.html

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.