>>А может, сразу 4.2.0 собрать? Если
>>неохота возиться со сборкой, то
>>на xfree86.org & mirrors выложены
>>кроме исходников и бинарники для
>>FreeBSD 4.*, OpenBSD 3.0, NetBSD
>>1.5 и некоего Linux.
>Ну в общем я и
>хотел сказать xfree86 4.2.0 :-)
нахрен не надо, X11R6.x я честно собираю
на non-intel платформах, а на x86 - только
из портов, чтобы не трахаться с непонятно кем и
как собранными binaries на www.xfree86.org и
потом огребать геморр.
А в портах 4.1.0 с портверсией=7
те с патчами от freebsd-team
>Залил я его исходники и думаю,
>так как у меня в
>usr'е осталось меньше 900 мб-может
>на самом деле установить сразу
>бинарники? Т.е. исходники-тарболы
>общим весом в 120 мб, развернутся
>они в ... раза -во
>сколько?А потом еще объектные файлы
>наверно во столько же. Наблюдать
>file system is full посередине
>процесса компиляции грустно-уже сталкивался.
>
>Надыбал себе винт на 20 гиг
>и думаю туда перенести свой
>usr туда, только с чего
>начать?
>Надо забэкапить старый, размонтировать его?
>С чего начать?
на личной тачке для нового /usr - нафиг ничего
не надо, если старый диск остается в системе.
Врианты (после физического подключения нового диска):
1. оформить одной fbsd партицией, дальше сделать
нужное кол-во слайсов которые можно будет
монтировать в /usr/obj - для сборки системы
/usr/sup или куда определено скачивание by cvsup
/usr/local - это только пример
допустим разбили, создали FS через newfs без
монтирования куда-либо, после чего монтируем
эти слайсы, например для будущей отдельной
fs=/usr/local создаем /mnt/new/local и вот туда
после чего tar'ом
cd /usr/local; tar cf - . | (cd /mnt/new/local; tar xfBp -)
так же с остальными продуманными fs для соответствующих mount-point
После этого правим /etc/fstab куда вносим монтирование новых слайсов в нужные mount-point,
в приведенном примере:
/dev/device /usr/local ...
...
чтобы слайс смонтированный на /mnt/new/local c
копией нашего /usr/local сразу монтировался в
/usr/local
теперь почти готовы к перезагрузке, но:
у нас ведь и старый /usr/local остался, надо
его переименовать в local.old и создать новую
пустую директорию (mount-point) /usr/local,
два варианта:
1) переходим в single-user mode
cd /usr
запоминаем какие mode и uid/gid
или берем их из /etc/mtree/BSD.usr.dist
mv local local.old
mkdir local
восстанавливаем mode и uid/gid: chown и chmod
для других непустых директорий которые будут
заменены монтированием в их mount-point новыми
FS проделать тоже самое
можем перегружаться или монтировать новые FS
руками или mount -a
2) делаем shutdown
грузимся в single-user mode и
проделываем все что описано в п.1
по завершении ctrl-d и переходим в multi-user
Завершение: если все сделали нормально и без
проблем (их быть не должно) - удаляем старые
копии, они нам теперь не нужны, в результате
освобождается куча места на данной FS
2. если вдруг получается что нужно перекурочить
разбивку старого диска, делаем нужную - просчитанную разбивку на новом, куда будут закатаны копии FS или DIR со старого и после
этого, подобно процедуре из первого варианта
сделать переброски со старого на новый, для
последующих изменений размеров слайсов на старом.
Примечание: во втором варианте подразумевается
что не трогается "root-fs", копии остальных
делаются на втором диске и на втором же оставляется обязательно свободные слайсы как при
технологии A -в-> (через C) -> B
те у нас нет промежуточного устройства C, но за
счет того что диск B много больше A, его можно
представить как бы два диска оставив один или
сколько нужно промежуточных слайсов для C
Кто попробует, тот поймет, продумав и смоделировав
ситуацию с изменением-удалением слайсов на старом
диске, кроме root
PS. Советую делать /tmp как отдельную FS, очень
удобно и сильная страховка:
1) не засоряется важная FS = root, как известно
на ней, если у нас отдельный слайс, то он будет
туда монтироваться
2) даже если что-то случилось и отдельный слайс
не смонтировался в /tmp, на root-fs останется
mount-point /tmp и соответственно он и будет
использоваться
>А насчет портов- можно cvsup'ить их
>и только их?
можно, только при серьезных изменениях, меняются
и /usr/share/mk от которых зависят Mk из портов,
я в этом случае докручиваю руками порты
>А то я раньше скачивал ports.tgz,
>разворачивал, и вручную переписывал поверх
>/usr/ports, хотя и подозревал что
>делаю неправильно.
см выше
Для боевых серверов принцип простой, сперва все
делается на личной телеге под FreeBSD, которая
катится вверх через cvsup с учетом чтения stable
и ports maillist или просмотром их архивов, чтобы
не нарваться на кривую или замороженную сборку,
в момент когда нет шума и все работает стабильно
- делается cvsup, производятся сборки, правки,
настройки, если все GOOD, до этого уровня
поднимается боевой сервер и обязательно с
COMPAT (до того же cvs что на рабочей станции,
сервер можно поднять используя задание тега с
датой и временем на момент которого подымалась
тренировочная телега)
Надеюсь хоть что-то из написанного можно вынести
http://unix1.jinr.ru/~lavr/