среда, 5 ноября 2014 г.

Apt-cacher-ng: прокси сервер / зеркало репозитория



Apt-cacher-ng - кеширующий прокси сервер, предназначенный для загрузки пакетов из репозиториев программного обеспечения Debian подобных операционных систем. Позволяет без лишней нагрузки на ваш интернет канал обновлять все ваши Дебианы/Убунты.

Основной принцип состоит в сохранении в кеше всех хотя бы один раз  загруженных deb пакетов и выдаче их из кеша при любом повторном запросе. Это позволяет избавить вас от необходимости скачивать пакет повторно. Банально неправда ли?  И даже слишком. Имеет смысл если у вас в сети больше одного - двух компов на  Дебиане/Убунте. 
Apt-cacher-ng был разработан с нуля в качестве замены apt-cacher, но с акцентом на минимизацию требуемых системных ресурсов. Он также может быть использован в качестве замены для apt-proxy и при этом нет необходимости модифицировать файлы sources.list клиентов.

Установка: 

sudo aptitude install apt-cacher-ng

Настройка apt-cacher-ng

По умолчанию apt-cacher-ng начинает работать как говорится изкаропки, но при необходимости  изменений вносить их нужно в файл: /etc/apt-cacher-ng/acng.conf. Подробное описание всех ключей приводить нет смысла, они есть в интернетах, они все есть в самом конфиг файле. Между прочим снабжённые подробными описаниями, ну и man никто не отменял.
По умолчанию все скаченные файлы  (кеш)  apt-cacher-ng хранит в каталоге /var/cache/apt-cacher-ng,  при том раскладывает их по подкаталогам так как они (пакеты) расположены в репозиториях. Что уже как бы намекает...

 Настройка клиентов

Для того что бы утилита apt начала использовать ваш новый прокси нужно создать файл: 
/etc/apt/apt.conf.d/7proxy
в который добавить строку:
Acquire::http { Proxy "http://ипвашегопрокси:3142"; };
в принципе эту же строку можно добавить и в:
 /etc/apt/apt.conf 

Ну вот и всё...

Как оказалось нет, это не единственный функционал данного прокси. Как выяснилось из чтения мана и изучения интернетов, apt-cacher-ng может использовать так называемое предварительное кеширование т.е. организовать зеркало репозитория и регулярно его обновлять.  Но об этом уже в следующий раз.

А пока я поднял этот прокси на своём домашнем сервере. Для обновления домашних компов и homeserver на убунте + указываю его при установке на новые компы и виртуалки (при развертывания с мини образа).  На сегодняшний день кеш занимает около 2.5Гб и экономия весьма заметна, обновление практически мгновенно. Размышляю над созданием зеркала репозитория убунты.

Комментариев нет: