buka .rpm gagal: Izin ditolak


10

Setiap kali saya mencoba menginstal beberapa .rpm yang saya unduh, saya mendapatkan:

> sudo rpm -i something.rpm
error: open of something.rpm failed: Permission denied

Tampaknya pilihan rpm tidak masalah. Saya sudah chmodded the .rpm pertama (777) tetapi tidak ada bedanya. Apa yang saya lewatkan? Penggunaan rpm -i -vtidak mengungkapkan informasi tambahan apa pun.

Sistem adalah RHEL6 64-bit.


Bisakah Anda menunjukkan output darisudo -l
Not Now

SELinux, mungkin?
derobert

Jawaban:


11

Jika file rpm Anda ada di direktori home Anda dan direktori home Anda ada di NFS, root mungkin tidak memiliki akses ke sana. Ini entah bagaimana tidak biasa: biasanya, root dapat mengakses setiap file. Tetapi dalam pengaturan umum, ketika root mengakses direktori yang dipasang di atas NFS, hak-hak pengguna nobodydigunakan alih-alih pengguna root. Tujuan utamanya adalah untuk memastikan bahwa root pada klien tidak dapat memanipulasi file sebagai root pada server. Ini diimplementasikan sebagai "root memiliki izin siapa pun" daripada "root dapat memiliki izin siapa pun execpt root's" terutama karena ini lebih mudah (meskipun ada alasan lain: beberapa server NFS menerapkan ini untuk pengguna selain dari root, sehingga untuk lindungi semua pengguna sistem di server).

Jika ini masalahnya, Anda harus membuat file rpm dan direktori yang berisi file tersebut dapat diakses untuk di-root. Itu berarti membuat mereka dapat diakses oleh pengguna nobody, dan biasanya satu-satunya cara untuk melakukannya adalah membuat file dan direktori dapat dibaca dunia. Lebih tepatnya, izin minimalnya adalah

chmod a+x .
chmod a+r something.rpm

Atau, pindahkan file rpm ke direktori lokal.

mv something.rpm /tmp
sudo rpm -i /tmp/something.rpm

1
Benar-benar tepat, terima kasih atas jawaban cepatnya.
Oak
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.