Вопрос по centos, pip, python-module, python – pip: противоречивые проблемы с разрешениями

16

При установке пакета черезsudo pip-python (Пакет CentOS 6:python-pip-0.8-1.el6.noarch), Иногда я получаю проблемы с правами доступа к установленным пакетам, доступным для чтения только пользователю root.

Повторная установка один или два раза обычно устраняет проблему. Кто-нибудь испытывал это? Или кто-нибудь может предложить какие-либо шаги по устранению неполадок, чтобы зафиксировать причину?

Ваш Ответ

2   ответа
0

Если вы выполняете pip с помощью sudo, вы можете захотеть флаг sudo 's -H

-H, --set-home установить переменную HOME, чтобы указать домашний каталог пользователя

например

sudo -H pip install virtualenv

12

Когда вы запускаете команду, используяsudo, это сохранит пользователейumask. pip просто устанавливает файлы, он не меняет прав доступа, поэтому вы получите файлы с набором прав доступа в соответствии с umask текущего пользователя, который может быть только для чтения владельцем (0077) и, следовательно, для чтения пользователем root только.

Это означает, что вы можете установить Umask на что-то разумное, какumask 0022 перед запускомsudo pip install, Или использоватьsudo su открыть корневую оболочку с настройками по умолчанию, а затемpip install.

Вы также можете запустить sudo bash, затем umask 0022, затем установить pip
Отличный совет, спасибо. После установки я изменил разрешения: cd /usr/local/lib/python2.7/site-packages; chmod -R o + rw * и все работало нормально
Хм, это действительно кажется странным, особенно "ничего не меняя". часть. Я видел эту проблему только при запуске pip через sudo, теперь я всегда запускаю pip из корневой оболочки с правильным umask, с тех пор со мной такого не происходило. Не знаю, что здесь происходит ...
Первоначально, когда один из наших сотрудников сообщил об этом, я подумал о том же. Тем не менее, это случилось со мной пару раз, когда он сначала устанавливает ограничительные разрешения, но потом, когда я запускаю его снова, ничего не меняя, он работает нормально. Belmin Fernandez
@artejera - это очень плохая идея, поскольку она открывает большую уязвимость безопасности. Теперь любой может разместить или изменить файлы и поставить под угрозу любое другое использование этих пакетов. Ничто ниже / usr не должно быть доступно для записи!

Похожие вопросы