O [1] 2289
após seu comando de segundo plano mostra que funcionou e foi, de fato, colocado em segundo plano.
Mas a saída do seu comando ainda irá para o terminal, a menos que você redirecione. Aqui está a maneira abrangente de fazer isso:
sudo boblightd >std.txt 2>err.txt &
Se você quer stdout e stderr para ir para o mesmo arquivo:
sudo boblightd >std.txt 2>&1 &
E, claro, se você não se importa com a saída de um ou de ambos os fluxos, pode enviar para /dev/null
em vez de um nome de arquivo.
sudo boblightd >/dev/null 2>err.txt &
(esse exemplo joga fora a saída padrão, mas mantém stderr, apenas no caso de algo dar errado.)
UPDATE
O acima é baseado em nenhum conhecimento do que é boblightd. Eu vejo em outra resposta que tem um modo daemon, de modo que deve ser usado em vez disso, neste caso.
BTW, o acima assume que sudo
não solicitará uma senha e você não fechará a janela do terminal. No primeiro caso, eu normalmente uso sudo bash
, digito boblightd >std.txt 2>err.txt &
. Outra maneira é fazer sudo ls
ou algum comando inofensivo para garantir que o acesso seja armazenado em cache.
Para o último, nohup
é o comando mágico para garantir que ele continue funcionando mesmo depois de você sair do Edifício. Ele iria após o sudo
e antes do comando real. Por exemplo. %código%. Ou sudo nohup boblightd >std.txt 2>err.txt &
then sudo bash
e, em seguida, nohup boblightd >std.txt 2>err.txt &
(para deixar o shell da raiz).