Cette commande ne peut lister que le contenu des paquets installés,
dpkg -L PACKAGENAME
mais comment lister le contenu d'un paquet non installé, pour prévisualiser/examiner le paquet ?
Cette commande ne peut lister que le contenu des paquets installés,
dpkg -L PACKAGENAME
mais comment lister le contenu d'un paquet non installé, pour prévisualiser/examiner le paquet ?
Pour tous ceux qui cherchent encore ce problème en janvier 2017, il est possible de faire des choses sympas avec les versions récentes d'apt et dpkg dans Debian 8.5 sans télécharger quoi que ce soit.
Liste du contenu du fichier Deb sans téléchargement :
Trouvez d'abord l'url complète du fichier deb :
root@debian:apt-get --print-uris download yade
'http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb' yade_2016.06a-7_amd64.deb 1621148 SHA256:26c0d84484a92ae9c2828edaa63243eb764378d79191149970926aa3ec40cdd4
PS : le commutateur --print-uris imprime l'url du paquet deb mais deb n'est pas téléchargé.
Affichez ensuite le contenu du paquet deb sans le télécharger :
root@debian:curl -sL -o- "http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb" |dpkg-deb -c /dev/stdin
drwxr-xr-x root/root 0 2016-12-10 22:18 ./
drwxr-xr-x root/root 0 2016-12-10 22:18 ./usr/
drwxr-xr-x root/root 0 2016-12-10 22:18 ./usr/bin/
-rwxr-xr-x root/root 13184 2016-12-10 22:18 ./usr/bin/yade
.........................more files listed bellow ......................
PS : Le même résultat peut être obtenu avec
root@debian:dpkg -c <(curl -sL -o- "http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb")
Extrayez un fichier du paquet deb ci-dessus, sans téléchargement.
Par exemple, nous voulons lire la page de manuel du paquet yade sans installer ce paquet et sans même télécharger le paquet deb.
Nom de fichier de la page de manuel dans le paquet deb comme conseillé par dpkg -c
es ./usr/share/man/man1/yade.1.gz
Pour lire la page de manuel à la volée :
root@debian:curl -sL -o- "http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb" |dpkg-deb --fsys-tarfile /dev/stdin |tar -xO ./usr/share/man/man1/yade.1.gz |man /dev/stdin
La page de manuel s'affiche correctement avec l'application man.
PS : Les tuyaux ci-dessus ne fonctionnent pas avec la commande ar.
root@debian:apt --version --> apt 1.4~beta2 (amd64)
root@debian:dpkg --version --> Debian 'dpkg' package management program version 1.18.18 (amd64).
root@debian:man --version --> man 2.7.6.1
root@debian:tar --version --> tar (GNU tar) 1.29
Il semble que ce ne soit pas possible avant de l'installer d'abord ou d'extraire la liste à partir de la page d'accueil. .deb
fichier.
Essayez la commande suivante :
dpkg --contents <(curl -s $(apt-get install --yes --no-download --reinstall --print-uris language-pack-en | tail -n1 | grep -o "http[^']\+"))
Changement language-pack-en
avec le nom de votre paquet.
Il se lit comme suit .deb
extrait via curl
et exécuter dpkg --contents FILE
sur elle.
Vous pouvez également vérifier le contenu sans télécharger le fichier du paquet.
Donc si vous connaissez l'URL de .deb
la commande Shell suivante listera tous les fichiers du paquet :
dpkg -c <(curl -sL "http://httpredir.debian.org/debian/pool/main/a/avis/avis_1.2.2-4_all.deb")
Paramètres Curl : -s
- silencieux, -L
- suivre les liens déplacés.
Si vous ne connaissez pas l'URL, récupérez-la par : apt --print-uris
par exemple
apt --print-uris install avis | grep avis
Bien qu'il ne s'agisse pas exactement d'un moyen de lister directement les fichiers d'un paquet deb, vous pouvez vous rendre à l'adresse suivante https://www.debian.org/distrib/packages pour rechercher le forfait souhaité, puis vers le bas de la page suivante, cliquez sur le bouton liste de fichiers lien trouvé par rapport à l'architecture souhaitée. La page qui suit vous donne une liste des fichiers que l'installation de ce paquet placera dans votre système.
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.
0 votes
Similaire sur Ubuntu : askubuntu.com/questions/32507/