Tenho lido sobre a "parte pegajosa" e é quase o que eu quero... mas não exatamente.
Fundo
Estou gerenciando uma pequena instância do JupyterHub com três cursos e um instrutor para cada curso. Gostaria de ter uma pasta no servidor para envios de arquivos.
Os alunos (no jupyterhub-users
grupo) devem ser capazes de colocar seus próprios arquivos na pasta, mas não devem ser capazes de mover ou visualizar outros arquivos na pasta. Idealmente, eles devem manter a capacidade de mover ou editar seus próprios arquivos.
Os instrutores do curso (no jupyterhub-instructors
grupo) devem ter acesso total aos arquivos e pastas na submissions
pasta para que possam mover os envios dos alunos conforme acharem adequado.
Minha compreensão atual
Estou ciente do sticky bit… meu problema com ele é que ele deixa os outros instrutores incapazes de modificar o conteúdo da pasta. Existe uma versão do sticky bit que permite que o grupo edite a pasta? Nesse caso, posso definir ACLs de modo que jupyterhub-users
tenham rwx
permissões na pasta (permitindo que eles enviem arquivos para a pasta e vejam o conteúdo dela) e definir o proprietário da pasta para root:jupyterhub-instructors
que os instrutores possam controlar o conteúdo da pasta.
Se tudo mais falhar, suponho que posso criar subpastas na submissions
pasta de propriedade de cada instrutor e, em seguida, definir o sticky bit em cada subpasta. Gostaria de evitar a futura manutenção associada a isso, já que terei que ser o único a lembrar de configurar uma nova pasta no próximo semestre para cada instrutor.