Bir paketin hangi depodan geldiğini nasıl öğrenebilirim?

114

Bir paketin hangi depodan geldiğini anlatabilecek bir yöntem veya komut var mı?

    
sordu dfme 20.10.2010 22:43

6 cevap

84

Gerekli Komutlar:

  • dpkg -s <package> - yapmanızı sağlar bunun sürümünü bul yükledin ( kaynak )
  • apt-cache showpkg <package> - yapacak Sürümlerin listesini göster Paket mevcut. Her versiyon için paketin kaynağında bir dizin dosya adı formu, olacak Verilen.

Şu anda yüklü olan paketin kaynağını bulmak istiyorsanız, dpkg -s <package> çıkışına ihtiyacınız olacak. Aksi takdirde, en yeni sürüm çıktısına apt-cache showpkg <package> oranında bakabilirsiniz.

Örnek:

$ dpkg -s liferea
Package: liferea
Status: install ok installed
Priority: optional
Section: web
Installed-Size: 760
Maintainer: Ubuntu Developers <[email protected]>
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
...

İlk komuttan, Liferea sürüm 1.6.2-1ubuntu6'nın yüklü olduğunu görebiliyorum. İkinci komuttan, bu sürümün /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid_main_binary-i386_Packages dizininde listelendiğini görebiliyorum.

Çok fazla çaba harcamadan, kaynak satırın archive.ubuntu.com , ubuntu , lucid içerdiğini söyleyebilirim. main .

Ve, kesinlikle, /etc/apt/sources.list 'si şu satırı içerir.

deb http://archive.ubuntu.com/ubuntu lucid main universe restricted multiverse
    
verilen cevap mac9416 20.10.2010 23:49
84

Aşağıdaki komutu kullanın. Daha iyi çıktı:

apt-cache policy <Package Name>

Ubuntu 16.04 ve sonrası için bunu yapmak için daha kısa bir yol var:

apt policy <Package Name>
    
verilen cevap SuB 20.09.2013 08:21
6

Ne yazık ki, paket yüklemesi sırasında bu bilgi kaydedilmiyor. Depo hala kaynak listesinde yer alıyorsa ve deponun hala paketi varsa iyi bir tahminde bulunabilirsiniz:

grep -l PKG /var/lib/apt/lists/*

Hatta synaptic, deposu devre dışı bırakıp güncellemediğinizi söyleyemez.

    
verilen cevap kanaka 20.10.2010 23:37
4
sudo grep *packagename* /var/lib/apt/lists/* | grep "Filename:"

source

    
verilen cevap sBlatt 20.10.2010 23:29
2

Ubuntu'da apt 16.04 +

apt-cache , policy ve showpkg gibi show parametresinin yanında artık daha basit, hatırlanması kolay parametrelerimiz var: apt (klasik apt-* ile karıştırmayın):

apt policy <package> 

veya daha fazla bilgi apt show <package> ile alternatif, "APT-Sources:" ile başlayan satır.

Açıklama: Bu paket, libapt-pkg kütüphanesinin tüm özelliklerine düşük seviyeli erişim olarak paketler hakkında bilgi aramak ve yönetmek için komut satırı araçları sağlar. Bunlar: apt-get , apt-cache , apt-cdrom , apt-config , apt-key .

apt --help 'sinden temel komutlar

Diğer de parametreleri hatırlamak kolay:

  • list - paketleri paket adlarına göre listele
  • search - paket açıklamalarında arama
  • show - paket ayrıntılarını göster
  • update - mevcut paketlerin listesini güncelle
  • install - paketleri kurun
  • remove - paketleri kaldırın
  • upgrade - paketleri yükleyerek / yükselterek sistemi yükseltin
  • full-upgrade - paketleri kaldırıp / yükleyerek / yükselterek sistemi yükseltin
  • edit-sources - kaynak bilgi dosyasını düzenleyin
verilen cevap Pablo Bianchi 01.06.2017 21:27
1

Bu biraz daha doğru:

apt-cache show <packagename> | grep "Version:"

Uygun bir sürümü veya belirli bir sürümü açıkça yüklemediğiniz sürece, en yeni sürüm genellikle yüklenir.

    
verilen cevap mchid 15.03.2015 07:02

Etiketlerdeki diğer soruları oku