La ligne "rm nohup.out" est pas géniale, car il va tenter de le supprimer dans le dossier ou tu es
Si tu le lances depuis un ssh en root, il sera dans le dossier où tu te trouves
Si tu le lances en auto il sera dans le dossier /root (enfin, suis même pas sur)
Je te conseillerais de supprimer la ligne, et de faire une purge "manuelle" du fichier lorsque tu sauras où il se dépose en auto (via la commande "echo > nohup.out")
Je pense que c'est sur cette ligne que çà foire
Pour en être sur, avant de lancer le script à la main, tape "set -x" puis lance le script
Ca te donnera les étapes qu'il effectue, et tu verras plus précisément ou il plante
Edit : Le "-c" du grep est à retirer aussi