Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
linuxaddict:administrer:aptcacherng [12/03/2022, 16:53] – [Installation] Claude Clerc | linuxaddict:administrer:aptcacherng [26/07/2023, 19:37] (Version actuelle) – [Préparation] Claude Clerc | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag> | ||
====== apt-cacher-ng le proxy-cache de paquets pour un LAN ====== | ====== apt-cacher-ng le proxy-cache de paquets pour un LAN ====== | ||
- | ===== Installation ===== | + | Apt-cacher-ng (ou plus familièrement //acng//) est un proxy-cache de paquets Debian (fichiers .deb). |
Tout est parfaitement expliqué [[https:// | Tout est parfaitement expliqué [[https:// | ||
Ligne 6: | Ligne 7: | ||
En résumé et en prenant en compte les paquets spécifiques à LinuxMint : | En résumé et en prenant en compte les paquets spécifiques à LinuxMint : | ||
- | ==== Préparation | + | ===== Sur le serveur local ===== |
- | Sur un ordinateur sur lequel LinuxMint | + | Par la suite, il est convenu que ce serveur tourne sous Debian. |
- | | + | ==== Installation ==== |
+ | Rien de plus simple | ||
+ | | ||
- | Cette commande crée un fichier | + | ==== Miroirs de Linux Mint ==== |
+ | Vous devez installer le paquet | ||
- | ==== Sur le serveur local ==== | + | Vérifiez à l'aide votre navigateur, en visitant la page [[https:// |
- | === Installation === | + | cd |
- | Rien de plus simple | + | export MMV=1.2.4 |
- | | + | wget https:// |
+ | sudo dpkg -i mint-mirrors_${MMV}_all.deb | ||
+ | | ||
- | === Transfert du fichier mint_mirrors === | + | Créez un fichier '' |
- | Copier le fichier '' | + | grep -vE '^#' |
- | === Connaître l'IP de votre serveur === | + | Copiez ensuite le fichier '' |
+ | sudo cp mint_mirrors / | ||
+ | |||
+ | ==== Connaître l'IP de votre serveur | ||
Pour connaître l'IPv4 de votre serveur : | Pour connaître l'IPv4 de votre serveur : | ||
ip a | grep -A 1 -B 1 ether | grep inet | awk ' | ip a | grep -A 1 -B 1 ether | grep inet | awk ' | ||
Ligne 26: | Ligne 35: | ||
- | Pour connaître l'IPv6 de votre serveur : | + | Pour connaître l'IPv6 de votre serveur |
ip a | grep -A 3 -B 1 ether | grep inet6 | awk ' | ip a | grep -A 3 -B 1 ether | grep inet6 | awk ' | ||
La réponse est un ensemble de 8 nombres hexadécimaux, | La réponse est un ensemble de 8 nombres hexadécimaux, | ||
- | === Configuration === | + | |
+ | L'IP que vous choisirez (généralement l' | ||
+ | ==== Configuration | ||
Éditer avec les droits root le fichier de configuration ''/ | Éditer avec les droits root le fichier de configuration ''/ | ||
+ | Vérifier et dé-commenter les lignes suivantes, en supprimant l' | ||
+ | <sxh plain> | ||
+ | |||
+ | LogDir: / | ||
+ | |||
+ | SupportDir: / | ||
+ | |||
+ | Port:3142 | ||
+ | |||
+ | BindAddress: | ||
+ | |||
+ | Remap-debrep: | ||
+ | Remap-uburep: | ||
+ | [... Commenter les lignes Remap qui ne vous concernent pas ...] | ||
+ | Remap-secdeb: | ||
+ | Remap-mint: file: | ||
+ | |||
+ | ReportPage: acng-report.html | ||
+ | |||
+ | ExThreshold: | ||
+ | |||
+ | FollowIndexFileRemoval: | ||
+ | |||
+ | VfilePatternEx: | ||
+ | |||
+ | SVfilePatternEx: | ||
+ | |||
+ | LocalDirs: acng-doc / | ||
+ | </ | ||
+ | |||
+ | ==== Relancer le service apt-cacher-ng ==== | ||
+ | sudo systemctl restart apt-cacher-ng.service | ||
+ | |||
+ | Pour vérifier que ce service fonctionne bien : | ||
+ | sudo systemctl status apt-cacher-ng.service | ||
+ | |||
+ | Dans la réponse à cette commande doit apparaître : '' | ||
+ | |||
+ | ==== Connaître la taille de votre cache ==== | ||
+ | Sur le serveur : | ||
+ | du -sh / | ||
+ | |||
+ | ==== Consulter les logs ==== | ||
+ | Sur le serveur, cette commande donne la liste des logs, du plus récent au plus ancien : | ||
+ | ls -lth / | ||
+ | |||
+ | |||
+ | ==== Pre-chaching (optionnel) ==== | ||
+ | Le pre-caching consiste à vérifier régulièrement (par exemple chaque heure) si des mises à jour de paquets sont disponibles et, si tel est le cas, de les télécharger sur le serveur afin de les rendre disponibles immédiatement. Ainsi, même le premier de vos ordinateurs qui demandera une mise à jour l' | ||
+ | |||
+ | === Préparation === | ||
+ | Il s'agit de décider quelles mises à jour seront vérifiées et pré-téléchargées. | ||
+ | |||
+ | Sur le serveur : | ||
+ | cd / | ||
+ | ls -d */ | egrep -v ^_ | ||
+ | La liste des caches s' | ||
+ | <sxh bash> | ||
+ | debrep/ | ||
+ | live.linuxmint.com/ | ||
+ | mint/ | ||
+ | ports.ubuntu.com/ | ||
+ | ppa.launchpad.net/ | ||
+ | security.ubuntu.com/ | ||
+ | uburep/ | ||
+ | </ | ||
+ | |||
+ | Supposons que vous soyez intéressé par les mises à jour de '' | ||
+ | |||
+ | Listez les contenus des sous-dossiers '' | ||
+ | ls mint/dists/ security.ubuntu.com/ | ||
+ | Exemple de retour : | ||
+ | <sxh bash> | ||
+ | uma una vanessa | ||
+ | |||
+ | security.ubuntu.com/ | ||
+ | focal-security | ||
+ | |||
+ | uburep/ | ||
+ | focal focal-backports | ||
+ | </ | ||
+ | |||
+ | La version '' | ||
+ | |||
+ | Modifiez alors, avec les droits root, le fichier ''/ | ||
+ | |||
+ | '' | ||
+ | |||
+ | Remarque : L' | ||
+ | |||
+ | Une fois cette modification effectuée, relancez le service apt-cacher-ng : | ||
+ | sudo systemctl restart apt-cacher-ng.service | ||
+ | |||
+ | === Effectuer un premier pre-caching manuel === | ||
+ | Visitez avec un navigateur (à partir d'un de vos ordinateurs) la page : '' | ||
+ | |||
+ | Rendez-vous à la section //Guided precaching (Mirroring)// | ||
+ | * Calculate and display download size (//Calculer et afficher la taille du téléchargement// | ||
+ | * Download package files (initialement décochée) (// | ||
+ | * Restrict to packages related to previously cached files (// | ||
+ | |||
+ | Cliquez alors sur le bouton [Start Mirroring]. | ||
+ | |||
+ | La page suivante met du temps à se télécharger. Elle vous indique pas à pas les actions effectuées. Une fois complètement affichée, votre cache est à jour. | ||
+ | |||
+ | === Automatiser le pre-caching === | ||
+ | S'il fallait toujours effectuer manuellement un pre-caching pour mettre à disposition de tous vos ordinateurs la dernière version des paquets, cela perdrait vite de son intérêt. | ||
+ | |||
+ | Pour automatiser ce pre-caching et l' | ||
+ | <sxh bash># | ||
+ | wget " | ||
+ | exit 0 | ||
+ | </ | ||
+ | |||
+ | Rendez ce script exécutable : | ||
+ | sudo chmod +x / | ||
+ | |||
+ | Relancez le service cron : | ||
+ | sudo systemctl restart cron.service | ||
+ | |||
+ | C'est fait ! | ||
+ | ===== Sur chaque ordinateur du réseau local ===== | ||
+ | |||
+ | ==== Installer netcat ==== | ||
+ | apt install -y netcat | ||
+ | |||
+ | Cela permet d' | ||
+ | |||
+ | ==== Configuration d'apt ==== | ||
+ | '' | ||
+ | |||
+ | Créez avec les droits root le script ''/ | ||
+ | <sxh bash># | ||
+ | # Renseigner correctement les deux lignes suivantes. | ||
+ | proxy=IP_DU_SERVEUR | ||
+ | port=3142 | ||
+ | |||
+ | # Ne rien modifier ci-dessous. | ||
+ | synconf=/ | ||
+ | |||
+ | nc -zw1 $proxy $port && { | ||
+ | [[ -f $synconf ]] && { | ||
+ | cat $synconf | sed s/useProxy\ \" | ||
+ | } | ||
+ | echo http:// | ||
+ | } || { | ||
+ | [[ -f $synconf ]] && { | ||
+ | cat $synconf | sed s/useProxy\ \" | ||
+ | } | ||
+ | echo DIRECT | ||
+ | } | ||
+ | </ | ||
+ | Remplacez IP_DU_SERVEUR par la valeur déterminée auparavant. | ||
+ | |||
+ | Rendez ce script exécutable : | ||
+ | sudo chmod +x / | ||
+ | |||
+ | Créez le fichier ''/ | ||
+ | <sxh plain> | ||
+ | </ | ||
+ | |||
+ | |||
+ | Vérifier que ce proxy-cache des paquets est bien pris en compte : | ||
+ | apt-config dump | grep Proxy | ||
+ | |||
+ | La réponse doit être exactement la ligne que vous venez d' | ||
+ | |||
+ | Vérifier que tout fonctionne en lançant la commande : | ||
+ | apt update | ||
+ | |||
+ | ==== Configuration de synaptic ==== | ||
+ | Ouvrez le **Gestionnaire de paquets Synaptic** (qui se trouve dans la partie // | ||
+ | |||
+ | Dans Synaptic, menu // | ||
+ | |||
+ | Cliquer sur [Recharger]. | ||
+ | |||
+ | ==== Configuration de mintupdate ==== | ||
+ | La configuration par défaut de mintupdate devrait convenir. | ||
+ | |||
+ | Vérifiez toutefois en ouvrant mintupdate (icône {{mdi> | ||
+ | |||
+ | {{: | ||
+ | |||
+ | C'est fait. | ||
- | ===== En cas de serveur DHCP non maîtrisé | + | ===== Liens ===== |
- | FIXME | + | * [[https:// |
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
---- | ---- | ||
{{counter|today| personne a visité cette page aujourd' | {{counter|today| personne a visité cette page aujourd' |