Как настроить сервер apt-cacher?
У меня более 500 систем, работающих под управлением Ubuntu 10.04, Ubuntu 10.10 и Ubuntu 11.04. Нам сложно устанавливать новые пакеты на эти машины из Интернета из-за высокой пропускной способности. Я планирую настроить сервер apt-cacher, чтобы он устанавливал пакеты с локального компьютера вместо установки пакетов из Интернета. Может кто-нибудь дать мне аккуратное решение, пожалуйста? Заранее спасибо.
Ошибка в конфигурации сервера:
root@karthick:~# sudo /usr/share/apt-cacher/apt-cacher-import.pl /var/cache/apt/archives
Importing: acl_2.2.49-3_i386.deb
Failed to rename acl_2.2.49-3_i386.deb. Try read-only (-r) or symlink (-s) options. at /usr/share/apt-cacher/apt-cacher-import.pl line 154.
Ошибка в клиенте при установке пакетов
Может кто-нибудь разобраться пожалуйста?
3 ответа
Конфигурация на стороне сервера.
- Установите apt-cacher и веб-сервер apache2 в системе, которую вы хотите разместить:
sudo apt-get install apt-cacher apache2
, Удалите apache, если он уже запущен. - Включить apt-cacher:
sudo gedit /etc/default/apt-cacher
.Изменить автозапуск до 1 - Если apache уже установлен перед установкой apt-cacher:
sudo invoke-rc.d apache2 restart
, Вы должны иметь возможность доступаhttp://server:3142
в настоящее время. /etc/apt-cacher/apt-cacher.conf
содержит все настройки. Настройте их в соответствии с вашими потребностями.- Импортировать локальный кеш:
sudo /usr/share/apt-cacher/apt-cacher-import.pl /var/cache/apt/archives
- Смонтируйте установочный компакт-диск:
sudo mount -o loop /home/username_or_other_path/ubuntu-9.10-rc-alternate-i386.iso /media/cdrom0
и импортируем кеш CD:sudo /usr/share/apt-cacher/apt-cacher-import.pl -R -r /media/cdrom0
,
Конфигурация на стороне клиента:
- Sources.list: измените все URL, чтобы они указывали на URL вашего сервера.
(То есть.
deb http://apt-cacher-server:3142/archive.ubuntu.com/ubuntu/
) (измените 1 клиента и, если он работает, скопируйте его на все другие системы)
2а. Использовать в качестве прокси для APT: статическая конфигурация. В терминале введите:sudo nano /etc/apt/apt.conf.d/01proxy
Добавлять:Acquire::http::Proxy "http://<IP address or hostname of the apt-cacher server>:3142";
2b. Использовать в качестве прокси для APT: Конфигурация роуминга: см. Ссылку вверху для настройки и сценария.
не проверенный мной, но кто-то на работе использовал эту страницу, чтобы настроить ее для себя.
edit: Об ошибке: очевидно, что функция переименования Perl не может перемещать файлы между устройствами, и именно так импорт и кеш лежат на диске.
Опции: 1. Используйте параметр -s (только создает символические ссылки). 2. Перед импортом вручную переместите файлы на одно и то же устройство.
У меня никогда не было работающего apt-cachers, поэтому я спросил Майкла Фогта, можем ли мы предоставить простую в использовании конфигурацию squid именно для этого, и появился squid-deb-proxy.
Это очень легко установить и не требует настройки на клиентской части, кроме установки клиентского пакета.
Инструкции по его использованию находятся здесь:
Я думаю, что прозрачный прокси, как Squid, сделает работу легко.