Uso de Verbose em um cron job

0

Estou ocupado configurando um script de backup para executar no meu Pi usando rsync .

Vejo que várias pessoas usam a opção -v em suas tarefas agendadas. Por quê? Ele será executado como root e não em um terminal onde alguém o verá.

Eu entendo que, se algo acontecer, você pode tail /var/logs/syslog , mas a chance de isso acontecer é insignificante.

Como estou executando o backup entre dois discos rígidos externos no mesmo sistema, vejo o benefício de usar -za . O -z para compactação porque, por que não, a CPU mal é tributada na melhor das hipóteses. O -a para preservar permissões, carimbos de tempo, links simbólicos e proprietários e grupos e torná-lo recursivo.

Eu posso remover o -z e substituí-lo por -W para gravar arquivos inteiros em vez de blocos, mas não quero que ele seja executado por muitas horas.

Existe uma maneira de gerar erros encontrados em um arquivo de log de erros? Nesse caso, a opção -v pode fazer sentido - a menos que esteja faltando alguma coisa aqui.

    
por Jim 10.06.2016 / 16:11

1 resposta

2

Geralmente, cron envia a saída dos trabalhos que são executados para o usuário relevante; então -v é útil porque você recebe um email com a saída completa do comando rsync . Em um sistema configurado corretamente, até mesmo o e-mail para root vai para o usuário apropriado.

Para que isso funcione, você precisa que o correio seja configurado apropriadamente no sistema executando cron ; que costumava ser comum em sistemas do tipo Unix, não tanto hoje em dia ... cron usa sendmail por padrão para enviar e-mail; isso pode ser substituído com a opção -m para crond . Como alternativa, você pode configurar crond para registrar a saída do trabalho usando syslog , com a opção -s .

Você também pode redirecionar a saída individual de cron jobs usando o redirecionamento do shell, portanto > somelog.log 2> errorlog.log registraria a saída padrão em somelog.log e o erro padrão em errorlog.log (é claro que você pode adicionar caminhos).

    
por 10.06.2016 / 16:16