« Vulnérabilité Openssl | Home | e2fsprogs (1.41~WIP-2008-06-17-1) »
Télécharger un paquet deb et ses dépendances
posté par cep le 12 juin 2008
On peut avoir besoin de télécharger en une seule commande un paquet .deb ainsi que toutes ses dépendances, et cela sans les installer.
Plutôt que de faire une recherche, lister les dépendances puis les télécharger en précisant les versions, on peut faire cela plus simplement :
mkdir partial apt-get -o”Dir::Cache::archives=`pwd`” -o”Debug::NoLocking=true” -o”Dir::State::status=/dev/null” -d install le_paquet
Cela va récupérer le paquet en référence ainsi que toutes les dépendances dans le répertoire courant, sans les installer, et même si certaines dépendances sont déjà présentes sur le système.
Le répertoire partial est nécessaire pour la procédure, mais sera vide à la fin de celle-ci.
cep
p.s. affichage de la commande sur deux lignes :
apt-get -o”Dir::Cache::archives=`pwd`” -o”Debug::NoLocking=true” \
-o”Dir::State::status=/dev/null” -d install le_paquet

16 juin 2008 at 11:24
Salut cep,
Quand le but est d’installer/mettre à jour des paquets sur une machine n’ayant pas de connection internet apt-zip se révèle très pratique.
16 juin 2008 at 12:40
Oui, en effet.
Mais cette possibilité tient compte de l’existant, tout comme d’ailleurs le sous-menu inclus dans synaptic, et qui va créer un script afin de récupérer certains paquets depuis une autre machine.
16 juin 2008 at 14:12
Oui, apt-zip tient compte de l’existant, et c’est ce qui fait sa force… Ou sa faiblesse en fonction du but recherché.
25 octobre 2009 at 17:46
Salut,
je viens d’éprouver cette commande. J’ai comme l’impression qu’elle a exactement le même but que :
apt-get install –download-only [paquet]
je me trompe ?
5 avril 2010 at 19:19
La commande ne fonctionne pas chez moi. En revanche j’ai écrit rapidement une petite commande pour faire la même chose (il y a sans doute plus élégant) :
aptitude download $(apt-rdepends paquet | grep ‘Depends’ | awk ‘{print $2}’ | sort -u)
Il est nécessaire d’installer apt-rdepends pour l’utiliser