.rpmのオープンに失敗しました:権限が拒否されました


10

ダウンロードした.rpmをインストールしようとすると、次のようになります。

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

rpmの選択は重要ではないようです。最初に.rpm(777)を変更しましたが、違いはありません。何が欠けていますか?を使用rpm -i -vしても、追加情報は表示されません。

システムはRHEL6 64ビットです。


あなたはの出力表示することができますsudo -l
今ではない

SELinux、たぶん?
derobert 2012

回答:


11

rpmファイルがホームディレクトリにあり、ホームディレクトリがNFS上にある場合、rootはそれにアクセスできない可能性があります。これはどういうわけか異常です:通常、rootはすべてのファイルにアクセスできます。ただし、一般的なセットアップでは、NFSを介してマウントされたディレクトリにrootがアクセスするnobodyと、rootユーザーの代わりにユーザーの権限が使用されます。主な目的は、クライアントのルートがサーバーのルートとしてファイルを操作できないようにすることです。これは、「ルートは誰の権限も持つことができる」ではなく、「ルートはだれの権限も実行できる」として実装されています。サーバー上のすべてのシステムユーザーを保護します)。

これが問題である場合は、rpmファイルと、そのファイルを含むディレクトリの両方をrootがアクセスできるようにする必要があります。これは、ユーザーがそれらにアクセスできるようにすることを意味します。nobody通常、これを行う唯一の方法は、ファイルとディレクトリを誰でも読み取り可能にすることです。より正確には、最小限の権限は

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

または、rpmファイルをローカルディレクトリに移動します。

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

1
絶対的即応、迅速な回答ありがとうございます。
オーク
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.