Para formalizar e expandir o que alguém disse em um comentário, quando você coloca algo no crontab do root, ele é executado dentro de /root
, não no diretório em que o script está, porque cron
nem sabe onde é. Como os arquivos de backup não estão nessa árvore de diretórios, o comando find
nunca os alcança. Portanto, o trabalho está em execução, ele nunca encontra arquivos para excluir. Fornecer um caminho absoluto para find
ou adicionar cd /home/myusername/backup
primeiro resolverá seu problema.
No entanto, parece não haver necessidade de executar este cronjob como root: todos os arquivos estão dentro do diretório home de myusername
e presumivelmente pertencem a eles também. Por que não colocar seu cronjob dentro do crontab desse usuário? Execute crontab -e
como myusername
e adicione exatamente a mesma linha usada para a versão do root. Dessa forma, você não estará executando desnecessariamente uma tarefa como um usuário privilegiado (que exclui arquivos, nem menos) e também estará em um local de trabalho para o script começar.