• Быстрый переход
  • Рубрики
  • Свежие записи
  • Метки
  • Архивы
  • Реклама 1
  • Реклама 2
  • Рейтинг@Mail.ru

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


    Посредством CVSup можно обновлять не только порты. Ее используют также для обновления исходных кодов операционной системы в каталоге /usr/src и документации в каталоге /usr/share/doc.

    # cd /usr/ports/
    # make search name=”cvsup”

    Port: cvsup-16.1h_3
    Path: /usr/ports/net/cvsup
    Info: General network file distribution system optimized for CVS (GUI version)
    Maint: jdp@FreeBSD.org
    B-deps: compositeproto-0.4
    ...
    WWW: http://www.cvsup.org/

    Port: cvsup-mirror-1.3_6
    Path: /usr/ports/net/cvsup-mirror
    Info: A kit for easily setting up a FreeBSD mirror site using CVSup
    Maint: jdp@FreeBSD.org
    B-deps:
    R-deps: cvsup-without-gui-16.1h_3
    WWW: http://www.cvsup.org/

    Port: cvsup-without-gui-16.1h_3
    Path: /usr/ports/net/cvsup-without-gui
    Info: General network file distribution system optimized for CVS (non-GUI version)
    Maint: jdp@FreeBSD.org
    B-deps: ezm3-1.2_1
    R-deps:
    WWW: http://www.cvsup.org/


    Port: cvsupchk-19990209_2
    Path: /usr/ports/net/cvsupchk
    Info: Check a CVSup directory hierarchy against the checkouts file
    Maint: matthias.andree@gmx.de
    B-deps: python25-2.5.1_1
    R-deps: python25-2.5.1_1
    WWW:


    Port: fastest_cvsup-0.2.9_5
    Path: /usr/ports/sysutils/fastest_cvsup
    Info: Finds fastest CVSup server
    Maint: nivo+kw+ports.bfa274@is-root.com
    B-deps: perl-5.8.8_1
    R-deps: perl-5.8.8_1
    WWW: http://fastest-cvsup.sourceforge.net/

    Port: net/cvsupit
    Moved:
    Date: 2003-08-06
    Reason: port was marked broken for 3 months with no fix submitted

    GUI version нам не подходит. Ну, если только Вы настраиваете себе десктоп систему, тогда можно и GUI. Для сервера нам понадобится cvsup-without-gui

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

    После того, как cvsup установлен, необходимо создать так называемые sup файлы, в которых будут описаны инструкции: что обновлять, откуда и какую версию использовать. Для примера можно использовать файлы в каталоге /usr/share/examples/cvsup

    # ls -la /usr/share/examples/cvsup
    total 40
    drwxr-xr-x 2 root wheel 512 17 янв 2007 .
    drwxr-xr-x 40 root wheel 1024 12 авг 2006 ..
    -r--r--r-- 1 root wheel 1180 17 янв 2007 README
    -r--r--r-- 1 root wheel 5274 17 янв 2007 cvs-supfile
    -r--r--r-- 1 root wheel 2773 17 янв 2007 doc-supfile
    -r--r--r-- 1 root wheel 2427 17 янв 2007 gnats-supfile
    -r--r--r-- 1 root wheel 3903 17 янв 2007 ports-supfile
    -r--r--r-- 1 root wheel 349 17 янв 2007 refuse
    -r--r--r-- 1 root wheel 1918 17 янв 2007 refuse.README
    -r--r--r-- 1 root wheel 4013 17 янв 2007 stable-supfile
    -r--r--r-- 1 root wheel 3174 17 янв 2007 standard-supfile
    -r--r--r-- 1 root wheel 2498 17 янв 2007 www-supfile

    Сделаем по примерам sup файлы для получения обновлений портов, документации и исходных кодов системы, а после поместим в каталог, например, /cvsup
    Supfile для обновления портов:

    # cat /cvsup/ports-all

    # Ports collection supfile
    *default host=cvsup3.ua.FreeBSD.org
    *default base=/var/db
    *default prefix=/usr
    *default release=cvs tag=.
    *default delete use-rel-suffix
    *default compress ports-all

    Supfile для обновления документации:

    # cat /cvsup/doc-all

    # Doc supfile
    *default host=cvsup2.ua.FreeBSD.org
    *default base=/var/db
    *default prefix=/usr
    *default release=cvs tag=.
    *default delete use-rel-suffix
    *default compress doc-all

    Supfile для обновления исходных кодов ядра:

    # cat /cvsup/src-sys

    # Kernel source supfile
    *default host=cvsup3.ua.FreeBSD.org
    *default base=/var/db
    *default prefix=/usr
    *default release=cvs tag=RELENG_6
    *default delete use-rel-suffix
    *default compress src-sys

    Supfile для обновления исходных кодов всей системы:

    # cat /cvsup/src-all

    # System source supfile
    *default host=cvsup3.ua.FreeBSD.org
    *default base=/var/db
    *default prefix=/usr
    *default release=cvs tag=RELENG_7_0_0_RELEASE
    *default delete use-rel-suffix
    *default compress src-all

    Запуск команды выглядит следущим образом:

    # cvsup -g -L 2 /путь/к/sup_файлу

    В принципе, обновлять регулярно мне нужно только коллекцию портов. Обновлять исходные коды ядра можно перед его очередной пересборкой, если появилась такая необходимость. Ну, а исходные коды всей системы я последний раз обновлял тогда когда переходил с версии FreeBSD 6.1 на FreeBSD 6.2.

    Поскольку обновлять коллекцию портов желательно регулярно, в /etc/crontab я добавил строчку:

    00 03 * * * root cvsup -g -L 2 /cvsup/ports-all >/dev/null 2>&1

    Таким образом, по cron’у раз в сутки в 3 часа утра обновляются порты. Ранее у меня еще была строка:

    30 03 * * 6 root cvsup -g -L 2 /cvsup/doc-all >/dev/null 2>&1

    для того, чтобы раз в неделю проверять обновления документации, но понаблюдав пару раз за “обновлениями” пришел к выводу, что в этом нет особой необходимости.

    Автор: admin, 28 мая 2010
    Рубрики: OS FreeBSD, Новости
    Метки: , ,
    Есть 1 комментарий. к сообщению: “Обновление портов во FreeBSD с помощью CVSup”
    1. FSA:

      В новых версиях FreeBSD имеется утилита — аналог cvsup без GUI — csup!
      Т.е. обновлять порты и исходники можно через:
      csup -L 2 ports-supfile
      csup -L 2 standard-supfile

    Написать комментарий

    Последние статьи