відкриття .rpm не вдалося: у дозволі відмовлено


10

Щоразу, коли я намагаюся встановити кілька завантажених файлів .rpm, я отримую:

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

Здається, вибір обертів не має значення. Я спочатку змінив .rpm (777), але це не має значення. Що я пропускаю? Використання rpm -i -vне виявляє додаткової інформації.

Система RHEL6 64-розрядна.


Чи можете ви показати результатsudo -l
Не зараз

SELinux, можливо?
дероберт

Відповіді:


11

Якщо ваш файл rpm знаходиться у вашому домашньому каталозі, а ваш домашній каталог знаходиться в NFS, root може не мати до нього доступу. Це якось незвично: зазвичай, root може отримати доступ до кожного файлу. Але в загальних налаштуваннях, коли root отримує доступ до каталогу, встановленого через NFS, права користувача nobodyвикористовуються замість користувача root. Основна мета - забезпечити, щоб root на клієнті не міг маніпулювати файлами як корінь на сервері. Це реалізується як "root має нікого не має прав", а не "root може мати чиїсь права доступу execpt root" насамперед тому, що це простіше (хоча можуть бути й інші причини: деякі сервери NFS застосовують це до інших користувачів, крім root, щоб захистити всіх користувачів системи на сервері).

Якщо це проблема, вам потрібно зробити як файл rpm, так і каталог, що містить файл, доступним для root. Це означає зробити їх доступними для користувача nobody, і, як правило, єдиний спосіб зробити це - зробити файл і каталог читатими у всьому світі. Точніше, мінімальні дозволи

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

Крім того, перемістіть файл rpm у локальний каталог.

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

1
Абсолютно точково, дякую за швидку відповідь.
Дуб
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.