it-swarm-tr.com

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

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

144
dfme

Gerekli Komutlar:

  • _dpkg -s <package>_ - kurduğunuz sürümü bulmanızı sağlar. ( kaynak )
  • _apt-cache showpkg <package>_ - mevcut paketin Sürümlerinin bir listesini gösterir. Her sürüm için paketin kaynağı, bir dizin dosyası adı şeklinde verilecektir.

Şu anda kurulu olan paketin kaynağını bulmak istiyorsanız, _dpkg -s <package>_ çıktısına ihtiyacınız olacaktır. Aksi takdirde, en yeni sürüm çıktısına _apt-cache showpkg <package>_ ile kolayca 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 1.6.2-1ubuntu6 sürümünün kurulu 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_ içinde listelendiğini görebiliyorum.

Çok fazla çaba harcamadan kaynak satırının archive.ubuntu.com, ubuntu, lucid ve main içerdiğini tespit edebilirim..

Ve, elbette, benim _/etc/apt/sources.list_ aşağıdaki satırı içeriyor.

_deb http://archive.ubuntu.com/ubuntu lucid main universe restricted multiverse
_
109
Michael Crenshaw

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

apt-cache policy <Package Name>

Ubuntu 16.04 ve sonrası için bunu yapmanın daha kısa bir yolu var:

apt policy <Package Name>
101
SuB

apt Ubuntu'da 16.04+

apt-cache policy, showpkg ve show öğelerinin yanı sıra, şimdi daha basit, daha kolay hatırlanabilen alt komutlar var: apt (Klasik apt-* ile karıştırmayın):

apt policy <package> 

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

Açıklama: Bu paket, arama ve yönetme işlemlerinin yanı sıra, libapt-pkg'nin tüm özelliklerine düşük düzeyli erişim olarak paketler hakkında bilgi sorgulama gibi komut satırı araçları sağlar kütüphane. Bunlar şunları içerir: apt-get, apt-cache, apt-cdrom, apt-config, apt-key.

apt --help öğesinden temel komutlar

Diğer alt komutları da hatırlaması kolay:

  • apt list - paket adlarına göre paketleri listeler
  • apt search - paket açıklamalarında arama
  • apt show - paket ayrıntılarını göster
  • apt update - kullanılabilir paketlerin listesini güncelle
  • apt install - paketleri yükle
  • apt remove - paketleri kaldır
  • apt purge - paketleri kaldır ve yapılandırma dosyaları :

    Bir paketi kaldırmak, tüm paketlenmiş verileri siler, ancak kaldırma işleminin bir kaza olması durumunda genellikle küçük (değiştirilmiş) kullanıcı yapılandırma dosyaları bırakır. Yanlışlıkla kaldırılan paket için bir kurulum isteği yayınlamanız, bu durumda olduğu gibi işlevini geri yükleyecektir. Öte yandan, daha önce çıkarılan paketlerde bile temizleme çağrısı yaparak bu artıklardan kurtulabilirsiniz. Bunun, ana dizininizde depolanan herhangi bir veri veya yapılandırmayı etkilemediğini unutmayın.

  • apt upgrade - paketleri kurarak/yükselterek sistemi yükseltin

  • apt full-upgrade - paketleri kaldırarak/yükleyerek/yükselterek sistemi yükseltin
  • apt edit-sources - kaynak bilgi dosyasını düzenler
8
Pablo Bianchi

Ne yazık ki, bu bilgiler paket yükleme sırasında kaydedilmez. Depo hala kaynak listesinde ise ve depoda hala paket varsa, doğru bir tahmin yapabilirsiniz:

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

Sinaptik bile havuzu ve güncellemeyi devre dışı bırakıp bırakmadığınızı söyleyemez.

6
kanaka
Sudo grep *packagename* /var/lib/apt/lists/* | grep "Filename:"

kaynak

4
sBlatt

Bu biraz daha doğru:

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

Apt-pinning ayarlamadıysanız veya belirli bir sürümü açıkça yüklediyseniz, en yeni sürüm genellikle yüklenir.

1
mchid