Qualquer programa, script ou serviço iniciado durante o tempo de inicialização possui apenas um ambiente limitado. Por isso, você sempre deve usar nomes de caminho completos.
Nesse caso, você precisa inserir o caminho completo onde o txt precisa ser criado. Então, conforme o seu exemplo:
Eu não ficaria surpreso se o arquivo txt for encontrado em / root, supondo que seu serviço seja iniciado