Umake - разрешение, отклоненное при установке вне корневого каталога (как раз когда корень)

Я пытаюсь установить firefox-dev с помощью umake. По умолчанию путь установки umake ~/.local/share/; Я быть бы, это было в /usr/local/ или /opt/.

Проблема, кажется, umake (или, скорее os.py скрипт, который это запускает) не наличие разрешения создать файлы/каталоги - это происходит, даже когда я работаю, поскольку администраторский пользователь поднял использование sudo, или я переключился на пользователя root, использующего sudo -i.

Вот пример соответствующей ошибки:

    os.makedirs(self.install_path, exist_ok=True)
  File "/usr/lib/python3.5/os.py", line 231, in makedirs
    makedirs(head, mode, exist_ok)
  File "/usr/lib/python3.5/os.py", line 241, in makedirs
    mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/opt/umake'

Там какой-либо путь состоит в том, чтобы установить двоичные файлы с помощью umake за пределами/home/каталогов?

Править: Ничто необычное в выполненной команде - sudo umake web firefox-dev. Не имеет значения, куда я выполняю его.

Что касается путей установки (ввел в подсказку во время попыток установки), я еще раз попробовал все опции от явно заявленных полных путей (включая создание dirtree сам, который в конечном счете и неудивительно просто продвигает сообщения об ошибках назад к созданию файла) к тому, чтобы быть в целевом dir и использующий '. / '.

У меня нет абсолютно никаких проблем при выполнении чего-либо как корня самого, но те полномочия, кажется, не наследованы сценарием (сценариями) установки Python.

1
задан 7 December 2016 в 08:34

1 ответ

Хорошо, оказывается, что это (довольно давнее) , выпуск с Ubuntu Делает.

существует несколько обходных решений, предложенных одним из devs в вышеупомянутой ссылке.

Первое (предпочтительное) решение:

sudo -s
unset SUDO_UID
unset SUDO_GID

Затем работает umake для устанавливания приложения как нормального - необходимо теперь смочь установить на любом каталоге, который Вы хотите. Работы безупречно.

вторая опция состоит в том, чтобы создать желаемую папку установки заранее и установить полномочия для каталога установки, таким образом, это может быть записано некорневыми пользователями, но я испытал проблемы с помощью этого с некоторыми приложениями, даже когда полномочия были применены рекурсивно, и umake выполнялся с помощью sudo. Я придерживался бы первого метода.

2
ответ дан 7 December 2019 в 13:39

Другие вопросы по тегам:

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