Eu tenho um diretório, / var / www / someProject / backup / mysql, e eu quero que o usuário mysql escreva nele. Toda vez que tento escrever nele com o usuário mysql, recebo um erro "não consigo ler / gravar". No entanto, o diretório é 777, como você pode ver aqui:
drwxrwxrwx 2 aUser users 4096 2010-03-17 17:14 mysql
Eu também tentei chown o diretório para mysql: mysql, assim como o diretório home do usuário mysql, mas sem sorte, isso não mudou nada.
O que eu estou fazendo errado aqui? Ou o usuário do mysql é limitado ao seu diretório home de alguma outra forma no Ubuntu? Estive me incomodando por dias agora, esse problema tão qualquer ajuda muito apreciada.
Respostas:
Você precisa ter certeza de que o usuário mysql é capaz de acessar o diretório / var / www / someProject / backup / mysql, isto é, ele deve ter pelo menos o 'x' em todos os diretórios pai.
Certifique-se também de que o erro não seja causado pela sua configuração do SELinux (se você estiver usando o SELinux).
fonte
Com a ajuda de Dominik acima, descobri que o Ubuntu está executando o apparmor. Cito da wikipedia:
Com certeza, entre esses programas estava o mysqld. Portanto, não o usuário foi o problema, mas as restrições impostas ao processo pelo apparmor. Eu encontrei a solução aqui
Isto faz do mysqld um processo livre que para mim, nesse servidor, não é problema. Então, depois de dias de busca, o problema foi corrigido!
fonte