В связи с переходом на новый сервер я сервисы с Ubuntu 18.04
хочу перенести на Ubuntu 20.04 LTS
, а значит их нужно разобрать заново возможно что-то, да и изменилось: все же, наверное, новая версия, настройка, и применение. Сегодня это будет сервис кэширования пакет apt-cacher-ng
который я применяю на Ubuntu 18.04 Server
, но теперь на Ubuntu 20.04.
У меня есть место и раз обратившись через данный сервис к установке пакетов deb
они кэшируются и вновь при обращении к ним они будут уже скачиваться с моего локального сервера. Я использую сервис apt-cacher-ng
совместно с автоматизированной установкой систем Ubuntu, Debian
через FOG Project.
Заметка опирается за заметку "Кэширования пакетов apt-cacher-ng на Ubuntu Bionic"
Шаг №1:
Произвожу установку сервиса apt-cacher-ng
на Ubuntu 20.04 LTS Server:
ekzorchik@srv-us2004:~$ apt-cache show apt-cacher-ng | grep Version Version: 3.3.1-2build1 ekzorchik@srv-us2004:~$ sudo apt-get install -y apt-cacher-ng Allow HTTP tunnels through Apt-Cacher NG? Yes
Шаг №2:
Файлы пакетов буду хранить на отдельном каталоге (можно выделить отдельный диск):
ekzorchik@srv-us2004:~$ sudo mkdir -p /data/repository ekzorchik@srv-us2004:~$ sudo mkdir -p /data/log ekzorchik@srv-us2004:~$ sudo chown -R apt-cacher-ng:apt-cacher-ng /data ekzorchik@srv-us2004:~$ sudo nano /etc/default/apt-cacher-ng DISABLED=1 DAEMON_OPTS=" -c /etc/apt-cacher-ng"
Шаг №3:
Изменяю конфигурационный файл apt-cacher-ng
где изменяю дефолтный путь хранения пакетов:
ekzorchik@srv-us2004:~$ sudo nano /etc/apt-cacher-ng/acng.conf #CacheDir: /var/cache/apt-cacher-ng CacheDir: /data/repository #LogDir: /var/log/apt-cacher-ng LogDir: /data/log SupportDir: /usr/lib/apt-cacher-ng Port:3142 ReportPage: acng-report.html ExThreshold: 4 BindAddress: localhost 172.33.33.112 PassThroughPattern: .* UserAgent: Debian Apt-Cacher-NG/3.3.1 Remap-debrep: file:deb_mirror*.gz /debian ; file:backends_debian # Debian Archives Remap-uburep: file:ubuntu_mirrors /ubuntu ; file:backends_ubuntu # Ubuntu Archives Remap-cygwin: file:cygwin_mirrors /cygwin # ; file:backends_cygwin # incomplete, please create this file or specify preferred mirrors here Remap-sfnet: file:sfnet_mirrors # ; file:backends_sfnet # incomplete, please create this file or specify preferred mirrors here Remap-alxrep: file:archlx_mirrors /archlinux # ; file:backend_archlx # Arch Linux Remap-fedora: file:fedora_mirrors # Fedora Linux Remap-epel: file:epel_mirrors # Fedora EPEL Remap-slrep: file:sl_mirrors # Scientific Linux Remap-gentoo: file:gentoo_mirrors.gz /gentoo ; file:backends_gentoo # Gentoo Archives Remap-secdeb: security.debian.org ; security.debian.org deb.debian.org/debian-security
Шаг №4:
Перезапускаю сервис apt-cacher-ng:
ekzorchik@srv-us2004:~$ sudo systemctl is-enabled apt-cacher-ng enabled ekzorchik@srv-us2004:~$ ekzorchik@srv-us2004:~$ sudo systemctl restart apt-cacher-ng && sudo systemctl status apt-cacher-ng | head -n 5 ● apt-cacher-ng.service - Apt-Cacher NG software download proxy Loaded: loaded (/lib/systemd/system/apt-cacher-ng.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2021-06-09 19:55:26 UTC; 24ms ago Main PID: 1511 (apt-cacher-ng) Tasks: 1 (limit: 4617) ekzorchik@srv-us2004:~$
Шаг №5:
Если нужно ограничить доступ к сервису apt-cacher-ng
, то прописываем в файл ниже IP
адрес системы которой разрешено или же ограничиваем доступ по FQDN
суффиксу, к примеру ALL: .polygon.lan:
ekzorchik@srv-us2004:~$ sudo nano /etc/hosts.allow 172.33.33.0/24 172.33.33.25
Шаг №6:
Проверяю, а поднимется ли теперь сервис apt-cacher-ng
если система будет перезагружена:
ekzorchik@srv-us2004:~$ sudo reboot
Ответ да, сервис сам поднимается порт (3142
) прослушивается:
ekzorchik@srv-us2004:~$ sudo ss -ltu | grep :3142 tcp LISTEN 0 250 0.0.0.0:3142 0.0.0.0:* tcp LISTEN 0 250 [::]:3142 [::]:* ekzorchik@srv-us2004:~$
Шаг №7:
Прописываю работу установки deb
пакетов на системе Ubuntu 20.04 Server
где собственно сам сервис apt-cacher-ng:
ekzorchik@srv-us2004:~$ sudo nano /etc/apt/apt.conf.d/00aptproxy Acquire::http { Proxy "http://172.33.33.112:3142"; };
Шаг №8:
Применяю развернутый сервис apt-cacher-ng
на сервере Ubuntu 20.04 Server:
ekzorchik@srv-us2004:~$ sudo apt-get update && sudo apt-get install -y htop
На заметку: ключ -L
это вывод на указанную глубину, -d
→ только дерево директорий.
ekzorchik@srv-us2004:~$ tree -d /data/repository/ -L 4 /data/repository/ ├── uburep │ ├── dists │ │ ├── focal │ │ ├── focal-backports │ │ ├── focal-security │ │ └── focal-updates │ └── pool │ └── universe │ └── t └── _xstore ├── qstats │ ├── i │ └── o └── rsnap 14 directories ekzorchik@srv-us2004:~$ 6 directories ekzorchik@srv-us2004:~$ sudo du -sh /data/repository/ 468K /data/repository/ ekzorchik@srv-us2004:~$
Шаг №9:
Как применять развернутый сервис apt-cacher-ng
? На клиентской системе прописываем, к примеру путь — это будет: Ubuntu 18.04 Server amd64
ekzorchik@srv-bionic:~$ lsb_release -a && uname -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 18.04.5 LTS Release: 18.04 Codename: bionic Linux srv-bionic 4.15.0-143-generic #147-Ubuntu SMP Wed Apr 14 16:10:11 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux ekzorchik@srv-bionic:~$ ekzorchik@srv-bionic:~$ sudo nano /etc/apt/apt.conf.d/02proxy Acquire::http { Proxy "http://172.33.33.112:3142"; }; или ekzorchik@srv-bionic:~$ sudo nano /etc/apt/apt.conf Acquire::http { Proxy "http://172.33.33.112:3142"; }; или ekzorchik@srv-us2004:~$ sudo nano /etc/apt/apt.conf.d/00aptproxy Acquire::http { Proxy "http://172.33.33.112:3142"; }; ekzorchik@srv-bionic:~$ sudo rm -Rf /var/lib/apt/lists ekzorchik@srv-bionic:~$ sudo apt-get update && sudo apt-get install -y htop tree
Шаг №10:
Проверяю содержимое на Ubuntu 20.04 Server
сервис apt-cacher-ng
наполнил содержимое каталога /data/repository:
ekzorchik@srv-us2004:~$ tree -d /data/repository/uburep/dists/ -L 2 /data/repository/uburep/dists/ ├── bionic ├── bionic-backports ├── bionic-updates ├── focal ├── focal-backports ├── focal-security └── focal-updates 7 directories ekzorchik@srv-us2004:~$
Ответ, да, каталог наполняется.
Итого я разобрал как на Ubuntu 20.04 Server
установить и начать практически использовать сервис apt-cacher-ng
в том виде в котором необходимо мне. А Вам решать использовать так или же погрузиться в параметры конфигурационного файла и достичь того функционала которого требуется у Вас. А пока я прощаюсь, до новых встреч на моем блоге, с уважением автор блога Олло Александр aka ekzorchik.