dans tous les cas, sur un syno, il faut relancer cron.
De plus, une tâche cron est lancée dans son propre environnement qui ne contient pas, en général, les bonnes variables d'environnement, notamment $PATH. De ce fait, il faut mettre dans les scripts appelés par cron le chemin d'accès complet.
Pour mémoire, un script doit contenir en première ligne le shebang, qui définit l'interprêteur à lancer. Sinon il faut lancer le script sous la forme shell script (par exemple /bin/ash /volume1/save/www/MONSCRIPT.sh), là aussi en mettant le chemin complet.
et pour ce qui est du script, il faudrait n'envoyer un mail qu'en cas d'échec. Ton script envoie OK dans tous les cas !
exemple :
ncftpget -u LOGIN -p PASSWORD -R www.MONSITEWEB /volume1/save/www/www/MONSITEWEB /web/* && echo "ok" | nail -s 'NAS MONSITEWEB' mon@email.com enverra en mail en cas de réussite.
ncftpget -u LOGIN -p PASSWORD -R www.MONSITEWEB /volume1/save/www/www/MONSITEWEB /web/* || echo "pas ok" | nail -s 'NAS MONSITEWEB' mon@email.com
enverra en mail en cas d'échec