APT в ALT Linux/CreateRepositoryMirror
Существующие зеркала
Создание
rsync
Наименее затратным по времени и трафику является использование для зеркалирования rsync. Хотя возможно и ручное зеркалирование, удобнее воспользоваться инструментом, который называется sisyphus-mirror; существует также веб-интерфейс в виде alterator-mirror.
Для исключения части пакетов из зеркалирования (например, игрушек, которые часто весьма объёмны) можно воспользоваться сервисом, позволяющим отфильтровать пакеты по RPM-группе. Полученный список можно добавить в аргумент --exclude-from к rsync или в exclude-файл sisyphus-mirror.
Перед собственно зеркалированием можно запустить rsync с ключом -n для оценки трафика.
По времени стоит ориентироваться на раннее утро по Москве (например, интервал с 5 до 8 часов).
Не забудьте предложить добавить новое публичное зеркало в список через соответствующую страничку обсуждения.
sisyphus-mirror
Смотри sisyphus-mirror
Ручное зеркалирование
Пример:
rsync -va --stats --delete-after rsync.altlinux.org::ALTLinux/Sisyphus/ /srv/public/mirror/Sisyphus/
Также можно сформировать exclude-file, позволяющий не зеркалировать ненужные пакеты.
rsync -va --stats --delete-after --exclude-from=/path/to/exclude-file \
rsync.altlinux.org::ALTLinux/Sisyphus/ /srv/public/mirror/Sisyphus/
Для зеркалирования стабильной ветки замените Sisyphus на, например, p10/branch/
HTTP/FTP
NB: Использование HTTP и FTP для зеркал APT-репозиториев ALT Linux и Sisyphus неэкономично по трафику по сравнению с rsync из-за специфичной структуры репозиториев.
Пример:
mkdir -p /srv/public/mirror
cd /srv/public/mirror
wget \
--mirror \
--convert-links \
--backup-converted \
--html-extension \
http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/
Использование
/etc/apt/apt.conf.local:
Dir::Etc::main "/dev/null"; Dir::Etc::parts "/var/empty"; Dir::Etc::SourceParts "/var/empty"; Dir::Etc::sourcelist "/etc/apt/sources.list.local";
/etc/apt/sources.list.local для i586:
rpm file:/srv/public/mirror/Sisyphus i586 classic rpm file:/srv/public/mirror/Sisyphus noarch classic #rpm-dir file:/home/me/hasher/repo i586 hasher
/etc/apt/sources.list.local для x86_64:
rpm file:/srv/public/mirror/Sisyphus x86_64 classic rpm file:/srv/public/mirror/Sisyphus noarch classic #rpm-dir file:/home/me/hasher/repo x86_64 hasher