Os shells não interativos não obtêm .bashrc
a menos que sejam solicitados manualmente, e além disso, o serviço provavelmente não invoca o shell (a menos que tenha algum tipo de script wrapper).
Como proceder depende exatamente do que você está tentando alcançar. Os serviços geralmente têm seus próprios arquivos de configuração para modificar seu comportamento, e o ambiente também pode ser especificado para cada serviço especificamente (eu não sou um usuário do Ubuntu, então não sei como isso funciona no seu sistema - é novato, certo?) . Você também pode modificar .profile
que é carregado no login - variáveis, exportadas neste arquivo, são acessíveis a todos os filhos. Se o serviço for realmente executado globalmente pelo sistema init (pela raiz que apenas muda para seu nome de usuário), isso também não funcionará. /etc/environment
pode funcionar, mas eu não recomendaria isso, é feio.
No seu caso, a única maneira realmente limpa é definir o ambiente para o seu serviço.