cron
registra suas ações em syslog
, com um nível de detalhes dependente do nível de log configurado. Isso não inclui a saída de trabalhos.
Em relação a este último, a manpage diz
When executing commands, any output is mailed to the owner of the crontab (or to the user named in the MAILTO environment variable in the crontab, if such exists).
Como você não tem um MTA configurado, a saída é descartada, conforme indicado nos seus registros.
Se você quiser configurar um MTA, os pacotes MTA no Debian e os derivados vêm com scripts de instalação legais que podem configurar uma configuração simples para você; sudo apt install postfix
e siga as instruções.
Como alternativa, você pode redirecionar a saída de suas tarefas cron para o log do sistema usando logger
: canalize a saída de suas tarefas para logger -p cron.info
(para saída regular) e logger -p cron.err
(para erros).
A razão pela qual o cron espera enviar a saída por e-mail é que a saída das tarefas do cron tem uma granularidade que não corresponde ao logger do sistema (os registros não são armazenados por usuário). Cada usuário de um sistema pode configurar tarefas agendadas, mas os usuários não necessariamente têm acesso aos registros do sistema e podem não querer que todos os outros usuários com acesso a esses registros vejam a saída de seus trabalhos. Quando o cron foi projetado, o e-mail era uma maneira sensata de obter a saída de uma tarefa cron para o usuário que a gerenciava: era esperado que os sistemas Unix tivessem uma configuração de e-mail ativa. Hoje em dia é menos óbvio, não porque a adequação do email tenha mudado, mas porque a disponibilidade dele mudou. Em sistemas com e-mail ativo, ainda faz sentido usar isso para a saída do cron; Como alternativa, as tarefas podem gerar arquivos de log por usuário (com redirecionamentos específicos em cada trabalho).
Os timers do sistema não sofrem com esse problema: os timers de usuários fazem login no diário privado por usuário.