Переход с cvsup на subversion для обновления FreeBSD
subversion
svn
freebsd
vulnerabilities
cvsup
Переход с cvsup на subversion для обновления FreeBSD
С 28 февраля 2013 года поддержка cvs будет прекращена. Использовать subversion для обновления FreeBSD удобнее и практичнее.
Для начала надо установить subversion клиента.
Если svn уже был установлен, но Вы не знаете, какой механизм обновления используется в данный момент на сервере, то можно проверить так:
# cd /usr/ports
# svn update
Если ответ бедет примерно таким:
svn: E155036: Please see the ‘svn upgrade’ command
svn: E155036: The working copy at ‘/usr/ports’
is too old format 29 to work with client version ‘1.8.3 r1516576’ expects format 31. You need to upgrade the working copy first.
значит используется старая схема в помощью csvup.
Затем рекомендую переименовать папки /usr/src и /usr/ports
# mv /usr/src /usr/src.old
# mv /usr/ports /usr/ports.old
Клонирование дерева портов осуществляем командой:
Процесс довольно длительный (около 20 минут на выделенном сервере средней производительности) - можно отвлечься на другие задачи.
Для скачивания исходных кодов мира и ядра нужно выполнить:
# svn checkout https://svn.freebsd.org/doc/head /usr/doc
Цифры после releng задают вашу рабочую версию ОС. В данном примере мы скачиваем ветку релиза 9.1 (releng/9.1/).Все существующие ветки можно просмотреть через веб-интерфейс для svn по адресу: http://svnweb.freebsd.org.Если сеть настроена через прокси-сервер или svn протокол закрыт фаерволлом, то можно заменить протокол svn на http или https (см. последний пример).
Дополнительно можно установить pkg_trackinst
/usr/ports/ports-mgmt/pkg_trackinst
Если возникла необходимость срочно обновиться по-старому, то поступаем следующим образом:
# cd /usr/src
# make update SVN_UPDATE=yes
svn co svn://svn.freebsd.org/ports/head /usr/ports
svn co svn://svn.freebsd.org/base/releng/9.1/ /usr/src