Debian — Создание локального репозитория (apt-mirror)
Создание локального репозитория c помощью утилиты apt-mirror.
Этот способ зеркалирования, рекомендован WiKi Debian как гораздо более надёжней нежели debmirror.
Итак начнём, установим apt-mirror:
Настройка apt-mirror
Допустим нам нужно зеркало с готовыми к установке (бинарными) пакетами для x64 Wheezy.
(как узнать какое самое быстрое зеркало) Правим конфигурационный файл /etc/apt/mirror.list:
Для ручного запуска создания\обновления зеркала выполняем команду:
Для автоматической синхронизации и очистки зеркал нужно добавить строку в настройки cron и выставить подходящее время. Обновление официальных зеркал происходит каждые 6 часов: 3:00,9:00,15:00,21:00. Например так:
После завершения работы локальные копии всех указанных репозиториев окажутся в каталогах /mnt/repo/debianmirror/имя_репозитория . Таким образом копия репозитория, которая была определена в mirror.list как
окажется в каталоге
Источник
Этот способ зеркалирования, рекомендован WiKi Debian как гораздо более надёжней нежели debmirror.
Итак начнём, установим apt-mirror:
apt-get install apt-mirrorСоздаём каталог /mnt/repo/debian, в нём будет создаваться локальный репозиторий пакетов. Желательно чтобы это был примонтированный логический раздел жёсткого диска, чтобы в случае переустановки дистрибутива с нуля, при форматировании корневого раздела (/), не лишиться репозитория совсем. И служебных каталогов:
mkdir -p /mnt/repo/debian/{mirror,var,skel}
Настройка apt-mirror
Допустим нам нужно зеркало с готовыми к установке (бинарными) пакетами для x64 Wheezy.
(как узнать какое самое быстрое зеркало) Правим конфигурационный файл /etc/apt/mirror.list:
nano /etc/apt/mirror.list ############# config ################## # Базовый каталог, в нём будет создано локальное зеркало репозитория Debian set base_path /mnt/repo/debian # # Пути к файлам зеркала, временным файлам и журналy выполнения apt-mirror # set mirror_path $base_path/mirror # set skel_path $base_path/skel # set var_path $base_path/var # set cleanscript $var_path/clean.sh # # Архитектура, для которой создаётся зеркало. По умолчанию - это архитектура # системы, на которой работает apt-mirror (amd64,i386 или др.). Менять не ненужно, # т.к. ниже мы явно укажем и зеркало и архитектуру. # set defaultarchЕсли необходимо хранить несколько зеркал для разных выпусков и архитектур, то добавляем новые строки типа:# # Пусть к скрипту постобработки, по-умолчанию отсутствует, пока нам не нужен. # set postmirror_script $var_path/postmirror.sh # # Не запускать скрипт постобработки set run_postmirror 0 set nthreads 20 set _tilde 0 # ############# end config ############## # Зеркало с пакетами wheezy x64 + исходные тексты deb-amd64 ftp://debian.nsu.ru/debian wheezy main contrib non-free deb-src ftp://debian.nsu.ru//debian wheezy main contrib non-free # Зеркало с обновлениями безопасности wheezy + исходные тексты deb-amd64 http://security.debian.org/ wheezy/updates main contrib non-free deb-src http://security.debian.org/ wheezy/updates main contrib non-free # Зеркало необходимое для сетевой установки (udebs) deb-amd64 ftp://debian.nsu.ru/debian wheezy main/debian-installer # Удаляем файлы не индексированные в Release clean ftp://debian.nsu.ru/debian clean http://security.debian.org # Запрещаем очистку выбранной папки skip-clean ftp://debian.nsu.ru/debian/dists/wheezy/main/installer-amd64/
#deb-alpha http://ftp.us.debian.org/debian unstable main contrib non-free #deb-amd64 http://ftp.us.debian.org/debian unstable main contrib non-free #deb-armel http://ftp.us.debian.org/debian unstable main contrib non-free #deb-hppa http://ftp.us.debian.org/debian unstable main contrib non-free #deb-i386 http://ftp.us.debian.org/debian unstable main contrib non-free #deb-ia64 http://ftp.us.debian.org/debian unstable main contrib non-free #deb-m68k http://ftp.us.debian.org/debian unstable main contrib non-free #deb-mips http://ftp.us.debian.org/debian unstable main contrib non-free #deb-mipsel http://ftp.us.debian.org/debian unstable main contrib non-free #deb-powerpc http://ftp.us.debian.org/debian unstable main contrib non-free #deb-s390 http://ftp.us.debian.org/debian unstable main contrib non-free #deb-sparc http://ftp.us.debian.org/debian unstable main contrib non-freeЗапуск и автоматизация apt-mirror
Для ручного запуска создания\обновления зеркала выполняем команду:
# apt-mirrorПосле загрузки индексных файлов apt-mirror сообщит, какой объём пакетов нужно получить:
Downloading 47 index files using 20 threads... Begin time: Wed Jan 8 21:41:11 2014 [20]... [19]... [18]... [17]... [16]... [15]... [14]... [13]... [12]... [11]... [10]... [9]... [8]... [7]... [6]... [5]... [4]... [3]... [2]... [1]... [0]... End time: Wed Jan 8 21:41:33 2014 Proceed indexes: [SSPPP] 84.2 GiB will be downloaded into archive. Downloading 90890 archive files using 20 threads... Begin time: Wed Jan 8 21:41:50 2014 [20]... ... ... ...Остаётся только дождаться завершения скачивания.
Для автоматической синхронизации и очистки зеркал нужно добавить строку в настройки cron и выставить подходящее время. Обновление официальных зеркал происходит каждые 6 часов: 3:00,9:00,15:00,21:00. Например так:
crontab -l 05 01 * * * apt-mirror >> /var/log/apt-mirror.log 05 03 * * * /mnt/repo/debian/var/clean.sh >> /var/log/apt-mirror.logНастройка доступа к зеркалу
После завершения работы локальные копии всех указанных репозиториев окажутся в каталогах /mnt/repo/debianmirror/имя_репозитория . Таким образом копия репозитория, которая была определена в mirror.list как
deb-amd64 ftp://debian.nsu.ru/debian wheezy main contrib non-free
окажется в каталоге
/mnt/repo/debian/mirror/debian.nsu.ru/debian/
. Доступ именно к этому каталогу нужно открывать любым удобным для Вас Web или FTP сервером. Для корректной работы обязательно необходимо добавить символические ссылки «stable»,»testing», «unstable» если таковы имеются …ln -s /mnt/repo/debian/mirror/debian.nsu.ru/debian/dists/wheezy /mnt/repo/debian/mirror/debian.nsu.ru/debian/dists/stableДалее очень желательно подписать вновь созданный репозиторий
Источник