dpkg ne için?

19

Sorum şu kadar basit - dpkg hakkında daha fazla bilgi edinmek istiyorum - ne yapar?

    
sordu Ten-Coin 08.08.2012 17:31

3 cevap

15

Söylendiği gibi, dpkg , .deb dosyalarını ayıklamak, analiz etmek, açmak, kaldırmak veya kaldırmak için düşük seviyeli bir sistem aracıdır. Ancak, bu iki program bağımlılık çözünürlüğüne sahip olduğundan, diğer kaynaklardan elde edilen .deb dosyalarını yüklemek veya kaldırmak için Software Centre veya Gdebi kullanmak daha iyidir.

Ancak, açıklanmayan, dpkg ve apt-get kullanılarak yapılan bir güncellemenin anatomi olmasıdır. Örneğin, apt-get 'yı yüklemek için cheese ' i çağırırsak, bağımlılık ağacı analiz edilir ve gerekli dosyalar apt-get tarafından getirilir, bu da onları doğru konumlara çıkarmak, analiz etmek ve yüklemek için dpkg 'ya geçirir. Onları içlerindeki betiklere göre yapılandırın.

Her bir .deb dosyasının içinde dpkg tarafından okunan betikler, paketin kurulumu, kaldırılması ve yapılandırılması ile ilgili programa bilgi verdikleri için önemlidir. Bu nedenle, /var/log/dpkg.log 'ye baktığınızda,' tetikleyiciler 've paketlerin açma ve konfigürasyonunun farklı aşamalarından geçen paketler hakkında birçok ayrıntılı ayrıntı vardır. Blogunda, Raphael Hertzog (Debian geliştiricisi ve dpkg paketinin sürdürücüsü) dpkg tetikleyicileri hakkında daha fazla bilgi verir ve dpkg paketlerini inceler ve yapılandırır.

Şimdi dpkg 'nin ne yaptığını kalbine alıyoruz; Debian paketlerini bağımlılıklarından ziyade ustalıkla ele alır. Örneğin, dpkg-deb ile, .deb arşivlerinden dosyaları analiz etmek ve el ile çıkarmak için çeşitli eylemler gerçekleştirebilirsiniz; Daha fazla bilgi için man dpkg-deb bölümüne bakın.

Her paketin durumu, /var/lib/dpkg/status cinsinden listelenir; bu, belirli bir paketi kontrol etmek için grep ile kullanılabilir. Yapılandırılan belirli paketleri yeniden yapılandırmak için Dpkg çağrılabilir (bkz. man dpkg-reconfigure ):

sudo dpkg-reconfigure <package>

Veya, bir güncellemeyle ilgili bir sorun varsa ve bazı paketlerin yapılandırması hala beklemede ise, yapılandırılmamış tüm paketlerin yapılandırmasını yapmak için:

sudo dpkg --configure -a

dpkg ve% co_de yüzdesine odaklanan harika bir eğitici için En iyi tartışma olan Debian El Kitabı . Terminalinizde apt-get değerini girin veya tüm çok görmek için Ubuntu man sayfalarını çevrimiçi görüntüleyin. Mevcut paketleri yüklemek için man dpkg kullanma gibi seçenekler kullanılabilir.

    
verilen cevap user76204 19.08.2012 02:09
4

dpkg, bir .deb'den yüklemek veya zaten yüklenmiş paketleri kaldırmak için bir komut satırı yoludur. Örneğin, ev dizininizde bir .deb dosyanız varsa, dpkg -i yourpackage.deb dosyasını çalıştırmak bu paketi sizin için yükleyecektir. Ben bu yararlı atleast'i benim için buluyorum çünkü bazen .deb dosyasını tıklatırken Ubuntu Yazılım Merkezi'ni yükler ancak hiçbir zaman gerçekten yüklemez veya sorun çıkarmaz.

    
verilen cevap unknownone 09.08.2012 20:49
4

Her zaman olduğu gibi, man komutu, başlamak için harika bir yerdir.
man dpkg size tüm seçenekleri verebilir:

dpkg, Debian tabanlı sistemler için bir paket yöneticisidir. Paketleri kurabilir, kaldırabilir ve kurabilir, ancak diğer paket yönetim sistemlerinden farklı olarak, paketleri ve bağımlılıklarını otomatik olarak indirip yükleyemez.

Yani temelde bağımlılık çözümü olmadan apt-get ve .deb dosyalarını yüklemek için kullanılır.

Yine de sizi uyarıyorum: Çoğu durumda dpkg kullanarak paketlerin kaldırılması önerilmez. Sistemin tutarlı bir durumda olmasını sağlamak için bağımlılıkları ele alan bir paket yöneticisi kullanmak daha iyidir.

Örneğin, dpkg -r zip kullanarak zip paketini kaldırabilirsiniz, ancak buna bağlı olan tüm paketler yüklenmeye devam edecek ve artık düzgün çalışmayabilir.

Bununla ilgili daha fazla bilgiyi sunucu rehberindeki ve başka yerde

    
verilen cevap LnxSlck 08.08.2012 17:54

Etiketlerdeki diğer soruları oku