Y aurait-il des effets secondaires négatifs du partage / var / cache / apt / entre deux systèmes?

10

Dans l'intérêt de la conservation de la bande passante, j'envisage de monter un hôte VirtualBox /var/cache/aptcomme /var/cache/aptdans l'invité. L'hôte et l'invité sont Ubuntu 10.10 32 bits. Y aurait-il des conséquences négatives à faire cela?

Je connais les solutions les plus robustes comme apt-proxy, mais je préférerais cette solution plus simple si elle est possible afin d'épargner à l'hôte la surcharge de l'exécution de services supplémentaires.

ændrük
la source

Réponses:

10

Je crois que cela /var/cache/apt/{,src}pkgcache.bincontient les packages installés actuellement.

Au lieu de partager /var/cache/apt/, partagez le /var/cache/apt/archives/répertoire, qui contient des fichiers indépendants. Vous devez faire quelques ajustements, car il /var/cache/apt/archivesest détenu et accessible en écriture uniquement par root. Une option serait le groupe de couchait /var/cache/apt/archivesà apt-cache-writeret en ajoutant le bit setgid dans le répertoire. Ajoutez-vous au apt-cache-writergroupe et définissez-le umasksur quelque chose comme 0002ou 0007au lieu de 0022.

Notez que sudo apt-get cleanefface ce répertoire ( /var/cache/apt/archives).

Lekensteyn
la source
Sur Ubuntu 14, j'ai essayé ceci pour trouver que le verrou exclusif apt était basé sur un fichier dans ce répertoire! (Quoi!? Un fichier de verrouillage dans un répertoire de cache!) Ainsi, le partage du système de fichiers littéral avec une machine virtuelle ou similaire peut ne pas être une bonne solution. Je recommanderais également d'utiliser un service approprié de mise en cache d'apt, discuté en détail ici: askubuntu.com/q/3503/250556
ThorSummoner
4

Plutôt que de partager ce dossier, il sera plus "sain" de créer un référentiel LAN en utilisant APT-CACHER

voici un tutoriel sur ce logiciel

Luciano Facchinelli
la source
Un inconvénient de cette approche est que VirtualBox consommera plus d'espace disque. Cela ne devrait pas être un problème si vous avez un disque dur de 1 To, mais avec de petits SSD, c'est le cas.
Lekensteyn
4

Votre meilleure solution consiste à utiliser Apt-Cacher-NG sur la machine hôte. Vous n'avez pas à vous soucier de consacrer un ordinateur en réseau à aptcacher car il fonctionne comme un programme simple avec une installation / configuration simple. La seule chose à surveiller est la quantité d'espace disque dont vous disposez, mais j'utilise cette configuration depuis un certain temps jusqu'à présent et cela n'a pas posé de problème.

Cela peut sembler étrange, mais vous pouvez également utiliser apt-cacher pour la machine sur laquelle apt-cacher est installé. Cela signifie que si votre machine virtuelle est mise à jour avant votre hôte, elle remplira le cache et l'hôte pourra obtenir le package à partir du cache.

Vous pourrez également voir des statistiques sur la quantité en cache et le taux de réussite en mettant l'URL: "http: // your-apt-cacher-ng-server: 3142" dans votre navigateur (voir ci-dessous).

Une bonne explication simple sur la façon de configurer l'apt-cacher peut être trouvée ici: http://acidborg.wordpress.com/2010/06/24/how-to-install-and-configure-apt-cacher-ng-on -ubuntu-server-10-04 / que je vais coller ci-dessous pour être complet.

  1. Installation: apt-get install apt-cacher-ng
  2. Configuration: modifiez /etc/apt-cacher-ng/acng.confavec le contenu suivant:
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. Redémarrez Apt-Cacher NG: /etc/init.d/apt-cacher-ng restart
  2. Créez sur le reste des machines Debian / Ubuntu du réseau le fichier /etc/apt/apt.conf.d/02proxyavec le contenu suivant:

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

real_ate
la source
Avant de perdre un après-midi sur un morceau particulier de logiciel de mise en cache apt (comme je l'ai fait), je recommande de lire sur askubuntu.com/q/3503/250556 - J'ai eu le moins de problèmes avec squid-deb-proxy, ni apt-cacher (blob perl brut ) ou apt-cacaher-ng (plus beau mess python avec des fichiers de configuration) a très bien fonctionné pour moi sur 14.04 LTS près de l'horodatage de ce message.
ThorSummoner