ダウンロードした.rpmをインストールしようとすると、いつでも次のようになります。
> Sudo rpm -i something.rpm
error: open of something.rpm failed: Permission denied
Rpmの選択は重要ではないようです。最初に.rpm(777)をchmodしましたが、違いはありません。何が欠けていますか? rpm -i -v
を使用しても、追加情報は表示されません。
システムはRHEL6 64ビットです。
Rpmファイルがホームディレクトリにあり、ホームディレクトリがNFS上にある場合、rootはそれにアクセスできない可能性があります。これはどういうわけか異常です:通常、rootはすべてのファイルにアクセスできます。ただし、一般的なセットアップでは、NFSを介してマウントされたディレクトリにrootがアクセスすると、rootユーザーの代わりにユーザーnobody
の権限が使用されます。主な目的は、クライアントのルートがサーバーのルートとしてファイルを操作できないようにすることです。これは、「ルートは誰の権限も持つことができる」ではなく、「ルートはだれの権限も実行できる」として実装されています。サーバー上のすべてのシステムユーザーを保護します)。
これが問題である場合は、rpmファイルと、ファイルを含むディレクトリの両方をrootがアクセスできるようにする必要があります。これは、ユーザーがnobody
にアクセスできるようにすることを意味します。通常、これを行う唯一の方法は、ファイルとディレクトリを誰でも読み取り可能にすることです。より正確には、最小限の権限は
chmod a+x .
chmod a+r something.rpm
または、rpmファイルをローカルディレクトリに移動します。
mv something.rpm /tmp
Sudo rpm -i /tmp/something.rpm