Ada beberapa cara untuk menginstal rpms dalam direktori pengguna yang menggunakan rpm
, tetapi saya tidak percaya ini mudah. Saya tidak percaya ada jalan dengan yum
.
Praktik standar saya adalah mengkompilasi dari sumber ke local
direktori di rumah saya
$ mkdir ~/local
$ mkdir ~/local/bin
$ mkdir ~/local/lib
$ mkdir ~/local/include
Saya mengunduh sumber seperti /usr/local
ketika saya melakukan root, misalnya di ~/local/git
.
Saat mengkompilasi saya mengatur awalan ke local
direktori
$ configure --prefix=/home/user_name/local
$ make
$ make install
Saya kemudian menambahkan ~/local/bin
$ PATH saya di .bash_profile
.
Tentu saja, rasa sakit dengan menginstal dari sumber adalah Anda tidak mendapatkan resolusi ketergantungan otomatis. Jika Anda perlu menginstal dependensi, kompilasi dan instal seperti di atas. Kemudian ketika Anda mengkompilasi git
, Anda perlu memperbarui flag kompilasi sehingga mereka melihat lokasi yang benar untuk pustaka dependensi dan menyertakan file:
./configure --prefix=/home/user_name/local LDFLAG='-L/home/user_name/local/lib' CFLAGS='-I/home/user_name/local/include' CPPFLAGS='-I/home/user_name/local/include' CXXFLAGS='-I/home/user_name/local/include'
File .rpm sebenarnya adalah bentuk
cpio
arsip, yang sangat mirip bentuk sederhana .rpmtar
. Therpm2cpio
utilitas mungkin diinstal pada sistem dan tidak memerlukan hak penggunaan; itu menulis ke standar, sehingga untuk mengkonversi:Ada yang bisa
man cpio
Anda lihat sendiri, tetapi yang sekarang ingin Anda lakukan adalah memberi makan arsip ke cpio dalam mode "salin":Sangat mungkin barang-barang tersebut diatur ke pohon direktori sehingga file masuk ke lokasi yang sesuai (bin, dll, dll.). Jika itu tidak ada di pwd Anda, Anda akan mendapatkan kesalahan, tetapi itu akan mencantumkan file dalam arsip (Anda bisa mendapatkan hal yang sama dengan
-t
/--list
switch). Jika Anda ingin membuat direktori secara otomatis, gunakan-d
. Jadi cara cepat untuk membongkar rpm:Anda dapat menggunakan ini untuk menginstal ke $ HOME. Satu-satunya masalah adalah jika program mengharapkan untuk menemukan barang-barang
/etc
, dll., Karena banyak hal memiliki lokasi pemasangannya yang dikodekan untuk tujuan apa pun ketika mereka dikompilasi.Membangun dari sumber mungkin merupakan opsi yang lebih baik (karena Anda dapat memberikan lokasi yang benar), tetapi jika Anda bisa membuatnya bekerja dalam kasus apa pun maka itu cepat dan sederhana.
Juga, browser file komandan tengah malam (
mc
), dan mungkin browser file lain selain itu, akan memungkinkan Anda untuk menavigasi hierarki rpm atau cpio (atau tar terkompresi, atau zip) dan menyalin file individual seolah-olah arsip itu dibongkar (itu menciptakan sistem file sementara untuk menelusuri dengan isi arsip di dalamnya).sumber
Ini adalah alternatif (tidak menggunakan yum) dan izin akan aneh tetapi Anda bisa
chown
untuk pengguna target sesudahnya: - juga itu hit atau miss :-(Kemudian tambahkan lokasi yang sesuai ke jalur Anda.
sumber