Для обновления Ubuntu 12.04 достаточно использовать стандартный Менеджер обновлений. Однако когда в сети имеется несколько таких систем обновление каждой из них приводит к дублированию загрузки пакетов, что конечно не является оптимальным с точки зрения использования канала интернета. Хотелось иметь решение которое позволяло бы уже запрошенные ранее пакеты не грузить через внешний канал повторно, а брать их из какого-нибудь внутреннего кэша. Погуглив этот вопрос остановился на решении apt-cacher-ng. Хорошее описание реализации приведено по ссылке Установка Ubuntu по сети и настройка кэширующего сервера обновлений.
Сначала нужно один Ubuntu компьютер назначить сервером обновлений пакетов. На нем установить через Центр приложений пакет apt-cacher-ng. Далее перейти в каталог /etc/apt-cacher-ng и открыть для редактирования файл конфигурации acng.conf. В нем потребуется указать директорию куда будут падать загружаемые из интернета пакеты. За это отвечает параметр CachDir. Если есть желание журналировать процесс загрузки укажите путь к лог файлу в параметре LogDir. Остальные параметры можно оставить без изменений. Сохранив конфигурацию необходимо установить владельцем и группой каталога пакетов и каталога лог-файла пользователя apt-cacher-ng, так как именно под ним запускается служба кэширования. Перезапустите службу командой
Сначала нужно один Ubuntu компьютер назначить сервером обновлений пакетов. На нем установить через Центр приложений пакет apt-cacher-ng. Далее перейти в каталог /etc/apt-cacher-ng и открыть для редактирования файл конфигурации acng.conf. В нем потребуется указать директорию куда будут падать загружаемые из интернета пакеты. За это отвечает параметр CachDir. Если есть желание журналировать процесс загрузки укажите путь к лог файлу в параметре LogDir. Остальные параметры можно оставить без изменений. Сохранив конфигурацию необходимо установить владельцем и группой каталога пакетов и каталога лог-файла пользователя apt-cacher-ng, так как именно под ним запускается служба кэширования. Перезапустите службу командой
sudo service apt-cacher-ng restart
Если все прошло успешно ответ должен быть [ OK ]. Также можно перейти на страницу статистику по адресу
http://127.0.0.1:3142/acng-report.html
Теперь укажем системе при обновлении пакетов ходить через кэш. Для этого в каталоге /etc/apt/apt.conf.d создадим пустой файл 02proxy командой
sudo touch /etc/apt/apt.conf.d/02proxyи запишем определяющую строку
Acquire::http { Proxy "http://127.0.0.1:3142"; };
Сохраняем изменения и закрываем файл. Осталось проверить работу службы. Для этого запустите Менеджер обновлений и инициируйте процесс обновления. Все подгруженные пакеты появятся в каталоге кэша согласно структуре зеркала.
Теперь настроим клиентов. Собственно это ничем не отличается от настройки сервера, только вместо адреса петли обратной связи необходимо указать реальный ip его сетевого интерфейса.
P.S. На странице acng-report.html статистика доступна только при наличии лог-файла!
P.Ss. Страница статистики может не отображаться. В этом случае проверьте подключен ли раздел кэша? Он должен быть перед стартом службы. Если нет, добавьте раздел кэша в файл /etc/fstab.
P.S. На странице acng-report.html статистика доступна только при наличии лог-файла!
P.Ss. Страница статистики может не отображаться. В этом случае проверьте подключен ли раздел кэша? Он должен быть перед стартом службы. Если нет, добавьте раздел кэша в файл /etc/fstab.