Esvaziando /var/log/mysql/mysql.log: sem permissões

0

Desejo limpar o conteúdo de /var/log/mysql/mysql.log . Eu tentei isso:

sudo cat /dev/null > /var/log/mysql/mysql.log

Mas diz que não tenho permissões. Isso é para mim porque, como você pode ver, eu estou rodando como root.

Por que não posso esvaziar o conteúdo de mysql.log com esse comando? Qual é o seu conselho para esvaziá-lo?

    
por user35538 15.10.2012 / 18:00

1 resposta

4

O operador > redireciona a saída padrão de sudo (que é invocado com argumentos cat /dev/null ) e, portanto, você está tentando gravar no arquivo de log com seus privilégios de usuário reais, não com privilégio de sudo elevado. / p>

Você deve:

sudo bash -c "cat /dev/null > /var/log/mysql/mysql.log"

Ou:

cat /dev/null | sudo tee /var/log/mysql/mysql.log
    
por 15.10.2012 / 18:10