Apparence
Uubu.fr

Les systèmes Linux, l’open source, les réseaux, l’interopérabilité, etc.
« Il vaut mieux viser la perfection et la manquer que viser l’imperfection et l’atteindre. » (Bertrand Arthur William RUSSEL)
15 mars 2010

package manager apt           gestionnaire de paquets


apt-proxy

apt-proxy

Mise en place d'un proxy de dépôts

   Apt-proxy est un mandataire écrit en python pour apt-get. Il communique via HTTP avec les clients et via HTTP, FTP et rsync vers les serveurs. Il est utile pour limiter la consommation de bande passante Internet utilisé pour les mises à jours par exemple. le fichier de configuration par défaut est /etc/apt-proxy/apt-proxy-v2.conf (modifiable avec l'option -c ou --config-file=)

configuration

   il est divisé en plusieurs sections, chacune définissant une ressource. La section DEFAULT s'applique à toutes les sections.

[DEFAULT]

address Adresse IP sur laquelle apt-proxy sera à l'écoute des requêtes, s'il y'a plusieurs adresses, séparez-les par un espace.
port Port TCP pour l'écoute des requêtes
min_refresh_delay les fichiers Packages et les autres fichiers de contrôle ne seront pas rafraîchis tant qu'ils n'auront pas dépassé cet âge (off pour désactiver)
timeout Délai d'attente d'E/S maximale pour les transferts (défaut 30s)
cache_dir répertoire de cache (défaut : /var/cache/apt-proxy)
cleanup_freq période entre les tentatives de nettoyage : suppression des fichier › max_age, analyse des répertoires de cache, mise à jour des tables internes, etc (off pour désactiver)
max_age age maximal des fichiers avant leur effacement du cache (off pour désactiver)
max_versions nombre maximum de version d'un paquet debian à conserver (par distribution) (off pour désactiver)
passive_ftp pour utiliser le ftp passif utiliser on, pour un actif : off (défaut : on)
http_proxy [username:passwrd@host:port] pour utiliser un proxy
dynamic_backends apt-proxy ajoutera les dorsaux HTTP dynamiquement, s'ils ne sont pas définit mettre à off pour restreindre les dorsaux disponibles à ceux listés dans le fichier de configuration (défaut : on)
disable_pipelining utiliser la canalisation HTTP pour récupérer plusieurs fichiers en une fois. laisser désactivé pour le moment.
bandwidth_limit = valeur limite la bande passante à valeur octets pas seconde lors du téléchargement sur un serveur. ne s'applique qu'à http et rsync (défaut : pas de limite)

[RESSOURCES]

timeout Supplanter le temps global d’expiration
backends = protocole ://serveur/répertoire [...] Une liste d’une ou plusieurs URL des serveurs hébergeant les paquets debian.

        Protocole protocole à utiliser parmi http, ftp et rsync
        Serveur nom d’hôte du miroir à contacter
        Répertoire nom du répertoire où ajouter des demandes pour ce serveur

passive_ftp Supplanter la configuration globale de passive_ftp
bandwidth_limit Spécifie une limite de bande passante pour les téléchargements utilisant cette ressource
http_proxy [nom d’utilisateur:mot de passe@]nom d’hôte:port
min_refresh_delay Surcharge la variable globale « min_refresh_delay » pour cette dorsale.

[CLIENTS]

pour que les clients puissent se connecter au proxy, ils devrons mettre dans /etc/apt/sources.list: si vous avez la section debian comme ceci:
[debian]
backends = http://ftp.fr.debian.org/debian
alors un client utilisera:
deb http://serveur:9999/debian/ lenny main

apt-proxy-import

   permet d'importer les paquets dans le cache d'apt-proxy

        -v, --verbose mode verbeux
        -q, --quiet mode silencieux
        -r, --recursive mode récursif
        -c, --config-file= fichier de configuration d'apt-proxy

        importer depuis le cache apt
        apt-proxy-import /var/cache/apt/archives
        importer depuis le cache apt-move
        apt-proxy-import -r /var/cache/apt-move
       
exemple de fichier de configuration /etc/apt-proxy/apt-proxy-v2.conf
[DEFAULT]
address = 192.168.0.1
    
port = 9999
min_refresh_delay = 1h
complete_clientless_downloads = 1
debug = all:4 db:0
timeout = 15
cache_dir = /var/cache/apt-proxy
cleanup_freq = 1d
max_age = 120d
max_versions = 3
[debian]
timeout = 30
backends = http://ftp.fr.debian.org/debian
http://volatile.debian.org/debian-volatile
min_refresh_delay = 1d
    
[security]
;;Debian security archive
backends = http://security.debian.org
http://security.debian.org/debian-security
min_refresh_delay = 1m
    
[ubuntu]
;;Ubuntu archive
backends = http://archive.ubuntu.com/ubuntu
min_refresh_delay = 15m
    
[ubuntu-security]
;;Ubuntu security updates
backends = http://security.ubuntu.com/ubuntu
min_refresh_delay = 1m