Eu tenho um arquivo
-rw-rw-r-- 1 root mygroup 0 Sep 10 14:54 /etc/nginx/mygroup.txt
Os direitos de acesso são definidos para que o grupo mygroup
tenha permissões de leitura e gravação para o arquivo. A gravação do arquivo com um membro de mygroup
funciona ao editar com vi /etc/nginx/mygroup.txt
. No entanto, quando tento anexar um texto ao arquivo com o mesmo usuário usando
echo "blaa" >> /etc/nginx/mygroup.txt
Eu obtenho
-sh: 3: cannot create /etc/nginx/mygroup.txt: Permission denied
A permissão de diretório para o diretório que contém é
drwxr-xr-x 6 root root 4096 Sep 10 16:07 nginx
O usuário pode listar o conteúdo do diretório.
Por que isso acontece e como posso adicionar uma linha ao arquivo de texto do bash sem usar um editor de texto?
Informações adicionais baseadas em comentários:
O usuário não tem direitos de sudo.
É uma duplicata de Por que o sudo não pode redirecionar o stdout para / etc / file, mas o sudo 'nano' ou 'cp' pode? ? Eu não penso assim, porque correr
printf "blaa" | tee /etc/nginx/
produz também
tee: /etc/nginx/whitelist-jutik.txt: Permission denied
Além disso, todas as outras perguntas duplicadas sugeridas são para usuários com direitos de sudo, então acho que essa pergunta não é uma duplicata de nenhuma delas.
Editar: encontrando esta questão resolveu o problema: O membro do grupo não pode escrever nem com permissão de gravação
Aparentemente, as permissões do grupo não estavam completamente em vigor. Logando novamente com o usuário resolveu o problema, ele pode escrever o arquivo com vi e echo.
Tags permissions files shell-script