it-swarm-tr.com

Kök erişimi olmayan bir paketi nasıl kurabilirim?

Bu makinede root erişimi yok var.

Bir yol olup olmadığını bilmek istiyorum buntu paketlerini indirebilir ve root olmayan olarak yükleyebilir miyim?

Muhtemelen ~/bin veya ~/usr/share veya buna benzer bir şeyde? Işe yarar mı?

122
Weboide

Apt doğrudan desteklemiyor, ancak bunu yapmanın yolları var.

Bunlardan biri kök olmayan bir chroot oluşturmak için schroot kullanmaktır. Bu biraz ilgili süreç , ancak bir çok geliştiricinin kod derlemesi için chroot ortamları oluşturduğu için topluluk yardımı bulabilmeniz gerekir.

Bildiğim ikinci yol ise bir .deb paketinden yüklemek. Bunu bir web sitesinden veya eğer indirebileceğiniz Ubuntu depolarında ise indirebilirsiniz.

apt-get download package

package ile paketin adını değiştirin

Deb dosyanızı aldıktan sonra doğrudan komut satırından dpkg arayın. Aşağıdaki örnek, package.deb dosyasını ana dizininize yükleyecektir.

dpkg -i package.deb --force-not-root --root=$HOME 

Bu gibi dpkg kullanmanın dezavantajı, hata mesajlarının şifreli olması muhtemeldir; dpkg bağımlılıkları otomatik olarak çözmez veya beklediği dizin yapısını yaratmaz.

Son olarak, paketin kaynağını almak ve yerel olarak kurması için yapılandırmak için apt-get source komutunu kullanabilirsiniz. Genellikle bu şuna benzer:

apt-get source package
cd package
./configure --prefix=$HOME
make
make install

Bu yaklaşımın dezavantajı, bu yaklaşımın çalışabilmesi için mevcut geliştirme ortamına ihtiyaç duymanız ve tüm bağımlılıkları çözmek için kendinizi düzinelerce paket oluştururken bulabilirsiniz.

DÜZENLEME:

dpkg -i çalışmıyorsa (yorumlara bakın) bu alternatifi öneriyorum:

dpkg -x package.deb dir

Bu, .deb paketini dir. Daha sonra PATH'yi ikili kodun bulunduğu yere verebilirsiniz. İkilinin tüm bağımlılıkları kurulduğu sürece, normal şekilde çalışmalıdır.

106
jbowtie

Yüklemek istediğinizi varsayıyorum jedit . Önce paketi bulup indirmelisin. Ben sadece bazı aynanın deb dosyasını alıyorum ve bir konsol/terminal açıyorum:

  1. mkdir /tmp/jedit && cd /tmp/jedit - tmp öğesinde yeni bir aldatmaca yapar ve onu değiştirir.
  2. wget http://mirrors.kernel.org/ubuntu/pool/universe/j/jedit/jedit_4.3.1.dfsg-0ubuntu1_all.deb - Paketi indir
  3. ar x jedit_4.3.1.dfsg-0ubuntu1_all.deb veya, yazması kolay, ar x *.deb - bu dosya içeriğini çıkarır
  4. tar xvzf data.tar.gz - data.tar.gz dosyası, yazılımı çalıştırmak için ihtiyacınız olan her şeye sahiptir
  5. usr/bin/jedit editörü açar
  6. bitti :-)

Dosyaları ana dizininizdeki bir noktaya taşıyabilir ve oradan yürütebilirsiniz.

16
qbi

$ HOME/.juju dizininizde temelde gerçekten küçük bir linux dağıtımına (yalnızca paket yöneticisini içeren) izin veren JuJ adında bir program yazdım.

Özel sisteminizin ana dizinde proot üzerinden erişilebilir olmasını sağlar ve bu nedenle herhangi bir paketi kök ayrıcalıkları olmadan yükleyebilirsiniz. Tüm ana linux dağıtımlarına uygun şekilde çalışacaktır, tek sınırlama JuJu'nun linux çekirdeğinde önerilen minimum 2.6.32 sürümüyle çalışabilmesidir.

Örneğin, JuJu kurulduktan sonra jedit'i kurmak için:

$>juju -f
(juju)$> pacman -S jedit
(juju)> jedit
9
user967489