apertura di .rpm non riuscita: autorizzazione negata


10

Ogni volta che provo ad installare alcuni .rpm che ho scaricato, ottengo:

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

Sembra che la scelta del numero di giri non abbia importanza. Ho prima scelto il .rpm (777) ma non fa differenza. Cosa mi sto perdendo? L'uso rpm -i -vnon rivela alcuna informazione aggiuntiva.

Il sistema è RHEL6 a 64 bit.


Puoi mostrare l'output disudo -l
Not Now

SELinux, forse?
derobert,

Risposte:


11

Se il tuo file rpm è nella tua home directory e la tua home directory è su NFS, root potrebbe non avervi accesso. Questo è in qualche modo insolito: normalmente, root può accedere a tutti i file. Ma nella configurazione comune, quando il root accede a una directory montata su NFS, nobodyvengono utilizzati i diritti dell'utente anziché l'utente root. Lo scopo principale è garantire che root sul client non possa manipolare i file come root sul server. Questo è implementato come "root ha i permessi di nessuno" piuttosto che "root può avere i permessi di chiunque eseguono root" principalmente perché questo è più facile (anche se ci possono essere altri motivi: alcuni server NFS applicano questo agli utenti diversi da root, così da proteggere tutti gli utenti del sistema sul server).

Se questo è il problema, è necessario rendere accessibili sia il file rpm che la directory contenente il file. Ciò significa renderli accessibili all'utente nobody, e di solito l'unico modo per farlo è rendere il file e la directory leggibili dal mondo. Più precisamente, le autorizzazioni minime sono

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

In alternativa, spostare il file rpm in una directory locale.

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

1
Assolutamente perfetto, grazie per la rapida risposta.
Oak,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.