Existe-t-il une méthode ou une commande permettant de déterminer de quel référentiel provient un paquet?
Existe-t-il une méthode ou une commande permettant de déterminer de quel référentiel provient un paquet?
Réponses:
dpkg -s <package>- vous permet de trouver la version de ce que vous avez installée. ( source )apt-cache showpkg <package>- affichera une liste des versions du paquet disponible. Pour chaque version, la source du package, sous la forme d'un nom de fichier d'index, sera indiquée.Si vous voulez trouver la source du paquet actuellement installé, vous aurez besoin de la sortie de dpkg -s <package>. Sinon, vous pouvez simplement regarder la version la plus récente en sortie apt-cache showpkg <package>.
$ dpkg -s liferea
Package: liferea
Status: install ok installed
Priority: optional
Section: web
Installed-Size: 760
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Architecture: i386
Version: 1.6.2-1ubuntu6
...
$ apt-cache showpkg liferea
Package: liferea
Versions:
1.6.2-1ubuntu6.1 (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid-updates_main_binary-i386_Packages)
Description Language:
File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid-updates_main_binary-i386_Packages
MD5: 557b0b803b7ed864e6d14df4b02e3d26
1.6.2-1ubuntu6 (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid_main_binary-i386_Packages) (/var/lib/dpkg/status)
Description Language:
File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid_main_binary-i386_Packages
MD5: 557b0b803b7ed864e6d14df4b02e3d26
...
Dès la première commande, je peux voir que la version 1.6.2-1ubuntu6 de Liferea est installée. À partir de la deuxième commande, je peux voir que cette version est répertoriée dans /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid_main_binary-i386_Packages.
Sans trop d' effort, je peux en déduire que la ligne de source contient archive.ubuntu.com, ubuntu, lucidet main.
Et bien sûr, my /etc/apt/sources.listcontient la ligne suivante.
deb http://archive.ubuntu.com/ubuntu lucid main universe restricted multiverse
apt-cache policy <package name>(de: superuser.com/a/236605/37279 )
trustysources de paquets Ubuntu , puis ajouter temporairement utopicà mon sources.listordinateur afin d'installer la version 1.20ubuntu3 de init-system-helpers, puis supprimer à nouveau le référentiel de mon ordinateur sources.list, apt-cache showpkg init-system-helpersnous mentirons à propos de la liste de paquets d'origine et énoncerons apt-cache policy init-system-helpersl'évident.
Utilisez la commande suivante. Il a un meilleur rendement:
apt-cache policy <Package Name>
Pour Ubuntu 16.04 et les versions ultérieures, il existe un moyen plus simple de le faire:
apt policy <Package Name>
apt-cache policyvoir aussi superuser.com/a/236605/61370
apt-cache policyC’est bien, mais il faut parfois apt-cache showpkgcomparer les sommes MD5 du paquet. Voir aussidebsums --changed
policyoption est la plus utile pour comparer avecsources.list
apt policy <package-name>méthode encore plus simple peut être utilisée à partir de 16.04LTS. Une fois que 14.04LTS devient EOL'd en 2018, cette réponse peut être modifiée pour utiliser la commande la plus récente.
apt sur Ubuntu 16.04+À côté apt-cache policy, showpkget showmaintenant, nous avons un plus simple, avec des sous-commandes faciles à retenir: apt(ne pas confondre avec classique apt-*):
apt policy <package>
Ou l'alternative avec plus d'informations apt show <package>, ligne commençant par "APT-Sources:" .
Description: ce paquet fournit des outils de ligne de commande pour la recherche et la gestion, ainsi que la recherche d'informations sur les paquets, ainsi qu'un accès de bas niveau à toutes les fonctionnalités de la bibliothèque libapt-pkg. Ceux - ci comprennent: apt-get, apt-cache, apt-cdrom, apt-config, apt-key.
apt --helpAutres sous-commandes faciles à retenir:
apt list - liste les paquets en fonction des noms de paquetsapt search - rechercher dans les descriptions de paquetsapt show - Afficher les détails du forfaitapt update - mettre à jour la liste des paquets disponiblesapt install - installer des paquetsapt remove - supprimer les paquetsapt purge- supprimer les packages et les fichiers de configuration :
Supprimer un paquet supprime toutes les données empaquetées, mais laisse généralement de petits fichiers de configuration (modifiés) derrière, au cas où la suppression serait un accident. En émettant simplement une demande d'installation pour le paquet supprimé accidentellement, sa fonction sera restaurée comme auparavant. D'autre part, vous pouvez vous débarrasser de ces restes en appelant purge, même sur les paquets déjà supprimés. Notez que cela n’affecte pas les données ou la configuration stockées dans votre répertoire de base.
apt upgrade - mettre à jour le système en installant / mettant à jour des paquets
apt full-upgrade - mettre à jour le système en supprimant / installant / mettant à jour les paquetsapt edit-sources - éditer le fichier d'information sourceapt policy xxxsemble identique à apt-cache policy xxx, peut-être que cela aurait dû être un commentaire à la place. Ou du moins, mentionnez qu'il apt showsemble nécessaire de -achanger de "disques" à partir d'autres sources
Malheureusement, ces informations ne sont pas enregistrées lors de l'installation du package. Vous pouvez deviner de manière décente si le référentiel est toujours dans la liste des sources et qu'il contient toujours le package:
grep -l PKG /var/lib/apt/lists/*
Même Synaptic ne peut pas dire si vous désactivez le référentiel et le mettez à jour.