Saya adalah pengguna non-admin pada sistem komputer besar. Saya perlu beberapa paket terbaru yang tidak diinstal pada sistem. Saya ingin menggunakan yum untuk menginstalnya. Sebagai pengguna tanpa sudo, admin, atau akses root, dapatkah saya menggunakan manajemen paket untuk menginstal paket di direktori home saya? Saya selalu bisa menggunakan make dari sumbernya, tetapi bisa menggunakan yum akan membuat hidup lebih mudah.
51
Jawaban:
Sebagian besar binari dikompilasi untuk diinstal ke lokasi tertentu di bawah
/
.Ada manajer paket non-root seperti Gentoo Prefix dan Rootless GoboLinux dan mungkin 0install .
Seperti yang Anda katakan, kompilasi sendiri akan mengatasi masalah itu, atau menggunakan chroot. Namun, rintangan terbesar Anda dengan chroot adalah prasyarat dan menghubungkan ke objek yang dibagikan kernel.
sumber
Daripada menggunakan
yum
, cari rpms yang Anda inginkan dan unduh. Anda masih tidak dapat menginstalnya langsung tanpa menjadi root, tetapi paket RPM sebenarnya adalah file .cpio yang bagus, dan Anda dapat membongkar isinya. Cara termudah untuk melakukan ini mungkin melaluimc
peramban file ("komandan tengah malam") (salah satu peranti lunak terhebat yang pernah ada), yang memungkinkan Anda untuk menelusuri isi.rpm
dan menyalin file langsung dari situ.Jika begitu, Anda dapat menggunakannya
rpm2cpio
untuk mengonversinya menjadi .cpio, lalucpio
mengekstrak file di dalamnya dan meletakkannya di tempat yang tepat. Kedua ini sudah akan diinstal pada sistem redhat atau fedora. Berikut ini contoh pemasangan "xsnow" (Anda mungkin ingin melakukan ini di direktori kosong):Perhatikan saya menemukan .rpm yang sesuai untuk sistem saya, fc17 x86_64. Ini penting karena ini adalah binari yang dikompilasi yang dihubungkan dengan komponen lain. Sekarang ekstrak .cpio:
Jika saya menelusuri pohon direktori ini, semua yang saya butuhkan ada di sana, kecuali beberapa informasi meta yang mungkin membantu saya menyelesaikan dependensi. Ini dapat ditemukan menggunakan
rpm -q -p [package] --[query]
:Cukup yakin saya sudah memiliki semua ini. Jadi sekarang yang harus saya lakukan adalah meletakkan xsnow dapat dieksekusi di $ PATH saya, yang sudah termasuk bin di direktori home saya:
Biola! Sekarang saya dapat mengetik
xsnow
dan menonton apa pun, karena ternyata xsnow tidak cocok dengan KDE :( tapi mudah-mudahan inti dari prosesnya jelas. Saya tidak perlu melakukan apa pun di luar direktori home saya.Jika Anda perlu menginstal perpustakaan, Anda juga perlu membuat direktori di rumah untuk itu dan menambahkan ke
~/.bashrc
:sumber