Надо настроить около 10 роутеров с прокси, впн итд на базе FreeBSD. Возникла проблема как обновлять на них этот софт - места для коллекции портов на них нет, каждый раз компилить из исходников с применением патчей неинтересно как-то совсем на 10 роутерах.
что тут можно придумать?
>Надо настроить около 10 роутеров с прокси, впн итд на базе FreeBSD.
>Возникла проблема как обновлять на них этот софт - места для
>коллекции портов на них нет, каждый раз компилить из исходников с
>применением патчей неинтересно как-то совсем на 10 роутерах.
>что тут можно придумать?- Packages, собирать на другой машине.
- Монтировать коллекцию портов на роутеры по NFS.
- Где-нибудь обрезать коллекцию портов до тех, что нужны на роутерах + зависимости и любым образом доставлять на роутеры (ftp/ssh/rsync/...)
- Монтировать всю файловую систему роутера по NFS на другую машину, и работать с ней. Например, так:# mount_nfs router:/ /mnt
# export LOCALBASE=/mnt/usr/local
# export PKG_DBDIR=/mnt/var/db/pkg
# export PORT_DBDIR=/mnt/var/db/portsПосле чего все pkg_* команды, make install и portupgrade, если я ничего не забыл, должны работать с портами, установленными на роутере. Также можно всю систему обновлять: make installworld DESTDIR=/mnt.
Не забывать про make.conf, особенно CPUTYPE.
- Если роутеры совсем одинаковые, можно еще более облегчить жизнь, собрать готовый образ диска/флешки где-нибудь, а потом разливать его по роутерам. Можно поискать сопутствующий софт. Например, я бы посмотрел sysutils/dolly.
Спасибо за ответРоутеры хоть и одинаковые, но будут распределены по России от Хабаровска до Питера, в общем придется коллекцию портов резать судя по всему.
И, насколько я понял, в supfile для cvsup нельзя указать, что надо обновлять только конкретные порты, а только целы ветки, например ports-ftp ports-www
или можно указать, что только конкретный порт из всей ветки?
Что то я не пойму. а сколько у Вас вообще места?
Порты - текстовые файлы и места много не занимают.
Если такой серьезный проект, то наверное можно изыскать 10 HDD по 10 Гиг (хватило бы и 3 мне кажеться)
Или я что то не понимаю в постановке задачи
>Спасибо за ответ
>
>Роутеры хоть и одинаковые, но будут распределены по России от Хабаровска до
>Питера, в общем придется коллекцию портов резать судя по всему.
>И, насколько я понял, в supfile для cvsup нельзя указать, что надо
>обновлять только конкретные порты, а только целы ветки, например ports-ftp
>ports-www
>или можно указать, что только конкретный порт из всей ветки?с обновлением ОДНОГО или НЕСКОЛЬКИХ портов через CVSUP, могут быть проблемы
индивидуальные обновления с обновлением зависимостей, делают через
portupgradeЕсли хочется единообразия всех рутеров - нужно на них установить ОДИН
релиз и вести их одинаково, если софт везде одинаковый - на одном
собирать из портов packages и устанавливать на остальных.
Если все рутеры будут иметь достаточно хорошие каналы связи друг с другом, можно организовать NFS или GEOM-GATE(>= 5.x) под общие порты
или локальные пакеты или синхронизировать их cvsup'ом/rsync'ом с
одного основного. Опять же если каналы будут достаточной ширины, организовать туннелинг между ними.
>Роутеры хоть и одинаковые, но будут распределены по России от Хабаровска до Питера, в общем придется коллекцию портов резать судя по всему.
>И, насколько я понял, в supfile для cvsup нельзя указать, что надо
>обновлять только конкретные порты, а только целы ветки, например ports-ftp ports-www или можно указать, что только конкретный порт из всей ветки?man cvsup на предмет refuse. Можно исключить любой path, т.е. например, целую категорию портов. Но если в категории нужен 1 порт, то придется исключать остальные порты по одному. Это все не рекомендуется, так как если какой-то порт обновится, и у него в зависимостях добавится порт из необновленных, могут случиться неприятные вещи.
Лучше где-нибудь обновлять коллекцию целиком, и делать tar только тех частей дерева, которые нужны. Либо поднять свой cvs/cvsup сервер с обрезанным деревом.
На вашем месте, я бы все-таки остановился на использовании packages - дешево и сердито.
посмотрел сколько занимают порты - 1,5 Гиг.
Это критично?
>посмотрел сколько занимают порты - 1,5 Гиг.
>Это критично?да, места 512 мег всего.
В общем начну с делать с packages, а там посмотрим
>посмотрел сколько занимают порты - 1,5 Гиг.
>Это критично?На самом деле порты целиком занимают
% du -hs /usr/ports
276M /usr/portsДиректории work надо удалять чаще, а правильнее вообще в другом месте держать (WRKDIRPREFIX). А дистфайлы после установки пакета становятся не нужны.