Usando o Incrond Inotify, mas tendo problemas com grupos de usuários / permissões

2

No /etc/incron.allow eu adicionei os dois:

root
USER_1

Então eu editei o incrontab para que fique assim:

/var/www/laravel/public/js/main.js IN_MODIFY yui-compressor -o /var/www/laravel/public/js/main.min.js /var/www/laravel/public/js/main.js

Acho que o problema pode ter alguma coisa a ver com permissões ou talvez grupos, mas não tenho certeza, pois não estou recebendo nada quando verifico com tail -f /var/log/syslog

A pasta /var/www/laravel/public é de propriedade de USER_1 no grupo www-data . O Incrify Incrify é feito pelo usuário root . Quando o arquivo main.js é atualizado, o Incrond Inotify não deve ser executado, independentemente do usuário atual, desde que foi definido por root ? Por que não está funcionando e como posso fazer isso funcionar com root ou USER_1 ?

    
por rotaercz 31.07.2015 / 21:43

1 resposta

0

Este é provavelmente um problema com o ambiente PATH no incron. Tente adicionar o caminho completo ao seu programa assim (estou assumindo que yui-compressor reside em /usr/bin/ )

/var/www/laravel/public/js/main.js IN_MODIFY /usr/bin/yui-compressor -o /var/www/laravel/public/js/main.min.js /var/www/laravel/public/js/main.js

para descobrir qual é o caminho completo para yui-compressor executar o seguinte em um terminal:

which yui-compressor

Se você tiver problemas com arquivos de saída corrompidos, considere usar IN_CLOSE_WRITE em vez de IN_MODIFY , porque ele é acionado somente quando o arquivo é fechado e não em todas as operações de gravação. Dependendo de como o editor lida com as edições, isso pode estar mais próximo do que você quer ou não.

Editar: isso deve funcionar bem na sua conta USER_1 . Apenas execute incrontab -e em um terminal quando estiver logado como USER_1 e adicione a linha que eu dei acima.

    
por 20.12.2015 / 16:34