it-swarm-id.com

Bagaimana saya bisa menginstal paket tanpa akses root?

Saya memiliki tanpa akses root pada mesin ini.

Saya ingin tahu apakah ada cara saya dapat mengunduh paket Ubuntu dan menginstalnya sebagai non-root?

Mungkin di ~/bin atau ~/usr/share saya atau semacamnya? Apakah itu akan berhasil?

122
Weboide

Apt tidak mendukungnya secara langsung, tetapi ada cara untuk melakukannya.

Salah satunya adalah menggunakan schroot untuk membuat chroot non-root. Ini agak proses yang terlibat , tetapi Anda harus dapat menemukan bantuan komunitas karena banyak pengembang mengatur lingkungan chroot untuk mengkompilasi kode.

Cara kedua yang saya tahu adalah menginstal dari paket deb. Anda mungkin dapat mengunduh ini dari situs web atau jika ada di repositori Ubuntu yang dapat Anda unduh.

apt-get download package

Ganti package dengan nama paket

Setelah Anda memiliki panggilan file deb Anda dpkg langsung dari baris perintah. Contoh berikut akan menginstal package.deb ke direktori home Anda.

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

Kerugian menggunakan dpkg seperti ini adalah bahwa pesan kesalahan cenderung samar; dpkg tidak secara otomatis menyelesaikan dependensi atau membuat struktur direktori yang diharapkan.

Terakhir, Anda bisa menggunakan perintah apt-get source untuk mengambil sumber paket dan mengkonfigurasinya untuk menginstal secara lokal. Biasanya ini terlihat seperti:

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

Kerugian dari pendekatan ini adalah bahwa Anda memerlukan lingkungan pengembangan yang tersedia untuk pendekatan ini untuk bekerja sama sekali, dan Anda mungkin menemukan diri Anda menyusun lusinan paket untuk menyelesaikan semua dependensi.

EDIT:

Karena dpkg -i tidak berfungsi (lihat komentar), saya menyarankan alternatif ini:

dpkg -x package.deb dir

Ini akan mengekstrak paket deb untuk dir. Kemudian Anda dapat mengekspor PATH di mana biner berada. Selama semua dependensi biner diinstal, ia harus berjalan seperti biasa.

106
jbowtie

Saya berasumsi Anda ingin menginstal jedit . Pertama, Anda harus menemukan paket dan mengunduhnya. Saya hanya mengambil file deb dari beberapa mirror dan membuka konsol/terminal:

  1. mkdir /tmp/jedit && cd /tmp/jedit - Membuat direktori baru di tmp dan mengubahnya.
  2. wget http://mirrors.kernel.org/ubuntu/pool/universe/j/jedit/jedit_4.3.1.dfsg-0ubuntu1_all.deb - Paket unduhan
  3. ar x jedit_4.3.1.dfsg-0ubuntu1_all.deb atau, mudah untuk mengetik, ar x *.deb - ini mengekstraksi konten file
  4. tar xvzf data.tar.gz - file data.tar.gz memiliki semua hal yang Anda perlukan untuk menjalankan perangkat lunak
  5. usr/bin/jedit membuka editor
  6. selesai :-)

Anda dapat memindahkan file ke beberapa titik di direktori home Anda dan menjalankannya dari sana.

16
qbi

Saya menulis sebuah program bernama JuJ yang pada dasarnya memungkinkan untuk memiliki distribusi linux yang sangat kecil (hanya berisi manajer paket) di dalam direktori $ HOME/.juju Anda.

Memungkinkan sistem kustom Anda di dalam direktori home dapat diakses melalui proot dan, karenanya, Anda dapat menginstal paket apa pun tanpa hak akses root. Ini akan berjalan dengan baik untuk semua distribusi linux utama, satu-satunya batasan adalah JuJu dapat berjalan pada kernel linux dengan versi minimum yang direkomendasikan versi 2.6.32.

Sebagai contoh, setelah menginstal JuJu untuk menginstal jedit:

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