Selon les tags présents sur cette page, celle-ci n'a pas été vérifiée pour une des versions LTS supportées d'Ubuntu.
Apportez votre aide…

Ceci est une ancienne révision du document !


DokuWiki

Dépôt local

Rédigé par niber, corrigé par yomega, complété par Laurent Bellegarde

Il existe plusieurs situations dans lesquelles il est particulièrement intéressant de créer un dépôt local de logiciels sous forme binaire en .deb comme :

- Une installation sur une machine dépourvue de connexion internet,

- Une installation sur une machine avec une connexion internet lente 56K par simple modem RTC

- Une install-party où il y a beaucoup de machines à installer en même temps avec une connexion internet haut-débit pas suffisamment rapide.

Dans tous les cas, cette technique permet d'éviter de télécharger sur internet des paquets qui sont déjà présent localement dans au moins une machine correctement installée de façon traditionnelle via le net.

1. Créez les répertoires (p.ex vous voulez avoir les debs dans le répertoire monDepot) ~/monDepot/dists/breezy/
cd ~
mkdir -p monDepot/dists/breezy
2. Copiez votre deb dans ~/monDepot/

Il vaut mieux sauvegarder le deb souhaité tout de suite dans ce répertoire, lors du téléchargement.

3. Dans le répertoire monDepot, vous aurez besoin d'un fichier Packages.gz

Ce fichier sera créé automatiquement par un script que vous allez créer. Packages.gz doit en effet contenir les données sur les debs que vous venez de mettre dans le répertoire. Pour faciliter la mise en jour de Packages.gz, créez un script (à l'aide de gedit), par exemple miseAjour.sh :

cd monDepot
gedit miseAjour.sh

Ecrivez-y ces deux lignes:

#!/bin/bash
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz

Quittez gedit (en sauvegardant). Il faut que le script soit executable, c'est-à-dire qu'il aie l'attribut x :

chmod +x miseAjour.sh

Chaque fois que vous allez cliquer sur ce script, le fichier de desriptions sera mis à jour.

4. Il nous faut encore quelques liens symboliques :
  1. dans dists/ il nous faut un lien nommé stable qui renvoi sur breezy
  2. breezy doit contenir:
    • binary-386i –> breezy
    • main –> breezy
    • Packages.gz –> ~/monDepot/Packages.gz

Avec le Noyau 2.6.15.26 de Dapper il semble necessaire d'indiquer le chemin absolu du lien symbolique.

Tout cela, vous pouvez le faire en tapant:

cd ~/monDepot/dists
ln -s breezy stable
ln -s breezy breezy/binary-386i
ln -s breezy breezy/main
ln -s ~/monDepot/Packages.gz breezy/Packages.gz
5. Finalement, nous devons éclairer synaptic sur notre nouveau dépôt :

Dans le menu du synaptic vous saisissez "dépots - ajouter" et cliquez sur "personnaliser" et mettez:

deb file:/home/monNom/monDepot/ stable main

Dès que vous cliquez sur la relecture des dépôts (après le changement que vous venez de faire, synaptic le fait automatiquement) vous avez votre nouveau deb tout joli dans le syinaptic. Pour chaque nouveau deb que vous téléchargez dans monDepot, executez le script miseAjour.sh et faites relire ses dépôts à Synaptic (en cliquant sur le bouton avec les deux flèches) ou par apt-get update.

Autre méthode bien plus simple ici http://www.supinfo-projects.com/fr/2006/creer%5Fdepot%5Fdebian/1/ Cependant cette méthode requière un logiciel dédié.

Vous pouvez aussi utiliser le script suivant: script automatique pour depot local

  • applications/apt/depotlocal.1163756001.txt.gz
  • Dernière modification: Le 18/04/2011, 14:47
  • (modification externe)