Как я могу заставить pbuilder использовать мой экземпляр apt-cacher-ng?
У меня есть сервер apt-cacher-ng в сети LAN, и мне было интересно, как я могу "заставить" pbuilder
использовать его (для ускорения сборки пакетов).
Типичная настройка клиентской части кэша происходит примерно так:
В /etc/apt/apt.conf
:
Acquire::http { Proxy "http://servername:3142"; };
3 ответа
Как это:
$ sudo pbuilder --login --save-after-login
# echo 'Acquire::http { Proxy "http://servername:3142"; };' > /etc/apt/apt.conf.d/02proxy
# exit
$
В качестве альтернативы, вы можете использовать --execute
опция:
$ sudo pbuilder --execute --save-after-exec -- /tmp/setup-apt-proxy.sh
... где /tmp/setup-apt-proxy.sh
содержит команды для создания /etc/apt/apt.conf.d/02proxy
,
Если вы установите export http_proxy=http://your-proxy:8080/
в ~/.pbuilderrc
он будет использовать этот прокси для загрузки пакета.
Я только попробовал это на моей установке, и это работало. Насколько я могу судить по интернет-трафику, мне не нужно ничего загружать во время работы pbuilder create
,
Приятно то, что этот способ также работает при создании архива, а не только после его создания и изменения.
Я использовал аргумент --mirror, например:
sudo pbuilder create --debootstrapopts --variant=buildd --configfile ~/.pbuilderrc --mirror http://localhost:3142/us.archive.ubuntu.com/ubuntu/ main restricted universe multiverse
проверьте кэширование попаданий на прокси:
$ tail -f /var/log/apt-cacher/access.log
Thu Dec 19 19:16:33 2013|26140|::ffff:127.0.0.1|HIT|1272844|us.archive.ubuntu.com_ubuntu_dists_precise_main_binary-amd64_Packages.bz2
Thu Dec 19 19:18:45 2013|26647|::ffff:127.0.0.1|HIT|49563|us.archive.ubuntu.com_ubuntu_dists_precise_Release
Thu Dec 19 19:18:45 2013|26663|::ffff:127.0.0.1|HIT|198|us.archive.ubuntu.com_ubuntu_dists_precise_Release.gpg
Thu Dec 19 19:18:46 2013|26707|::ffff:127.0.0.1|HIT|1272844|us.archive.ubuntu.com_ubuntu_dists_precise_main_binary-amd64_Packages.bz2