Автор Тема: Apt-proxy на основе apt-cacher-ng  (Прочитано 3339 раз)

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
Apt-proxy на основе apt-cacher-ng
« : 05.02.2018 19:05:06 »
Добрый день.
Пока что подзабил на деб, решил для примера поставить apt-cacher-ng на ос альт линукс 8 сп.

сразу же при установке возникли проблемы:

apt-get install apt-cacher-ng
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие НОВЫЕ пакеты будут установлены:
  apt-cacher-ng
0 будет обновлено, 1 новых установлено, 0 пакетов будет удалено и 60 не будет обновлено.
Необходимо получить 0B/362kB архивов.
После распаковки потребуется дополнительно 1013kB дискового пространства.
Совершаем изменения...
Preparing...                                                                                                                      ################################################################################################### [100%]
error: execution of %pre scriptlet from apt-cacher-ng-0.8.5-alt2 failed, exit status 255
error:   install: %pre scriptlet failed (2), skipping apt-cacher-ng-0.8.5-alt2
E: Произошли ошибки при выполнении транзакции
далее, выкачал пакет опцией apt-get -d
выяснил, что за скрипт, открыв информацию в rpm-пакете,
запустил скрипт из %pre:
/usr/sbin/useradd -g apt-cacher-ng -c 'apt-cacher-ng pseudouser' -d /var/cache/apt-cacher-ng -s /dev/null -r apt-cacher-ng  >/dev/null 2>&1 ||:
скрипт выполнился норм, далее
rpm -i --noscripts /var/cache/apt/archives/apt-cacher-ng_0.8.5-alt2_x86%5f64_1455849827.rpm
ошибка: распаковка архива не удалась на файле /lib/systemd/system/acng.service;5a788021: cpio: openне удалось - Отказано в доступе
я как понял, selinux не дает перезаписать системные файлы даже руту,
попробовал отключить selinux,
setenforce 0
setenforce:  setenforce() failed

echo 0 > /selinux/enforce


пока что безрезультатно

все опробованные на CentOS 7 методы отключения selinux, не сработали.
Подскажите, пожалуйста, как отключить его. Чтобы продолжитть настройку ap-tcacher-a


man google.com

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 908
    • Домашняя страница
    • Email
Re: Apt-proxy на основе apt-cacher-ng
« Ответ #1 : 05.02.2018 19:36:27 »
setenforce надо из физической консоли запускать (Ctrl+Alt+F2), а не из эмулятора терминала.
Андрей Черепанов (cas@)

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
Re: Apt-proxy на основе apt-cacher-ng
« Ответ #2 : 06.02.2018 10:49:06 »
setenforce надо из физической консоли запускать (Ctrl+Alt+F2), а не из эмулятора терминала.

Спасибо, так заработало, но все равно в пакете есть ошибки:

apt-get install apt-cacher-ng
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие НОВЫЕ пакеты будут установлены:
  apt-cacher-ng
0 будет обновлено, 1 новых установлено, 0 пакетов будет удалено и 60 не будет обновлено.
Необходимо получить 0B/362kB архивов.
После распаковки потребуется дополнительно 1013kB дискового пространства.
Совершаем изменения...
Preparing...                                                                                         ################################################################################################### [100%]
1: apt-cacher-ng                                                                                     ################################################################################################### [100%]
chown: невозможно получить доступ к «/var/log/apt-cacher-ng/*»: Нет такого файла или каталога
chmod: невозможно получить доступ к «/var/log/apt-cacher-ng/*»: Нет такого файла или каталога
Running /usr/lib/rpm/posttrans-filetriggers
Завершено.

Но это ладно, буду настраивать дальше

man google.com

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
Re: Apt-proxy на основе apt-cacher-ng
« Ответ #3 : 06.02.2018 11:18:53 »
На сервере (192.168.69.145 - с доступом в интернет) добавил строчку в /etc/apt-cacher-ng/acng.conf, закоментил localhost:
#BindAddress: localhost
Remap-altlinux: file:altlinux_mirrors

echo "http://ftp.altlinux.org/" > /etc/apt-cacher-ng/altlinux_mirrors
Перезапуск сервиса:
systemctl restart acng
по  статусу вроде ок

на клиенте:
На клиенте (192.68.69.78) добавил строку с моим apt-cacher-ng-ом в /etc/apt/apt.conf:
Acquire::http { Proxy "http://192.168.69.145:3142"; };
всё работает, но та же самая конфига на сервере дебиана не работает ::(
https://forum.altlinux.org/index.php?topic=40981.msg323992#msg323992

выходит, apt-getы rpm и deb вообще не совместимы, как тогда работает yum через apt-cacher // ???  :-o
« Последнее редактирование: 06.02.2018 16:33:34 от zhe »
man google.com

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 099
Re: Apt-proxy на основе apt-cacher-ng
« Ответ #4 : 06.02.2018 17:12:52 »
А смысл какой у всей затеи? Освоить apt-cacher-ng, или сделать возможность обновлений через прокси с Дебиан? Или что-то третье?

Потому как если задача в принципе через прокси обновление сделать, то apt в alt воплне работает через squid, а squid можно настроить хранить крупные объеккты.

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
Re: Apt-proxy на основе apt-cacher-ng
« Ответ #5 : 08.02.2018 13:05:59 »
А смысл какой у всей затеи? Освоить apt-cacher-ng, или сделать возможность обновлений через прокси с Дебиан? Или что-то третье?
Потому как если задача в принципе через прокси обновление сделать, то apt в alt воплне работает через squid, а squid можно настроить хранить крупные объеккты.

Смысл в том, чтобы компы с linux, не имеющие доступ в интернет, устанавливали пакеты и обновлялись через apt-cacher-ng, при чем, этот apt-cacher-ng, желательно, должен работать для всех используемых линуксов, не зависимо от дистрибутива. Сперва всё было настроено на дебиане, и через него обновлялись дебиан, убунта, centos, федора, астра, а вот Альт ни в какую. Пока что сделал доп apt-проксю для Альта, благо виртулок можно создать много.

Просто прокидывать http через кальмара не стал, во-первых, на предприятии есть неск-ко пулов адресов для разработок, при чем, порой произвольных, и все прописывать на прокси и создавать правила для каждого адреса нет смысла, во-вторых, чтобы не было у пользователей виртуалок соблазна экспортнуть переменную http_proxy и использовать тырнет для других целей, потому решил сделать прокси только для менеджеров пакетов. Пока что принял apt-cacher-ng как оптимальный вариант для этих целей.
man google.com