Como corrigir o erro "Bad minute" ao instalar um novo crontab

4

Instalei um novo Ubuntu 16.04 para substituir o meu sistema operacional Windows.

Estou tentando configurar o cronjobs para rodar o mangento 2.1 via Ampps softaculous. O software foi instalado com sucesso (ambos os amplificadores e magento) e está funcionando bem. Eu estou tentando configurar um crontab mas parece que há um erro na primeira linha segundo 25.

Isso é o que eu estou tentando adicionar ao crontab para o usuário Ampps, usando o comando sudo crontab -e -u ampps

* * * * * /usr/local/ampps/php-5.6/etc
/usr/local/ampps/www/localshop.dev/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /usr/local/ampps/www/localshop.dev/var/log/magento.cron.log
* * * * * /usr/local/ampps/php-5.6/etc
/usr/local/ampps/www/localshop.dev/update/cron.php >> /usr/local/ampps/www/localshop.dev.dev/var/log/update.cron.log
* * * * * /usr/local/ampps/php-5.6/etc
/usr/local/ampps/www/localshop.dev.dev/bin/magento setup:cron:run >> /usr/local/ampps/www/localshop.dev.dev/var/log/setup.cron.log

O que estou fazendo de errado?

Eu segui uma mensagem de erro no magento 2.1 admin que se referia a solucionar problemas de link para a versão 2.0 e para este guia de configuração

    
por user564658 10.07.2016 / 17:40

3 respostas

7

Cada linha crontab deve iniciar com a hora em que o comando deve ser executado e, em seguida, o comando. O formato geral é:

Min Hour Day Month DayOfWeek Command

Então, para executar command às 10:15 todos os domingos, você faria:

15 10 * * 0 command

Não sei quais são seus comandos, mas você tem linhas que não começam com uma definição de tempo. Eu não entendo o que são essas linhas:

* * * * * /usr/local/ampps/php-5.6/etc

Essa é uma hora, mas nenhum comando. Você está dando um diretório. E linhas como essa têm comandos, mas não têm tempo:

/usr/local/ampps/www/localshop.dev/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /usr/local/ampps/www/localshop.dev/var/log/magento.cron.log

Portanto, certifique-se de seguir o formato e você deve estar bem. Se isso não estiver claro, edite sua pergunta e explique quais comandos você está tentando executar.

    
por terdon 10.07.2016 / 18:48
1

Esse tipo de erro também pode ocorrer se você estiver tentando redefinir variáveis do cron para valores vazios como este:

[email protected]
* * * * * do some stuff with error reporting
MAILTO=
* * * * * do another stuff too verbose to receive emails

Observe a linha vazia após MAILTO= na linha 3. Isso resultará na mensagem:

crontab: installing new crontab
"/tmp/crontab.AvDwzo":3: bad minute
errors in crontab file, can't install.
Do you want to retry the same edit? 

A maneira correta de redefinir a variável MAILTO é usar aspas vazias, assim:

MAILTO=''

Espero que isso ajude.

    
por ob-ivan 01.09.2017 / 12:16
1

Da minha experiência anterior, foi devido a um caractere CR / LF antes da primeira linha do cron (já que ele foi editado do Windows e não diretamente do Linux). Eu notei e removi esse caracter de um editor HEX.

    
por robregonm 27.07.2017 / 18:25

Tags