Créer et gérer un Miroir Local

De Wiki Dane (ex wikitice)
Aller à : navigation, rechercher

Présentation

Dès que vous disposez de plusieurs machines dans un réseau, il devient très utile de disposer d'un dépôt local (on peut dire aussi miroir local).

Ainsi, les machines du réseau se mettent à jour en local plutôt que sur Internet. Le dépôt, lui, peut être configuré pour se mettre à jour pendant la nuit, libérant ainsi de la bande passante lors de l'utilisation du réseau Internet dans la journée.

Un autre avantage est de pouvoir installer un Debian ou un Ubuntu par le réseau local uniquement en utilisant le démarrage PXE ; le téléchargement des paquets est nettement plus rapide et le système d'exploitation obtenu est directement à jour.

Pour pouvoir installer un dépôt il suffit de disposer d'un ordinateur avec un serveur Web (ou serveur HTTP) et un disque dur assez conséquent : 160 Go parait être une bonne solution suivant le nombre de versions que souhaitez mettre à disposition.

Nous considérerons donc que vous disposez d'un ordinateur dont le nom est alice (n'oubliez pas de l'enregistrer dans le dns local du Slis si vous en avez un) avec Debian stable, ou Ubuntu Server. Si l'enregistrement local n'est pas possible, il faudra utiliser l'adresse IP du dépot local à la place de son nom alice.

Remarque : pour installer Debian sur cette machine, vous pouvez vous reporter à l'article Installer un serveur Debian de ce WikiTice.

Nous vous présentons 2 solutions pour installer et gérer un dépot local : debmirror ou apt-mirror. Si vous ne savez quelle solution adopter, je vous conseille la solution avec apt-mirror qui est plus souple à gérer.

Si les exemples sont donnés avec Debian, il est très simple de les adapter pour Ubuntu.


Solution avec apt-mirror (conseillée)

Cette solution est très simple à mettre en place et la modification des différents paramètres est très souple.

La création du dépôt local se fait en 4 étapes :

* installation d'un logiciel de gestion d'un miroir : apt-mirror
* configuration des paramètres de gestion
* création du dépôt
* programmation de la mise à jour du dépôt local

Les détails de ces différentes étapes se trouvent à la page Utiliser apt-mirror.


Solution avec debmirror

La création du dépôt local se fait en cinq étapes :

* installation d'un serveur HTTP : Apache
* installation d'un logiciel de gestion d'un miroir : debmirror
* création des répertoires du dépôt local
* création d'un script de mise à jour du dépôt local
* programmation de la mise à jour du dépôt local

Les détails de ces différentes étapes se trouvent à la page Utiliser debmirror.


Utilisations du dépôt local

Nous vous présentons ici 3 utilisations d'un dépôt local :

* mise à jour des clients
* installation d'application
* installation d'un système d'exploitation Debian ou Ubuntu


Mise à jour d'un client (solution apt-mirror)

Pour mettre à jour un client, Debian ou Ubuntu, à l'aide du dépôt local, il suffit de modifier le fichier /etc/apt/sources.list du client.

Dans ce qui suit, le serveur servant de miroir local est supposé avoir un enregistrement dns local avec le nom alice (vous êtes bien entendu libre de choisir le nom qui vous semble le plus approprié ;-) ). Si l'enregistrement n'est pas possible, il suffira de remplacer alice par l'adresse IP du dépot local.

Sur un client Debian/Wheezy, sauvegardez son sources.list (mv) à l'aide de la commande suivante :

mv /etc/apt/sources.list /etc/apt/sources.list.old

Éditez un nouveau /etc/apt/sources.list (commande nano /etc/apt/sources.list) et y mettre, dans le cas d'un client Debian/Wheezy, les lignes suivantes :

#############################################
## sources.list complet pour le dépot alice/miroir/ftp.fr.debian.org
## 
## fichier /etc/apt/sources.list
###############################
### wheezy
deb http://alice/miroir/ftp.fr.debian.org/debian/ wheezy main contrib non-free

### ### wheezy-updates
deb http://alice/miroir/ftp.fr.debian.org/debian/ wheezy-updates main contrib non-free

### ### ### ### wheezy-proposed-updates
deb http://alice/miroir/ftp.fr.debian.org/debian/ wheezy-proposed-updates main contrib non-free

### ### ### ### ### wheezy-backports
deb http://alice/miroir/ftp.fr.debian.org/debian/ wheezy-backports main contrib non-free

### ### ### ### ### ### wheezy security
deb http://alice/miroir/security.debian.org/ wheezy/updates main contrib non-free

### ### ### ### ### ### ### wheezy multimedia
deb http://alice/miroir/www.deb-multimedia.org wheezy main non-free

################################################
## Autres dépots : à ne pas mettre dans ce fichier (recommandation)
## créer un fichier spécifique nom_spécifique.list (un fichier par dépôt) dans /etc/apt/sources.list.d/

## fin du sources.list complet pour le dépot alice/miroir/ftp.fr.debian.org
################################################

Enregistrez (Ctrl+O) puis quittez l'éditeur (Ctrl+X).

Prenez ensuite en compte ces changements à l'aide de la commande suivante :

aptitude update

Et pour effectuer une mise à jour manuelle, la commande est :

aptitude safe-upgrade


Mise à jour d'un client (solution debmirror)

Pour mettre à jour un client, Debian ou Ubuntu, à l'aide du dépôt local, il suffit de modifier le fichier /etc/apt/sources.list du client.

Dans ce qui suit, le serveur servant de miroir local est supposé avoir un enregistrement dns local avec le nom alice (vous êtes bien entendu libre de choisir le nom qui vous semble le plus approprié ;-) ). Si l'enregistrement n'est pas possible, il suffira de remplacer alice par l'adresse IP du dépot local.

Sur un client Ubuntu, sauvegardez son sources.list (mv) à l'aide de la commande suivante :

mv /etc/apt/sources.list /etc/apt/sources.list.old

Éditez un nouveau /etc/apt/sources.list (commande nano /etc/apt/sources.list) et y mettre, dans le cas d'un client Ubuntu Hardy, les lignes suivantes :

deb http://alice/depot/ubuntu hardy main universe multiverse restricted
deb http://alice/depot/ubuntu hardy-updates main universe multiverse restricted
deb http://alice/depot/ubuntu hardy-security main universe multiverse restricted

Pour un client Debian Squeeze, faites de même avec les lignes suivantes :

# deb http://ftp.fr.debian.org/debian/ squeeze main

#deb http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
# deb-src http://ftp.fr.debian.org/debian/ squeeze main
## dépot local
deb http://alice/depot/debian/ squeeze main crontrib non-free

deb http://security.debian.org/ squeeze/updates main contrib non-free
# deb-src http://security.debian.org/ squeeze/updates main

# squeeze-updates, previously known as 'volatile'
#deb http://ftp.fr.debian.org/debian/ squeeze-updates main contrib non-free
# deb-src http://ftp.fr.debian.org/debian/ squeeze-updates main
## dépot local
deb http://alice/depot/debian/ squeeze-updates main crontrib non-free

Enregistrez (Ctrl+O) puis quittez l'éditeur (Ctrl+X).

Prenez ensuite en compte ces changements à l'aide de la commande suivante :

aptitude update

Et pour effectuer une mise à jour manuelle, la commande est :

aptitude upgrade



Installer une application

Si vous souhaitez installer une application qui ne figure pas dans les applications installées nativement, une simple commande le permet (à condition évidemment que le paquet correspondant fasse parti de l'ensemble des paquets proposés dans les miroirs Debian ou Ubuntu…).

Il est bien sûr important d'avoir modifié le fichier /etc/apt/sources.list comme cela est indiqué ci-dessus.

Par exemple, mettons que vous souhaitiez installer vlc. La commande est :

aptitude install vlc


Installer Debian par le démarrage PXE

Pour mettre en œuvre cette méthode, il est nécessaire de disposer d'un serveur TFTP, ce qui est le cas si vous avez un serveur SE3 : consultez l'article consacré au module TFTP de ce serveur.

Un article sur le site SambaEduVersailles vous donnera plus de détail sur la mise en place d'une entrée "installation Debian" dans votre menu du serveur TFTP.

Remarque pour Debian : pour mettre en œuvre cette méthode, il est important que la section /main/debian-installer soit présente dans votre dépôt local : à vérifier dans le script mise_a_jour_debian ou le fichier de configuration selon la solution utilisée.


Il est assez simple d'adapter cet article pour installer une distribution Ubuntu.


Ressources

Quelques ressources possibles :

help.ubuntu.com/community/Debmirror

Faire un miroir local debian avec debmirror

Le man de debmirror