Se você executar no terminal:
./home/user/backup.sh
você provavelmente receberá um erro como:
bash: ./home/user/backup.sh: No such file or directory
Isso porque neste caso não é correto usar esse . (ponto) na frente do caminho para o scipt ( /home/user/backup.sh ). Também certifique-se de que backup.sh seja executável executando:
chmod +x /home/user/backup.sh
E também, certifique-se de que você chage user com seu nome de usuário em todos os lugares.
E, finalmente, certifique-se de que o status de saída do script /home/user/backup.sh seja 0. Se o status de saída for diferente de 0, o segundo comando ( echo "Backup done: $(date +"\%Y\%m\%d\%H\%M\%S")" - onde você tem que escapar todos os caracteres % ) nunca ser executado por causa do && operator .
Como eu disse, você tem que escapar de todos os % (percent) em uma entrada crontab porque tem um significado especial neste caso: