Apt, kullanıcıların kaynaktan yükledikleri yazılımların ihtiyaç duyduğu paketleri silebilir mi?


14

Apt , depolarından veya *.debdosyalarından yüklenen paketler arasındaki bağımlılıkları ele alır . Ancak, kullanıcıların ./configure && make && make installbir .debdosya oluşturmadan kaynaktan derledikleri ve yükledikleri yazılımlar ne olacak ? O olması mümkün mü Apt tür yazılımlar tabi paketleri kaldırmak olabilir? Yazılımı kaynağından yüklemek /optveya /usr/localbir fark yaratır mı?


1
Bağımlılıklarınızı kurulu kalmaya zorlamak için bir equivs paketini kaynaktan kurulmuş bir paket için stand-in olarak yükleyebilirsiniz.
Faheem Mitha

Yanıtlar:


13

APT, manuel olarak yüklenen yazılımlar hakkında hiçbir şey bilmiyor. Yazılımın hangi kütüphanelere ihtiyacı olduğunu bilmiyor.

APT yalnızca başka bir paketin bağımlılıklarını karşılamak için bir paket yüklediğinde, bu paket otomatik olarak yüklendi olarak işaretlenir. Otomatik olarak yüklenen bir pakete bağlı olan tüm paketleri kaldırırsanız, çalıştırdığınızda bu paket kaldırılır apt-get autoremove; APT'nin üst düzey ön uçları genellikle diğer bakımlardan sonra bunu yapmayı önerecektir. Yerel olarak yüklenen yazılımlar için gereken paketleri kaldırmaktan kaçınmak için, bu paketleri manuel olarak yüklendi: olarak işaretleyin veya anahtarı uygun şekilde işaretleyin.apt-mark manual PACKAGE-NAMEm

İkili yürütülebilir dosyanın hangi kütüphane paketlerine ihtiyaç duyduğunu bulmak için çalıştırın ldd /path/to/executable. İçeren her satır için , bu kitaplığı içeren paketin adını görüntülemek üzere çalıştırın . Komut dosyaları için, komut dosyası tarafından kullanılan yorumlayıcıyı gösterir; bu yorumlayıcının kurulu olduğundan emin olun. Bir komut dosyası tarafından hangi kitaplıkların kullanıldığını bulmak zor olabilir, bunu yapmanın evrensel bir yolu yoktur./usr/lib/SOMETHINGdpkg -S /usr/lib/SOMETHINGhead -n 1 /path/to/script

Dağıtımınızda bulunan bir paketin daha yeni bir sürümünü el ile yüklediyseniz, dağıtım paketinin bağımlılıklarına bakın ve el ile yüklenmiş olarak işaretleyin.


apt-getDebian Jessie manualseçeneği yok. Bu manuel ve otomatik (mat) kurulum ipuçları için apt-markbunun yerine kullanıyorum . ( apt-mark manual pkg, apt-mark showmanual pkg, apt-mark auto pkgVs.)
Lekensteyn

@Lekensteyn Demek istediğim apt-mark, teşekkürler.
Gilles 'SO- kötü olmayı bırak'

14

aptve dpkgyerel olarak yüklenen ve paket yönetim sisteminin kapsamı dışında kalan diğer yazılımların gerektirdiği yazılımları kaldırabilir. Bu tür bir yazılımın var olabileceğini bilmenin aptve dpkgbilmenin hiçbir yolu yoktur.

Bu tür yazılımların kurulduğu konum bir fark yaratmaz: olabilir /optveya /usr/localkullanıcıların ev dizinlerinde olabilir (bu durumda sysadmin bile varlığının farkında olmayabilir) veya herhangi bir yerde olabilir.

Teknik olarak aptveya dpkghatta diğer yazılımlar tarafından gerekli yazılımları kaldırmak olabilir olup ikincisi yazılımı eski yazılıma bağlı olduğunu ilan etmek başarısız olursa, paket yönetim sisteminin bir parçasıdır. Bununla birlikte, deb paketleri oluşturma süreci, paket sahiplerinin böyle bir bağımlılık beyan etmeyi unutmasını önlemeye yardımcı olan otomasyon içerir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.