Bir .deb paketini ana dizine kurmak


31

.debTamamen ev dizinim altında debian'da bir paket kurmak mümkün mü ?


Her yere yüklenen bir deb paketi oluşturabilirsiniz. ama neden isteyesin? Paketlerin sisteme yüklenmesi gerekiyor.
Faheem Mitha

5
@Faheem Mitha - Hepimizin bildiğiniz Unix kutularımıza kök erişimi yok, kesinlikle çalıştığım yerde değilim. Bir yazılım parçası kullanmak için bir pakete (benim durumumda RPM) ihtiyacımız olursa, IT ile konuşmak ve paketi bizim için sisteme yüklemelerini sağlamak yerine kullanıcı alanına kurabilirsek iyi olur.
Mark Booth,

@FaheemMitha Başka bir şey bir paketin yeni sürümünü test ediyor. Belirli bir paketi bir kullanıcıya sunabilmek istiyorsam sadece sistem çapında kurmaya devam etmiyorum.
Erathiel

@Erathiel Peki, bu gerçekten sanal bir makine için bir kullanım durumu.
Faheem Mitha

@FaheemMitha Belki veya belki de değil;) Kullanım durumum, geliştirme ortamı olarak hizmet veren birkaç kullanıcılı bir geliştirme makinesiydi. Bir paketi yalnızca belirli bir kullanıcı için yeni bir sürüme çıkarmam gerekiyordu, böylece yeni sürümün nasıl davrandığını test edebildik. Ancak sunucu sanal bir makinenin kendisi, yani kısmen haklısınız;)
Erathiel

Yanıtlar:


19

Bu "yükleme" ile ne demek istediğinizi belirler. Bir .deb dosyasının dosya içeriğini kullanarak çıkarmak mümkündür dpkg-deb -x <filename.deb>, ancak yazılımı yerel olarak ayıkladıktan sonra gerçekten kullanıp kullanamayacağınız, nasıl yazıldığına bağlıdır. Pek çok Linux yazılımı, kaynak dosyalarını derleme zamanında belirtilen /usr/shareya /usr/libda yazılım normal bir konuma kurulmazsa başarısız olacak olan standart konumlarda bulmayı bekler . Ayrıca .desktop, başlat menüsünde girişler oluşturan dosyalar gibi paket tarafından yüklenen sistem genelinde herhangi bir yapılandırma dosyası , yanlış bir yere kurulursa tasarlandığı gibi çalışmayacaktır.


3
öyle olmalıdpkg-deb -x app.deb /path/to/target/dir/
q:

ya da sadece dpkg -x app.deb / path / to / target / dir /
Erik Aronesty

5

Tüm yorumlarınız için teşekkürler bir cevap. Paketlememin doğru olup olmadığını öğrenmek için bazı temel kontroller yapmak istediğim kendiliğinden paketlenmiş bir yazılımdı. Bilgisayarımın başındayım ama orada gerçek bir kurulum yapmak istemiyorum ve şu an için sanal bir resim kullanmak istemiyorum. Bu çözümle geldim: https://serverfault.com/questions/23734/is-there-any-way-to-get-apt-to-install-packages-to-my-home-directory Hangi için mükemmel çalışır ben atm.


5
@Ivogel, "Bağlandığınız sayfanın birçok yayını var ve hangisinin sizin için işe yaradığını ve hangisinin sizin için uygun olduğunu söyleyemem. Lütfen belirtir misiniz?"
dr

4

Debian paket sisteminin kullanımının root erişimi gerektirdiğine dikkat edin. Bu nedenle, bir kullanıcıların giriş dizinine bir deb paketi kurmak kök erişimi gerektirir. Kök erişiminiz varsa, sisteme normal şekilde kurmak sadece daha mantıklıdır.

Root erişiminiz yoksa, Debian paketleme sistemini kullanamazsınız. Bir deb dosyasını kesinlikle parçalarına ayırabilir ve ana dizininize yapıştırabilirsiniz, ancak bunu yapmak çok mantıklı gelmez. Yerel bir kurulumla gitmenizi öneririm. Hangi yazılımı yüklediğinize bağlı olarak, yazılımda kullanabileceğiniz bir tür dahili paket yönetim sistemi olabilir.


Bu cevap oluşturulduktan sonra eklenip eklenmediğini bilmiyorum ama dpkg bu sorunu çözmek için kullanılabilecek bir --force-root olmayan seçeneğe sahip.
Bruce Adams

@BruceAdams Adam sayfasında listelenen bu seçeneği görmüyorum. Bir referans verebilir misiniz?
Faheem Mitha

Eğer dpkg - çalıştırırsanız - yardım et - force-şey. Dpkg --force-yardımını çalıştırırsanız daha fazla ayrıntı verir. Bakınız örneğin askubuntu.com/questions/193695/…
Bruce Adams

@BruceAdams Tamam, görüyorum, ama nasıl çalışacağını bilmiyorum: not-root Try to (de)install things even when not root.
Faheem Mitha

Soruma bakın stackoverflow.com/questions/47099045/… Ancak yazdığı sırada henüz bir cevabı yok. Yani benim de hiçbir fikrim yok.
Bruce Adams,
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.