Você precisa definir a propriedade e as permissões do diretório pai (em particular, o write
flag) apenas para o usuário / grupo que poderá alterá-lo.
Renomear no final significa escrever na pasta que contém o arquivo / pasta.
Etapa 1 - propriedade
sudo chown <USERNAME>:<GROUPNAME> </path/to/parent_folder>
-
Isso torna o arquivo ou pasta de propriedade do usuário
<USER>
(para bloquear todos os usuários normais da alteração, por exemplo,root
). -
O
:<GROUPNAME>
é opcional e define o grupo para esse arquivo ou pasta.
Se você não precisa de um grupo especial, eu recomendo usar o grupo de s. Se você quiser que usuários com vários usuários possam alterar, adicione-os a um novo grupo de usuários e defina a propriedade, por exemplo, para
sudo chown root:<GROUPNAME> </path/to/parent_folder>
Para verificar, é a configuração que deve ser executada
ls -la </path/to/parent_folder>
- Isso mostra uma lista de arquivos contidos e a primeira entrada
.
da própria pasta com informações sobre propriedade e permissões.
A saída pode parecer
drwxrwxr-x 1 root root 0 Dec 4 16:59 .
Etapa 2 - permissões
seguido por
sudo chmod u+w </path/to/parent_folder>
sudo chmod g+w </path/to/parent_folder>
sudo chmod o+w </path/to/parent_folder>
Isso faz
-
u+r
o proprietário (usuário) tem permissão para gravar -
g+r
o grupo tem permissão para escrever (isso é opcional e, em alguns casos, não desejado - > do que alterá-lo parag-r
) -
o-r
outros usuários não têm permissão para escrever
Em alguns casos, você também pode querer que a opção -R
de todos os comandos defina a propriedade e as permissões recursivamente também no conteúdo de uma pasta.
Nota :
De qualquer forma, não há como impedir que root
altere nada em seu sistema. Assim, outros usuários ainda poderiam mudar usando sudo
.