Кэширование репозитария deb пакетов

Материал из Bryansk Linux Users Group.

Перейти к: навигация, поиск

Зачем это нужно

Необходимость в кэшировании пакетов возникает при наличии болие одного компьютера для экономии трафика, а также для централизованного управления зеркалами, с которых эти самые пакеты скачиваются

Approx

Approx - самая удачная реализация проксирования deb пакетов на сегодняшний день. Очень прост в использовании. Итак, для начала установим его:

# apt-get install approx

Теперь поправим единственный конфигурационный файл /etc/approx/approx.conf

interface       eth0 # указываем интерфейс, на котором будет слушать демон (можно указать any)
port            9999 # номер порта, который слушает демон
interval        720  # время в минутах, после которого кэшированный пакет признается старым \
                       и передается клиенту только после обновления из кэшируемого репозитария \
                       (в данном случае - 12 часов, хотя для stable дистрибутива можно выставить побольше)
max_wait        10   # вкратце: время ожидания клиента, пока он скачает файл при конкурентном запросе (чем больше клиентов - тем меньше этот параметр)
max_rate        unlimited # ограничение полосы для скачки из кэшируемого репозитария самим approx'ом (можно указать 12K или 1M - в байтах)
debug           false # режим отладки

# Непосредственно сами кэшируемые репозитарии
# слева - локальный каталог, справа - путь к репозитарию
debian          http://ftp.debian.org/debian
debian-security http://security.debian.org
ubuntu          http://ru.archive.ubuntu.com/ubuntu
ubuntu-security http://security.ubuntu.com/ubuntu

Кэшируемые пакеты Approx по-умолчанию хранит в /var/cache/approx

Далее запускаем демон

# invoke-rc.d approx start

Прописываем в /etc/apt/sources.list на клиентах наш репозитарий:

deb http://192.168.0.1:9999/debian etch main contrib non-free
deb-src http://192.168.0.1:9999/debian etch main contrib non-free

deb http://192.168.0.1:9999/debian-security etch/updates main contrib non-free
deb-src http://192.168.0.1:9999/debian-security etch/updates main contrib non-free

Далее на клиенте (в роли которого может выступать и сам сервер, на котором запущен демон approx) выполняем:

# apt-get update

Все должно пройти отлично :)

Apt-cacher

17:08, 11 июля 2007 (MSD)

Личные инструменты