script - php cron php
php exec() no se ejecuta a través de un trabajo cron (2)
Debería ser específico con su ruta para gpio
y dar la ubicación exacta para que cron sepa dónde encontrarlo, cron no gpio
/usr/local/bin
.
/usr/local/bin/gpio
Entonces será:
exec(''/usr/local/bin/gpio write 7 0);
He estado golpeando mi cabeza contra esto por horas ahora.
Estoy ejecutando un script php a través de un trabajo cron, todo en el script funciona, excepto el método exec()
.
<?php
exec(''gpio write 7 0'');
// Open the file to get existing content
$current = file_get_contents(''log.txt'');
// Append a new person to the file
$current .= get_current_user().'' - ''.date(''H'').":".date(''i'')." - gpio write 7 0/n";
// Write the contents back to the file
file_put_contents($log, $current);
?>
Si ejecuto el script php directamente desde el terminal, funciona tanto con el usuario pi
como con el usuario root
.
Los datos que se escriben en el archivo log.txt
cuando se ejecuta la tarea cron me parecen bien, aquí hay una muestra:
root - 00:16 - gpio write 7 0
root - 00:17 - gpio write 7 0
root - 00:18 - gpio write 7 0
root - 00:19 - gpio write 7 0
Intenté dar al archivo php que se va a ejecutar los permisos 755
y 777
sin suerte.
Esto es lo que tengo cuando ejecuto sudo crontab -e
*/1 * * * * /usr/bin/php /var/www/check_time.php
Cualquier ayuda sería muy apreciada.
Gracias por adelantado.
en la línea
exec(''gpio write 7 0);
deberia ser
exec(''gpio write 7 0'');
? Parece que el ''nunca fue cerrado.