The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Тематический каталог: Создание релиза FreeBSD (freebsd install make_world cvsup upgrade)"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Ссылки "<<" и ">>" открывают первые и последние 10 сообщений.
. "Создание релиза FreeBSD (freebsd install make_world cvsup upgrade)" +/
Сообщение от Pleshner (?), 17-Авг-05, 16:33 
Оопс, просмотрел дисскусию...

Итак, способов создания ISO без CVS rep - много, от самого простого (для него даже моей квалификации непрограммиста хватило): позаменял в release/Makefile все cvs на cp. Отключил копирование doc и ports. Для быстроты выполнения make release поубирал строки удаления ранее
созданного дерева релиза. Hу и для создания исошника пришлось установить из портов cdtools. Всё. Никаких нафиг CVS rep. Есть способы ещё более быстрые, но рискованнее и чуть сложнее: не надо ни cvs репозитория, ни пропатчивания release/Makefile с заменой вызовов cvs на cp или mount_null. Это - совершенно штатный способ, только опущена подготовка chroot с копией world и src/ports, ибо это у нас и так есть, только не в chroot. Изрядно быстрее ;-)

Файлик этот создает make release в конце подготовки chroot и в нем же запускает. Но можно и просто запустить, вредных последствий не будет - проверено НЕОДНОКРАТНО ;-)

Вот пример хака:
=== Cut ===
#!/bin/sh
set -ex
_RELTARGET=${1:-doRELEASE}
export DISTRIBUTIONS="bin catpages manpages games proflibs dict info doc
compat1x compat20 compat21 compat22 compat3x compat4x crypto krb4 krb5"
export BUILDNAME=4.7-20021122-STABLE
export VNDEVICE=vn0
export OBJFORMAT=elf
export MODULES_WITH_WORLD=YES
export RELEASETAG="RELENG_4"
export NODOC=yes
export ALLLANG=yes
export AUTO_KEYBOARD_DETECT="0"
export RELNOTES_LANG=en_US.ISO8859-1
export TARGET="i386"
export TARGET_ARCH="i386"
export FIXCRYPTO="bin/ed usr.sbin/ppp usr.sbin/pppd usr.sbin/tcpdump/tcpdump \
usr.sbin/sendmail"
export RELEASEDIR=/R
export PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin
export MANBUILDCAT=YES
if [ ! -f /tmp/.world_done ]; then
    cd /usr/src
    make TARGET_ARCH=i386 TARGET=i386  -DNOCLEAN buildworld && \
    touch /tmp/.world_done
fi
cd /usr/src/release
make obj
make ${_RELTARGET}
echo ">>> make release for i386 finished on `LC_ALL=C TZ=GMT date`"
=== Cut ===

Если вы поймёте как это работает, то сможете не только не заниматься выкачиванием мегов ненужного CVS rep, но и ускорить сборку ISO в 2-3 раза.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Тематический каталог: Создание релиза FreeBSD (freebsd install make_world cvsup upgrade), auto_topic, 09-Апр-05, 14:51  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру