Capacidade de adicionar arquivos a um diretório, mas não remover arquivos existentes

5

Existe alguma configuração de permissões que permitiria que um usuário, por exemplo, john , adicionasse um arquivo a um diretório d , mas não pudesse remover um arquivo existente de outro usuário, digamos, root ?

Meu entendimento é que isso não é possível, já que é necessário executar permissões para adicionar um arquivo ao diretório, mas isso também dá o poder de desvincular qualquer arquivo no diretório.

(Eu estou usando o Mac OS 10.9, mas esta questão presumivelmente se aplica a todos os sistemas POSIX-ish.)

    
por AmadeusDrZaius 21.09.2014 / 05:13

1 resposta

5

Sim, para isso, você gostaria de definir o bit desse diretório .

trecho

Another important enhancement involves the use of the sticky bit on directories. A directory with the sticky bit set means that only the file owner and the superuser may remove files from that directory. Other users are denied the right to remove files regardless of the directory permissions. Unlike with file sticky bits, the sticky bit on directories remains there until the directory owner or superuser explicitly removes the directory or changes the permissions.

Ou seja, você daria ao usuário john permissões de execução no diretório d para poder adicionar arquivos a ele e marcar o diretório como "pegajoso" com chmod +t /path/to/d para garantir que john ( e quaisquer outros usuários com permissões + x) só podem excluir arquivos (ou subdiretórios) de sua propriedade.

    
por 21.09.2014 / 06:15