Outils pour utilisateurs

Outils du site


depot_local_debian

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

depot_local_debian [2007/12/15 09:13] (Version actuelle)
tyrtamos créée
Ligne 1: Ligne 1:
 +====== Créer un dépot local pour gérer les paquets isolés ======
 +
 +Malgré l'​énorme réserve de paquets "​.deb"​ dans les dépots officiels de debian, on trouve toujours le besoin de télécharger un paquet isolé pour l'​installer.
 +
 +On peut toujours l'​installer isolément, y compris avec nautilus sous root. Mais ce n'est pas très élégant.
 +
 +Il est beaucoup mieux de créer un dépot local.
 +
 +Attention, il ne s'agit pas de créer un "​miroir"​ debian local, mais de gérer de façon simple et organisée quelques paquets isolés.
 +
 +===== Mode opératoire =====
 +
 +==== 1- mettre les paquets isolés dans un répertoire ====
 +
 +Par exemple:
 +
 +  /​ressources/​depotlocal/​
 +
 +A l'​intérieur,​ on peut créer des sous-répertoires dans lesquels on place les paquets. ​
 +
 +Par exemple pour ntfs-3g:
 +
 +  /​ressources/​depotlocal/​ntfs-3g/​ntfs-3g_1.328-2_i386.deb
 +  /​ressources/​depotlocal/​ntfs-3g/​libntfs-3g0_1.328-2_i386.deb
 +  /​ressources/​depotlocal/​ntfs-3g/​libfuse2_2.6.3-2_i386.deb
 +  /​ressources/​depotlocal/​ntfs-3g/​fuse-utils_2.6.3-2_i386.deb
 +
 +Pour nxserver:
 +
 +  /​ressources/​depotlocal/​nxserver/​nxclient_2.1.0-17_i386.deb
 +  /​ressources/​depotlocal/​nxserver/​nxnode_2.1.0-22_i386.deb
 +  /​ressources/​depotlocal/​nxserver/​nxserver_2.1.0-22_i386.deb
 +  ​
 +Et pour webmin:
 +
 +  /​ressources/​depotlocal/​webmin/​webmin_1.360_all.deb
 +
 +==== 2- créer un script shell pour mettre à jour le dépot ====
 +
 +Dans le répertoire "​depotlocal",​ on crée un script shell appelé, par exemple, "​updatedepot"​. Ce script va créer (ou recréer s'il existe déjà) le fichier "​Packages"​. Ce fichier décrira les paquets présents dans le dépot. Ce n'est pas utile que ce fichier texte soit compressé: on ne gérera que quelques paquets (disons moins de 50). Et le fait qu'il ne soit pas compressé facilitera sa consultation.
 +
 +<​code>​
 +#!/bin/sh
 +#
 +# script shell pour mettre a jour un depot local
 +# (a lancer dans le repertoire du depot)
 +#
 +find . -name "​*.deb"​ > temp 
 +dpkg-scanpackages . temp > Packages
 +rm temp
 +</​code>​
 +
 +On rend ce script exécutable. On peut le faire avec nautilus sous root ou konqueror sous root, ou en console sous root avec:
 +
 +  # chmod a+x /​ressources/​depotlocal/​updatedepot
 +
 +Pour la 1ère fois et à chaque fois qu'on modifie le contenu du dépot, il faut lancer l'​exécution du script. ​
 +
 +Dans une console sous root:
 +
 +  # cd /​ressources/​depotlocal
 +  # ./​updatedepot
 +
 +Pour l'​exemple ci-dessus, cela donne les sorties suivantes:
 +
 +<​code>​
 + ** Paquets dans l'​archive mais pas dans le fichier d'​override : **
 +  fuse-utils libfuse2 libntfs-3g0 ntfs-3g nxclient nxnode nxserver
 +  webmin
 +
 +8 entrées écrites dans le fichier Packages.
 +</​code>​
 +
 +On peut aussi lancer l'​exécution de ce script par une icône placée sur le bureau, ce qui fait que nous n'​aurons plus besoin de la console pour la gestion ultérieure du dépot local.
 +
 +==== 3- ajouter l'​adresse du dépot local à la liste des dépots ====
 +
 +Dans le fichier texte /​etc/​apt/​sources.list,​ on ajoute:
 +
 +  deb file:/​ressources/​depotlocal ./
 +
 +Il faut, bien entendu demander à votre programme de gestion de package la mise à jour: 
 +
 +=> avec synaptic, c'est "​recharger"​ (bouton en haut à gauche)
 +
 +
 +
 +A l'​installation de l'un de ces paquets, il restera toujours un message d'​alerte venant de l'​absence de clé du dépot, mais si vous êtes sûr de ce que vous avez téléchargé,​ ce n'est pas un problème.
 +
 +Lorsque l'un de ces paquets devra être modernisé, il suffira d'​ajouter la nouvelle version (sans obligation d'​effacer la précédente):​ c'est la version la plus récente qui sera prise en compte.
 +
 +
 +Et c'est tout!
 +
 +Amusez-vous bien!
  
depot_local_debian.txt · Dernière modification: 2007/12/15 09:13 par tyrtamos