Sorum basit - dpkg hakkında daha fazla bilgi edinmek istiyorum - ne işe yarıyor?
Sorum basit - dpkg hakkında daha fazla bilgi edinmek istiyorum - ne işe yarıyor?
Yanıtlar:
Daha önce de belirtildiği gibi, dpkg
.deb dosyalarını çıkarmak, analiz etmek, paketten çıkarmak ve yüklemek ya da kaldırmak için kullanılan düşük düzeyli bir sistem aracıdır. Bununla birlikte, bu iki programın bağımlılık çözünürlüğüne sahip olması nedeniyle, diğer kaynaklardan edinilen .deb dosyalarını kullanmak Software Centre
veya Gdebi
yüklemek veya kaldırmak daha iyidir .
Ancak, ne açıkladı edilmemiştir olan anatomi kullanarak bir güncelleme dpkg
ve apt-get
. Örneğin apt-get
, kurmaya çağırırsak cheese
, bağımlılık ağacı analiz edilir ve gerekli dosyalar alınır apt-get
, bu da onları dpkg
doğru konumlara çıkarmaları, analiz etmeleri ve yüklemeleri ve içindeki komut dosyalarına göre yapılandırmaları için geçer.
dpkg
Her .deb dosyasının içinde okunan komut dosyaları , programın paketlerin kurulumu, kaldırılması ve yapılandırılmasıyla ilgili bilgi vermesi bakımından önemlidir. Bu nedenle, baktığınızda /var/log/dpkg.log
'tetikleyiciler' ve paketlerin açılması ve yapılandırılmasının çeşitli aşamalarından geçen paketler hakkında ayrıntılı bir çok ayrıntı vardır. Blogunda, temel bir Debian geliştiricisi ve dpkg
paketin sahibi olan Raphael Hertzog, dpkg tetikleyicileri ve dpkg
paketleri inceleme ve yapılandırma yöntemleri hakkında daha fazla şey anlatıyor .
Şimdi ne dpkg
yaptıklarının kalbine gidiyoruz; Debian paketlerini bağımlılıklarından ziyade ustalıkla idare eder. İle dpkg-deb
, örneğin, .deb arşivlerinden analiz çeşitli eylem ve elle ayıklanması dosyaları gerçekleştirebilir; man dpkg-deb
daha fazla bilgi için bkz .
Her paketin durumu, belirli bir paketi kontrol etmek /var/lib/dpkg/status
için kullanılabilecek şekilde listelenmiştir grep
. Dpkg
yapılandırılmış belirli paketleri yeniden yapılandırmak için de ç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 paketleri yapılandırmak için:
sudo dpkg --configure -a
Odaklanan büyük bir eğitim için dpkg
ve apt-get
ait bölümleri 5 ve 6'yı bkz Debian El Kitabı'nda mevcut en iyi tartışma. man dpkg
Terminalinize girin veya şu anda kurulu olan paketleri listelemek gibi mevcut seçeneklerin tümünü görmek için çevrimiçi Ubuntu man sayfalarını görüntüleyin dpkg -l
.
dpkg, bir .deb dosyasından kurulum yapmak veya kurulu paketleri kaldırmak için kullanılan bir komut satırı yoludur. Örneğin, ana dizininizde bir .deb dosyanız varsa, çalışan dpkg -i yourpackage.deb
bu paketi sizin için kurar. Benim için bu yararlı en iyiyi buluyorum, çünkü bazen bir .deb dosyasına tıkladığınızda Ubuntu Yazılım Merkezi'ni yüklüyor ancak hiçbir zaman gerçekten kurmuyor veya problemi olmuyor.
Her zaman olduğu gibi, man
komut başlamak için harika bir yer.
man dpkg
Bununla birlikte, tüm seçenekleri size verebilir:
dpkg, Debian tabanlı sistemler için paket yöneticisidir. Paketleri kurabilir, kaldırabilir ve derleyebilir, 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 çözme olmadan apt-get, ve .deb dosyalarını yüklemek için kullanılır.
Yine de sizi uyarıyorum: dpkg kullanarak paketlerin kaldırılması, çoğu durumda önerilmez. Sistemin tutarlı bir durumda olduğundan emin olmak için bağımlılıkları ele alan bir paket yöneticisi kullanmak daha iyidir.
Örneğin dpkg -r zip
, zip paketini kullanarak çıkarabilirsiniz, ancak ona bağlı olan paketler yine de yüklenecek ve artık düzgün çalışmayabilir.
Bu konuda biraz daha fazlasını sunucu kılavuzunda ve başka yerlerde okuyabilirsiniz .