Будут ли какие-либо негативные побочные эффекты совместного использования / var / cache / apt / между двумя системами?

10

В целях сохранения пропускной способности я рассматриваю возможность установки хоста VirtualBox /var/cache/aptкак /var/cache/aptв гостевой системе. И хост, и гость - это Ubuntu 10.10 32-bit. Будут ли какие-либо негативные последствия для этого?

Я знаю о более надежных решениях, таких как apt-proxy, но я бы предпочел это более простое решение, если это возможно, чтобы сэкономить хосту накладные расходы на запуск дополнительных сервисов.

ændrük
источник

Ответы:

10

Я считаю, что /var/cache/apt/{,src}pkgcache.binсодержит текущие установленные пакеты.

Вместо того, чтобы делиться /var/cache/apt/, делитесь /var/cache/apt/archives/каталогом, который содержит независимые файлы. Вы должны сделать некоторые настройки, потому что они /var/cache/apt/archivesпринадлежат и доступны для записи только пользователю root. Одним из вариантов будет установка группы /var/cache/apt/archivesв apt-cache-writerи добавление бита setgid в каталог. Добавить себя в apt-cache-writerгруппу и установить что- umaskто вроде 0002или 0007вместо 0022.

Обратите внимание, что sudo apt-get cleanочищает этот каталог ( /var/cache/apt/archives).

Lekensteyn
источник
На Ubuntu 14 я попробовал это, чтобы найти, что исключительная блокировка apt основана на файле в этом каталоге! (Что !? файл блокировки в каталоге кеша!) Поэтому совместное использование буквенной файловой системы с виртуальной машиной или чем-то подобным может быть не лучшим решением. Я бы тоже рекомендовал использовать надлежащий сервис apt-caching, подробно обсуждаемый здесь: askubuntu.com/q/3503/250556
ThorSummoner
4

Вместо того, чтобы делиться этой папкой, будет более "здоровым" создать репозиторий локальной сети, используя APT-CACHER

вот учебник об этом программном обеспечении

Лучано Фаччинелли
источник
Недостатком этого подхода является то, что VirtualBox будет занимать больше дискового пространства. Это не должно быть проблемой, если у вас есть жесткий диск объемом 1 ТБ, но с небольшими твердотельными накопителями это так.
Лекенштейн
4

Лучшее решение - использовать Apt-Cacher-NG на хост-компьютере. Вам не нужно беспокоиться о выделении сетевого компьютера для aptcacher, потому что он работает как простая программа с простой установкой / настройкой. Единственная мысль, на которую стоит обратить внимание, это количество дискового пространства, которое у вас есть, но я уже давно пользуюсь этой установкой, и это не было проблемой.

Это может показаться странным, но вы также можете использовать apt-cacher для машины, на которой установлена ​​apt-cacher. Это означает, что если ваша виртуальная машина обновится до вашего хоста, она заполнит кеш, и хост сможет получить пакет из кеша.

Вы также сможете увидеть статистику о том, сколько кэшируется и какова частота попаданий, поместив URL-адрес: «http: // your-apt-cacher-ng-server: 3142» в браузере (см. Ниже).

Хорошее простое объяснение того, как настроить apt-cacher, можно найти здесь: http://acidborg.wordpress.com/2010/06/24/how-to-install-and-configure-apt-cacher-ng-on -ubuntu-server-10-04 /, который я буду вставлять ниже для полноты.

  1. Монтаж: apt-get install apt-cacher-ng
  2. Конфигурация: отредактируйте /etc/apt-cacher-ng/acng.confсо следующим содержанием:
CacheDir: /var/cache/apt-cacher-ng
LogDir: /var/log/apt-cacher-ng
Port:3142
BindAddress: 0.0.0.0
Remap-debrep: file:deb_mirror*.gz /debian ; file:backends_debian
Remap-uburep: file:ubuntu_mirrors /ubuntu ; file:backends_ubuntu
PidFile: /var/run/apt-cacher-ng/pid
ExTreshold: 4
  1. Перезапустите Apt-Cacher NG: /etc/init.d/apt-cacher-ng restart
  2. Создайте на остальных компьютерах Debian / Ubuntu в сети файл /etc/apt/apt.conf.d/02proxyсо следующим содержимым:

    Acquire::http { Proxy "http://your-apt-cacher-ng-server:3142"; };

real_ate
источник
Прежде чем тратить время на один конкретный кусок программного обеспечения для кэширования apt (как я это сделал), я рекомендую прочитать на askubuntu.com/q/3503/250556 - у меня было меньше всего проблем squid-deb-proxy, ни с apt-cacher (грубая капля perl) ) или apt-cacaher-ng (приятный беспорядок в python с файлами конфигурации) очень хорошо работал для меня на 14.04 LTS около отметки времени этого сообщения.
ThorSummoner