Обновление исходного кода FreeBSD


Проверим, имеются ли в системе исходный код её самой.

# cd /usr/src/
# ls
COPYRIGHT               contrib                 rescue
LOCKS                   crypto                  sbin
MAINTAINERS             etc                     secure
Makefile                games                   share
Makefile.inc1           gnu                     sys
ObsoleteFiles.inc       include                 tools
README                  kerberos5               usr.bin
UPDATING                lib                     usr.sbin
bin                     libexec
cddl                    release

Если же их нет - можно легко их установить.

Первый вариант установки исходных текстов системы


С помощью sysinstall.

# sysinstall -> Configure -> Distributions -> src -> All

Установщику нужно будет указать откуда устанавливать исходники.

Второй вариант установки исходных текстов системы


Устанавливаем консольный CVSup. # cd /usr/ports/net/cvsup-without-gui/ # make install clean

Далее устанавливаем утилиту для поиска наиболее быстрых cvsup-серверов.

# cd /usr/ports/sysutils/fastest_cvsup/
# make install clean
# rehash
# fastest_cvsup -c ru
>>  Speed Daemons:
    - 1st: cvsup4.ru.freebsd.org
    - 2nd: cvsup5.ru.freebsd.org
    - 3rd: cvsup2.ru.freebsd.org

Теперь редактируем конфиг.

# cp /usr/share/examples/cvsup/standard-supfile /usr/local/etc/src-update.sup
# vi /usr/local/etc/src-update.sup

Оставляем в конфиге только необходимые строки.

*default host=cvsup4.ru.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_8_1
*default delete use-rel-suffix
*default compress
src-all

После этого можно обновить сорцы.

# cvsup -g -L 2 /usr/local/etc/src-update.sup

Параметр -g указывает не использовать gui, на серверах он и не нужен. Параметр -L 2 указывает уровень протоколирования, а именно сообщение о каждом выполняемом действии. Протоколирование может быть от 0 до 2. 0 - не выводить ничего, кроме ошибок.

Третий вариант установки исходных текстов системы


Исходные тексты можно установить через стандартную утилиту csup, входящую в состав FreeBSD.