Você não pode "executá-lo em primeiro plano" no @reboot. Você pode capturar STDOUT e STDERR em um arquivo de log ( man bash see REDIRECTION ).
Você deve estar ciente de que o ambiente de execução quando o material @reboot é executado é ainda MAIS restrito que o ambiente "normal" cron . Temporariamente, adicione env | sort >/tmp/cronjob.env ao início do script (logo após a linha shebang ( #!/bin/bash )), execute-o e compare-o com o env | sort >/tmp/normal.env