O problema que você declarou está possivelmente relacionado à diferença no PATH de você quando você executa o script como usuário logado e quando o script é executado na inicialização.
A saída de 'which' depende do PATH. Então, se o lugar onde seu executável reside não estiver no PATH, ele não retornará nada.
Eu aconselho você a especificar o caminho para o executável no $ command explicitamente. Ou modifique o PATH no topo deste script como este:
PATH="${PATH}:/path/to/where/daemon/lies"