O processo de propriedade do root não pode gravar arquivos

O processo de propriedade do root não pode gravar arquivos

Estou executando um programa (syslog-ng) que deve ler e gravar vários arquivos em um determinado caminho. Ele estava falhando no início, alegando que não conseguia abrir um arquivo nesse caminho.

Por favor, assuma esta estrutura de diretórios:

/var/platform/program

O platformdiretório tem a permissão definida como 0655 (sem permissão de execução para o usuário proprietário). Se eu alterar essas permissões para 0755, o syslog-ng funcionará bem.

Por outro lado, escrevi um pequeno programa em C que tenta abrir e escrever em um arquivo no mesmo diretório, e funciona sem problemas quando executado como root, mas o syslog-ng está falhando...

Qual pode ser o problema neste caso?

Responder1

O syslog provavelmente deseja ir chdirpara o diretório e precisa, portanto, do bit de execução definido no diretório.

VerExecutar vs ler bit. Como funcionam as permissões de diretório no Linux?Para maiores informações.

informação relacionada