Par Julius, le 14/06/2007 à 11:05.
Finalement le blog ne sera pas celui du SambreLUG mais le mien. En effet, il a été décidé qu'il était
plus cohérent d'utiliser un ensemble d'outils compatibles entre eux et ne pas
avoir des modules séparés comme cela aurait été le cas avec ce DotClear.
Aujourd'hui je vais donc vous expliquer comment rapatrier les dépots Ubuntu
pour ensuite les graver sur DVD. Cette méthode peut être adaptée à d'autres
versions que Feisty, à d'autres architectures que i386 ainsi qu'à d'autres
distributions utilisant des paquets deb.
Matériel nécessaire :
- Environ 35 go d'espace libre (le disque-dur externe est un très bon
choix)
- 4 DVD
- De la patience
Je vous propose donc de réaliser ceci en 4 étapes distinctes : Créer un
miroir local des dépots, Préparer les fichiers à être mis sur 4 DVD, Copier les
paquets adéquats dans les dossiers de DVD, Graver les DVD's.
1) Créer un miroir local des dépots
En effet, il va vous falloir télécharger l'ensemble des dépots Ubuntu et
créer un dépot local. Cette partie est largement inspirée du blog de racoon97 mais je vous remet la démarche à faire pour
que vous ayiez l'ensemble des démarches à faire sur une page unique.
Pour ce faire, il va falloir installer l'outil
apt-mirror :
sudo apt-get install apt-mirror
Il faut également créer un dossier dans lequel on va copier ce dépot. Dans
ce dossier on crée 3 sous-dossier qui se nomment :
mirror, skel et var. Si on
prend l'exemple que le dossier que l'on veut créer est sur notre disque dur
externe monté dans /media/LACIE :
mkdir /media/LACIE/LINUX && mkdir /media/LACIE/LINUX/mirror skel var
Ensuite, on va configurer cet outil pour que, par exemple, le dépot se copie
sur le disque dur externe (tout autre emplacement est également possible). On
sauvegarde donc d'abord le fichier de configuration initial :
sudo cp /etc/apt/mirror.list /etc/apt/mirror.list.backup
Une fois cette précaution prise, on modifie le fichier en tant que
tel :
gksudo gedit /etc/apt/mirror.list
Dans cet exemple, j'ai copié tous les dépots Main,
Restricted, Universe et Multiverse à partir du
serveur ftp.belnet.be qui est très rapide. Ce qui fait 15,5 go à
copier. Voilà comment j'ai configuré mon fichier :
############# config ##################
#
set base_path /media/LACIE/LINUX
#
# if you change the base path you must create the directories below with write privlages
#
# if you change the base path you must create the directories below with write privileges
#
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
set cleanscript $var_path/clean.sh
## set defaultarch xxxx (votre architecture i386/hppa/powerPC/ia64...)
set defaultarch i386
set nthreads 2
set tilde 0
#
############# end config ##############
deb http://ftp.belnet.be/packages/ubuntu/ubuntu feisty main restricted universe multiverse
Une fois ceci fait, il ne reste plus qu'à lancer apt-mirror et patienter un
bon bout de temps suivant la vitesse de votre connexion (entre 30 minutes et
plusieurs semaines d'attente :-) :
sudo apt-mirror
Remarque : pour mettre à jour votre dépot local, il suffit de
retaper la même commande. Il vérifiera les changements et téléchargera
uniquement les paquets qui ont été modifiés.
Après cette étape assez longue, vous vous retrouvez avec une arborescence de
ce type :

2) Préparer les fichiers à être mis sur 4 DVD's
On va pour cela utiliser l'outil debpartial :
sudo apt-get install debpartial
On crée également un répertoire qui va contenir les DVD. Je l'ai nommé
LINUXDVD/ sur mon disque dur externe. On lance ensuite le programme avec les
options adéquates :
debpartial --nosource --dirprefix=ubuntu --section=main,restricted,universe,multiverse --dist=feisty --size=DVD /media/LACIE/LINUX/mirror/ftp.belnet.be/packages/ubuntu/ubuntu/ /media/LACIE/LINUXDVD
Vous avez maintenant 4 dossier ubuntu0,
ubuntu1, ubuntu2 et ubuntu3
qui contiennent les informations sur les paquets à mettre sur chaque DVD. En
effet, on voit bien qu'il y a, dans notre cas, 4 dossiers par dossier ubuntuX
(main, universe, multiverse et restricted) qui contiennent chacun un
Packages.gz. Il y a donc, en tout et pour tout, 16
Packages.gz ! Il va maintenant falloir copier ces paquets du dossier de
votre dépot local à vos dossier que debpartial vient de créer.
Voilà à quoi ressemble l'arborescence de ce que vous venez de
créer :

3) Copier les paquets adéquats dans les dossiers de DVD
Nous allons maintenant utiliser le script debcopy. Il va falloir créer le
fichier :
gksudo gedit debcopy
Copiez y ce script.
Ce dernier doit être lancé avec ruby. Nous installons donc
le paquet correspondant :
sudo apt-get install ruby
Maintenant nous allons copier les packages qui correspondent aux
informations que nous pouvons trouver dans les Packages.gz que debpartial nous
a créé. Attention cette opération est assez longue elle aussi.
ruby debcopy /media/LACIE/LINUX/mirror/ftp.belnet.be/packages/ubuntu/ubuntu/ /media/LACIE/LINUXDVD/ubuntu0/
ruby debcopy /media/LACIE/LINUX/mirror/ftp.belnet.be/packages/ubuntu/ubuntu/ /media/LACIE/LINUXDVD/ubuntu1/
ruby debcopy /media/LACIE/LINUX/mirror/ftp.belnet.be/packages/ubuntu/ubuntu/ /media/LACIE/LINUXDVD/ubuntu2/
ruby debcopy /media/LACIE/LINUX/mirror/ftp.belnet.be/packages/ubuntu/ubuntu/ /media/LACIE/LINUXDVD/ubuntu3/
4) Graver les DVD
Ici je vous laisse faire, vous devez graver le contenu de ubuntu0 sur un DVD
et répêter l'opération pour les 3 autres dossiers.
Vous voilà enfin en possession des dépots Ubuntu sur DVD. Vous pouvez
maintenant les utiliser partout où il n'y a pas d'accès internet 
Il suffit d'un coup de :
sudo apt-cdrom add
pour pouvoir accéder aux paquets qui sont sur vos 4 DVD's.