O que você está tentando fazer, se eu entendi, é bastante comum - isso é apenas criar uma pasta compartilhada.
Talvez você esteja perdendo o fato de que renomear um diretório não é controlado pela mesma permissão que modificar o conteúdo desse diretório - o nome do diretório compartilhado é protegido no nível de seu diretório pai.
No caso mais simples, tudo o que você precisa fazer é:
chmod o-w parent ## prevent others from modifying the parent directory
chmod o+rwx parent/THE-UNMOVABLE-UNRENAMABLE-PROTECTED-DIR ## others can write
Mas o precedente permitirá que qualquer usuário modifique o diretório compartilhado. Para uma configuração mais sofisticada, você pode manipular o OWNER e / ou GROUP do diretório de destino:
/parent -- OWNER:you, GROUP:you
/THE-UNMOVABLE-UNRENAMABLE-PROTECTED-DIR/ -- OWNER:userA, GROUP:userA
/userA-files-and-directories/ -- OWNER:userA, GROUP:userA
Use chown
e / ou chmod
para manipular as propriedades de THE-UNMOVABLE-UNRENAMABLE-PROTECTED-DIR
. Você pode ver as propriedades usando ls -l
.
Você pode escolher definir OWNER e GROUP para separar valores, mas isso provavelmente é necessário apenas se você quiser permitir vários usuários enquanto controla quem tem acesso.