<>На этой странице поясняется, как настроить зеркальную копию KDE CVS, чтобы каждый мог загрузить свежайшие исходники, используя cvsup. Выражаем благодарность за предоставленную информацию.
Настройка клиента
Сначала нужно настроить cvsup для загрузки наборов файлов на ваше зеркало. Для этой цели используйте файл шаблона под названием
kde.sup.templateсо следующим содержимым:
*default host=cvsup.kde.org *default base=/home/kdecvs/kde *default prefix=/home/kdecvs/kde *default release=cvs *default delete *default compress *default use-rel-suffix
Для запуска процессов cvsupd и cvsup создайте отдельного пользователя `kdecvs` (и не забудьте, что этому пользователю будет приходить почта, если этот адрес указан, как адрес человека, поддерживающего зеркало). Если бы все файлы на головном сервере были доступны для чтения, то можно было бы запускать процесс cvsupd,используя непривилегированного пользователя, которому не принадлежит ни один файл. На данный момент, доступ на чтение некоторых файлов закрыт (точнее, некоторых каталогов верхнего уровня).
Здесь приведен простейший скрипт для периодического запуска cvsup (в данном примере, каждые 24 часа):
#!/bin/sh # Ожидать 24 часа, запустить cvsup, повторять в цикле. # Запускайте скрипт с nohup ./kdesync_forever.sh >/dev/null & umask 0 while (true); do { sleep 86400 sh ./kdesync & } doneПросто запустите этот скрипт от имени пользователя kdecvs для запуска зеркала (разумеется, при загрузке системы).
Конечно, вы можете использовать задачу для cron-демона вместо этого скрипта.
Скрипт
kdesyncнесколько сложнее. Он использует файл блокировки (lockfile) для запрещения одновременных обращений, а обновление производит дважды, получая scan-файлы (~/kde/sup/*/*) для ускорения работы cvsupd. Он использует файл kde.sup.template для создания файла kde.sup (один раз с опцией kdeall, один раз с опцией всех модулей). Загрузите kdesync отсюда.
Настройка сервера
Настройки сервера хранятся в отдельном каталоге, например, в ~/supd.
Данный каталог может настраиваться автоматически этим скриптом. Если все пройдет успешно, можете сразу перейти к разделу "Запуск сервера". Правда, результат будет слегка отличаться от того, который получится в результате инструкций, приведенных ниже (один list-файл вместо нескольких), но обе конфигурации работают.
В данном каталоге есть подкаталоги - по одному для каждого набора -- фактически, по одному каталогу для каждого пакета в ~/kde плюс каталог kdeall для мета набора kdeall. Каталог для каждого набора должен содержать символические ссылки на каталог в зеркале, где хранятся файлы, а именно:
supd/KodeKnight/KodeKnight -> ../../kde/KodeKnight supd/canossa/canossa -> ../../kde/canossa supd/genesis/corba -> ../../kde/corba [... для каждого каталога в ~/kde ] supd/kdeall/KodeKnight -> ../../kde/Kodeknight supd/kdeall/canossa -> ../../kde/canossa supd/kdeall/corba -> ../../kde/corba [... для каждого каталога в ~/kde ]
Помимо наборов, в каталоге supd должны находиться файлы конфигурации для cvsupd. Все они находятся в подкаталоге supd/sup, где для каждого набора также выделен один каталог.
Во всех этих каталогах должен находиться один файл: releases-файл
supd/sup/KodeKnight/releases [...] supd/sup/kdelibs/releases supd/sup/kdemultimedia/releases [...] supd/sup/kdeall/releasesВ releases-файле должна находиться одна строка:
cvs list=../list prefix=гдеnorsync
В list-файле (~/supd/sup/list) должно содержаться следующее:
omitany .cvsignore omitany Attic upgrade *
Запуск сервера
Для запуска сервера (как пользователь kdecvs) выполните:
/usr/local/sbin/cvsupd -C 5 -l ~/log -b ~/supd -s ~/kde/supгде значение 5 может быть заменено на то количество пользователей, которое вас устраивает. Также можно изменить приоритет работы сервера командой
nice.
Желаем удачи в настройке, и не забудьте сообщить об этом для добавления в список зеркал.
>