Kurulum için bir deb paketim var.
Ben tarafından yüklemek Shall dpkg -i my.debveya apt tarafından?
Her ikisi de yazılım bağımlılığı problemini iyi idare edecek mi?
Eğer apt ise, deb'den apt ile nasıl yükleyebilirim?
dpkgbağımlılıkları çözmez.
Kurulum için bir deb paketim var.
Ben tarafından yüklemek Shall dpkg -i my.debveya apt tarafından?
Her ikisi de yazılım bağımlılığı problemini iyi idare edecek mi?
Eğer apt ise, deb'den apt ile nasıl yükleyebilirim?
dpkgbağımlılıkları çözmez.
Yanıtlar:
Bir aptpaketi yüklemek için kullandığınızda, kaputun altında kullanır dpkg. Apt kullanarak bir paket kurduğunuzda, önce tüm bağımlılıkların bir listesini oluşturur ve onu depodan indirir.
İndirme işlemi bittiğinde dpkg, tüm bağımlılıkları yerine getirerek tüm bu dosyaları kurmaya çağırır .
Eğer bir .debdosyanız varsa:
Aşağıdakileri kullanarak kurabilirsiniz:
sudo dpkg -i /path/to/deb/file
sudo apt-get install -f
sudo apt install ./name.deb(Veya sudo apt install /path/to/package/name.deb) kullanarak yükleyebilirsiniz .
Eski apt-getversiyonlarda, önce deb dosyanızı /var/cache/apt/archives/dizine taşımalısınız . Her ikisi için de, bu komutu yürüttükten sonra, bağımlılıklarını otomatik olarak indirecektir.
gdebi.Deb dosyanızı kurun ve açın ( Sağ tıklayın -> Birlikte aç ). .Deb paketinizi tüm bağımlılıkları ile kuracaktır.
( Not : APT, /etc/apt/sources.listdosyada ve /etc/apt/sources.list.ddizinde tanımlanan repoda bulunan mevcut paketlerin bir veritabanı olan paket dizinini korur . Deb'in gerektirdiği bağımlılıklar paket dizininde mevcut değilse, tüm bu yöntemler yazılım bağımlılığını karşılamaz. .)
Neden sudo apt-get install -fsonra kullanmalısudo dpkg -i /path/to/deb/file (ilk yöntemde belirtilen)?
Kimden man apt-get:
-f, --fix-broken
Fix; attempt to correct a system with broken dependencies in place.
Bir dpkgpaket kurduğunda ve bir paket bağımlılığı sağlanamadığında, paketi "yapılandırılmamış" bir durumda bırakır ve bu paketin bozuk olduğu kabul edilir.
sudo apt-get install -f Komutu, eksik bağımlılığı yükleyerek bu bozuk paketi düzeltmeye çalışır.
apt-cache search <package name>. Ayrıca apt-cache policy <package name>bazı ek bilgiler verecek olanı da kullanabilirsiniz .
apt-get install /path/to/package/name.deb. Bu cevabın yazarı bunu entegre etmeye karar verdiyse, derli toplu olur.
foo.debDosyanızı ile yükleyin dpkg -i foo.deb. Çözümlenmemiş bağımlılıkları olan bazı hatalar varsa, apt-get install -fdaha sonra çalıştırın .
Unable to locate packagebu şekilde çalışıyor ve şaşkın gördü. Arşiv klasörüne geçtikten sonra Windows gibi paketin adını kullandım. ./<file name>Geçerli klasör veya tam yoldaysa Unix için olmalıdır . Yani debiçinde mevcut klasörde değilse PATH.
İşte bir .debdosyayı Ubuntu'ya komut satırından kurmanın en iyi yolu :
sudo gdebi skype.deb
Henüz gdebiyüklemediyseniz, kullanarak kurun sudo apt install gdebi-core.
gdebi.debdosyanın tüm bağımlılıklarını arayacak ve dosyayı yüklemeyi denemeden önce yükleyecektir .deb. Bunu daha çok tercih ederim sudo dpkg -i skype.deb && sudo apt install -f. İkincisi, bazı durumlarda bağımlılıkları gidermek için çok isteklidir. Örneğin, Skype'ı kurmaya çalıştığımda, compizve unity! Gibi paketler de dahil olmak üzere 96 (!) Paketi çıkarmaya çalıştı ! gdebiçok daha net bir hata mesajı verdi:
$ sudo gdebi skype.deb
Cannot install 'libqtgui:i386'
( Bu arada, bu belirli sorunun çözümü .)
Yerel bir .deb paketini şu şekilde yükleyebilirsiniz:
sudo apt install ./foo.deb
Yerel bir akraba veya mutlak yol belirlediğinizden emin olun ( ./eğer geçerli dizinde ise), aksi halde foo.debuzak depolarda arayacak ve başarısız olacaktır.
./önce bu debdosyayı kaçırıyorsunuz .
Önce dpkg -I my.debve apt-get installsonra bağımlılıkları kontrol edin dpkg -i my.deb.
Olabilir Kopyalayabileceğiniz
Çalışmıyor my.debin /var/cache/apt/archivesve doğrudan yükleyin apt-getama hiç denemedim. apt-getve dpkgarşivlerde listelenen paketleri arıyoruz.
apt-get install my.debtarafından apt-get install? Deb dosyasından yüklemek mi? Bundan dpkg -i my.debsonra neden ihtiyacımız var?
.debs'leri kurdum dpkg -i, benim anladığım kadarıyla aptonları yükleme seçeneğim yok /var/cache/..., indirilen dizini
apt-get install ./my.debşeyler yapacak gibi görünüyor , çünkü birçok şeyi ortaya çıkarıyor. Bu ne işe yarıyor?
-f
En basit cevabı çalıştırarak dpkg kullanmak olacaktır dpkg -i packagename.deb. Daha sonra çalıştırarak kaldırabilirsiniz dpkg -r packagename.deb.
apt-getdpkg tabanlı ve sizin yapabildiğiniz şekilde kurulmuş bir üst seviye yükleyicidir apt-get install packagename.deb.
Apt-get archives dizininize ( /var/cache/apt/archives) eklemek yararlı olacaktır, böylece bağımsız bir .deb arşivi değil bağımlılıkları olan bir paket olarak başvurabilirsiniz.
Ayrıca, apt-get arşiv dizinine ekleyerek, bağımlılıkları kullanma olanağınız olur apt-get install packagename. Bu, dpkg'nin bağımsız arşiv tabanlı sistemi yerine elle eklenmiş herhangi bir bağımlılıkla yüklemenize izin verir.
Modern apt-get bir paketi basitçe kurmak için kullanılabilir apt-get install /path/to/package/name.deb.
(En üstteki cevabın düzenlenmesi gerektiği şekilde yapılmalıdır, ancak reddedildi - bkz. https://unix.stackexchange.com/posts/159114/edit )
apt 1.0.9.8.4 for amd64 compiled on Dec 11 2016 09:48:19
Chrome'u yüklemek istersem çok kolay.
Chrome dosyanızı aşağıdaki gibi yükleyin:
dpkg -i googlechrome.deb.
Bazen aşağıdaki gibi bazı bağımlılık hataları alma şansı vardır:
dpkg: dependency problems prevent configuration of google-chrome-stable:
google-chrome-stable depends on libappindicator1; however:
Package libappindicator1 is not installed.
Bu yüzden yukarıdaki sorunları çözmek için, bağımlılıklar eklemeniz gerekir; aşağıdaki komutu verin:
apt-get install -f
Yukarıdaki komutu verdikten sonra, makinenize bağımlılıklar eklenecek ve Debian paket ( .deb) dosyanız yüklenecektir.
aptitudeGereksiz paketleri de kaldıran kullanabilirsiniz .