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
, lucid
et main
.
Et bien sûr, my /etc/apt/sources.list
contient 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 )
trusty
sources de paquets Ubuntu , puis ajouter temporairement utopic
à mon sources.list
ordinateur 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-helpers
nous mentirons à propos de la liste de paquets d'origine et énoncerons apt-cache policy init-system-helpers
l'é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 policy
voir aussi superuser.com/a/236605/61370
apt-cache policy
C’est bien, mais il faut parfois apt-cache showpkg
comparer les sommes MD5 du paquet. Voir aussidebsums --changed
policy
option 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
, showpkg
et show
maintenant, 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 --help
Autres 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 xxx
semble identique à apt-cache policy xxx
, peut-être que cela aurait dû être un commentaire à la place. Ou du moins, mentionnez qu'il apt show
semble nécessaire de -a
changer 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.