Подтвердить что ты не робот

Общие, записываемые папки в jupyterhub

В настоящее время мы создаем среду jupyterhub в контейнере докеров и боремся с общими папками. Наша цель - создать общую папку, доступную для записи всем пользователям.

В каждой домашней папке пользователя есть символическая ссылка ~/shared to /opt/shared. Целевая папка имеет разрешения 777 и принадлежит группе jupyter. Каждый пользователь является членом группы jupyter. Однако, если один пользователь создает файл в общей папке, зарегистрированной в своей учетной записи в веб-приложении, разрешения устанавливаются на 644. Поэтому ни один другой пользователь не может редактировать файл.

Я попытался установить umask в 000 в файлах /etc/profiles и ~/.bashrc для каждого пользователя. Тем не менее, кажется, что jupyter игнорирует это. Есть ли возможность настроить jupyter для создания новых файлов с правами g+w по умолчанию? Я хотел бы избежать настройки списков управления доступом с помощью setfacl на уровне файловой системы, потому что для него требуются пользовательские флаги в /etc/fstab.

4b9b3361

Ответ 1

  • Установите группу (т.е. jupyter в вашем случае) в общую папку chgrp jupyter /opt/shared
  • Разрешить группе писать в этот каталог + сделать группу липкой (новые файлы создаются с помощью этой группы вместо первичной группы пользователя) chmod g+ws /opt/shared
  • Для каждого пользователя создайте ~/.jupyter/jupyter_notebook_config.py

Со следующим содержанием:

  import os
  os.umask(0o002)

Новые созданные файлы будут доступны для записи группой.