PDA

Показать полную графическую версию : репозиторий хачу создать


ac
19-11-2004, 16:25
качать исошки 5.3 не имею возможности по причине ограничения трафика. решил пойти по следующему пути:

1.создать репозиторий на своем серваке
обновить его. у нас в сетке уже есть репозитарий. тока там машина сильно загружена и там делать пункт 2 не получиться. это будет внутренний трафик, по 0.00 руб за мегабайт.

2.создать образы из исходников
по типу :
cd /usr/src/
make release

однако запнулся на первом же пункту ))
народ кто поддерживает свои репозиторий памагите.

имеется
$ cat cvs-supfile
*default host=cvsup.... (сервер в локальной сети)
*default base=/home/ncvs
*default prefix=/home/ncvs
*default release=cvs
*default delete use-rel-suffix

# If your network link is a T1 or faster, comment out the following line.
###*default compress
(патаму что в локальной сети)

## The CVSup server's own configuration files. Used by CVSup mirror sites.
#
distrib release=self

## The main FreeBSD CVS repository, including the cryptography code.
#
cvs-all
### -------- end cvs-supfile

$ cvsup -g -L0 cvs-supfile

однако
# cvsup -g -L0 /usr/local/etc/cvsup/cvs-supfile
Nonexistent base directory "/home/ncvs" for collection "distrib"

и действительно смотрю нету /home/ncvs.
а там еще и владелец - ncvs:ncvs должен быть это я подсмотрел на сервере с которого я делаю обновление.
а какой порт создает такого пользователя непонятно

cd /usr/ports
make search name=ncvs

не дал положительных результатов.

поиск в гугле "/home/nvcs" тоже мало чего дал. однако эсть догадка что это должен быть cvs
вот а какой из cvs мне нужен: cvsd или еще чего , плиз хелп.

Solo the human
19-11-2004, 18:48
может это поможет?
http://locgate.smtn.stavropol.ru/DOCs/System_Progs/FreeBSD/ru/articles/hubs/mirror-howto.html

misher
19-11-2004, 19:40
АС - сдедует попробовать команду (из под рута):
mkdir /home/ncvs

А после из под рута запускать cvsup...

Belansky
20-11-2004, 21:42
ac
И что за вопиющая безграмотность?

ac
23-11-2004, 13:43
спасибо братцы....
буду стараться над правописанием ))
mkdir /home/ncvs
помогло. однако я нашел порт cvsup-mirror
видимо он должен штатно создавать эту директорию.

репозиторий я создал. перешел ко второму пункту "Создание ISO".
возникло подозрение что нельзя сделать образы дисков для RELENG_5 используя make release в системе RELENG_4_10

в подтверждение привожу выдержки из письма моего товарища:
--
> Я сегодня еще раз попробовал и пришел к выводу: на машине с
> с FreeBSD-4 не получится сделать релиз FreeBSD-5.

> Причина: при сборке используются бинарные программы от FreeBSD-5
> (/bin/sh, cc, ...), а у FreeBSD-5 расширенный набор системных
> вызовов...

> ===============================================================
> [...]
> env -i /usr/sbin/chroot `dirname /usr/tmp/FreeBSD-5-3-RELEASE-i386/chroot/mk` /`
> basename /usr/tmp/FreeBSD-5-3-RELEASE-i386/chroot/mk`
> Bad system call - core dumped
> *** Error code 140

> Stop in /usr/src/release.
> ===============================================================
--

сам к сожалению испытываю аппаратные проблемы при сборке ((( все мои попытки завершаются перезагрузкой. стабильный висяк с цветными значками в текстовом режиме, однако есть сдвиг и в этом плане когда я работаю с консоли то висяк наступает достаточно быстро (3-5 мин большой нагрузки), а когда через ssh может работать и час и два. Видимо видеокарта глюкавит((
она у меня стареньбкая s3 trio 64V+ 1Mb.

так что вопрос остался: можно ли сделать образы дисков для RELENG_5 используя make release в системе RELENG_4_10 ?

заранее спасибо.

misher
23-11-2004, 16:03
НЕТ нельзя

Релиз можно делать только на той системе, котороя способна откомпилировать make world новой системы и запустить его в chroot'е т.е для этой цели непойдет даже 5.2.1 (неможет сделать make world для 5.3) Зато 5.3 делает релиз на ура.

ac
29-11-2004, 11:55
продолжение темы: убедился я что нельзя make relase RELENG_5_3 на машине RELENG_4_10, после того как решил аппаратаные проблемы. Замена видеокарты конкретно помогла.
значит оставился я тут систему в покое. однако не оставил мысль о том что хачу исо 5.3.
временно заменил винт и поставил на нем 5.2 с диска.
хотел обновиться до RELENG_5_3:

1. /stand/sysinstall -> Distribs -> src установил.
2. cvsup -g -L 2 /usr/local/etc/cvsup/stable-supfile
3. cat ./stable-supfile
--
*default host=cvsup.....
*default base=/usr
*default prefix=/usr
*default release=cvs tag=RELENG_5_3
*default delete use-rel-suffix
src-all
--
Обновился нормально.
4. cd /usr/src
5. make buildworld
выдает следующую ошибку:
--
c++ -O -pipe -I/usr/obj/usr/src/i386/legacy/usr/include -I/usr/src/gnu/usr.bin/g
perf/../../../contrib/gperf/lib -I/usr/src/gnu/usr.bin/gperf -c /usr/src/contrib
/gperf/src/main.cc
c++ -O -pipe -I/usr/obj/usr/src/i386/legacy/usr/include -I/usr/src/gnu/usr.bin/g
perf/../../../contrib/gperf/lib -I/usr/src/gnu/usr.bin/gperf -c /usr/src/contrib
/gperf/src/new.cc
make: don't know how to make /usr/src/contrib/gperf/lib/getopt.h. Stop
*** Error code 2

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.
--
в чем может быть загвоздка?

misher
29-11-2004, 13:07
На самом деле это только цветочки. (Сам апгрейдил с 5.2.1).
Все проблемы возникают из-за конкретных изменений в самой системе и в gcc.
В твоем случае следует в директории /usr/src сделать "make includes" (я так думаю)
Еще надо вначале откомпилить и установить gcc.

Еще рекомендую делать так:
Заходишь в какую-нибудь папку (например /usr/src/bin) делаешь make, а потом make install
При первом make посыпятся ошибки (как следствие несовместимых изменений), определяешь
чего каждой "ошибке" надо (Обычно надо зайти в какую-нибудь другую папку в src и сделать make и make install - другая папка src - это папка содержащая ПО требуемое для комиляции какой-либо части системы) исправлешь и пробуешь заново.

Я, неспеша, справился с этим за 4 дня - (на следующий день мне братва скачала диск)

ac
29-11-2004, 14:11
спасиба. буду пробовать. теперь это стало просто принципиально для меня создать эти исошки. может они у кого из моих знакомых уже ивправду есть, но мне надо сделать свои)))

Belansky
29-11-2004, 19:11
Что-то я, господа, не пойму ваших проблем. Сам апгрейдил ОС до 5.3 с 5.2.1-p11 путем сборки из исходников. Сделал так: скачал src 5.3 с ftp://ftp.freebsd.org/. Удалил старый /usr/src/, а затем в каталоге с новыми src дал команду ./install.sh all. Затем перешел в каталог /usr/src/ и там, как учили, make buildworld, make buildkernel KERNCONF=MyKern и т.д. Все встало на ура. Так что, сборка world 5.3 на версии 5.2.1 проходит. А вот обратно - уже нет из-за использования более новой версии компилятора в 5.3.

ac
30-11-2004, 16:32
2 Belansky:
не знаю как так получается может потому что у меня не 5.2.1 а 5.2.
--
#uname -r
5.2-RELEASE
--
а компилять по прежнему не получается ((
и gcc-2.95.3 собрал. кстати gcc34 и gcc40 тоже не собираются((
и mаke includes делал.

к примеру если делать make в /usr/src/bin :
--
===> df
Warning: Object directory not changed from original /usr/src/bin/df
cc -O -pipe -mcpu=pentiumpro -I/usr/src/bin/df/../../sbin/mount -Wsystem-headers
-Werror -Wall -Wno-format-y2k -W -Wstrict-prototypes -Wmissing-prototypes -Wpoi
nter-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-al
ign -Wbad-function-cast -Wchar-subscripts -Winline -Wnested-externs -Wredundant-
decls -o df df.o vfslist.o -lutil
df.o: In function `prthumanval':
df.o(.text+0x90f): undefined reference to `humanize_number'
*** Error code 1

Stop in /usr/src/bin/df.
*** Error code 1

Stop in /usr/src/bin.
--

может попробовать через промежуточный релиз обновиться. т.е. сначала до 5.2.1 потом до 5.3 ?

Belansky
01-12-2004, 10:27
ac
На другой машине я с 5.2 обновлял. И все прошло замечательно. А как Вы исходники 5.3 получали?

ac
06-12-2004, 11:34
исходники обновлял cvsup`ом.

1. cat ./stable-supfile
--
*default host=cvsup.....
*default base=/usr
*default prefix=/usr
*default release=cvs tag=RELENG_5_3
*default delete use-rel-suffix
src-all
--

2. cvsup -g -L 2 /usr/local/etc/cvsup/stable-supfile

сказал что закончил без ошибок.

не знаю. но чудеса не прекращаются.)
а разве есть разница каким образом получать исходники?

Belansky
06-12-2004, 16:40
ac
а разве есть разница каким образом получать исходники?
Есть. Указав в данном случае *default release=cvs tag=RELENG_5_3, Вы получили кашу из исходников версии 5.2 и 5.3. Для получения исходников нового релиза нужно было указать тег RELENG_5_3_0_RELEASE Или, как я говорил, удалить (или переместить каталог) /usr/src/, скачать по адресу ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/5.3-RELEASE/src/ исходники 5.3. Затем дать команду ./install.sh all, в результате чего новые исходникибудут помещены в /usr/src/, очистить /usr/obj/usr/, перейти в /usr/src/ и там запустить обновление системы, как об этом говориться на сайте (http://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/makeworld.html) разработчика.

ac
17-12-2004, 14:16
продолжение следует.

троекратное ура!!
я таки перешел на 5_3_RELEASE

исходники таки через cvsup закачал. оказалось что дело было не в исходниках а в моем старом ядре.

перешел к пункту 2.
запустил

cd /usr/src/release
nohup sh -c "make release CHROOTDIR=/usr/tmp/chroot BUILDNAME=5.3-RELEASE CVSROOT=/home/ncvs RELEASETAG=RELENG_5_3_0_RELEASE MAKEISOS=yes NODOC=yes NOPORTREADMES=yes" &

через 7,5 часов все удачно и главное с первого раза собралось.

теперь я имею директорию /usr/tmp/chroot/R/cdrom/
> там вот что:
> --
> du -h -d1 .
> 20M ./bootonly
> 219M ./disc1
> 458M ./disc2
> 698M .

а как мне теперь из них сделать bootable iso?




© OSzone.net 2001-2012