Não é possível obter um script para ser executado na inicialização no Debian 7

0

Eu quero que este script seja executado na inicialização do meu servidor Debian Wheezy:

/usr/bin/bitcoind

então eu vou:

$ sudo crontab -e
@reboot /usr/bin/bitcoind 2>&1 >/tmp/bitcoind.out &

Em seguida, salve e saia do arquivo. crontab me notifica:

crontab: installing new crontab

Então eu reinicio:

$ sudo shutdown -r 0

mas quando eu inicializo o backup, o script não está em execução:

$ ps aux | grep bitcoind
# *blank*

no entanto, vejo essa entrada em /var/log/syslog :

Dec 15 22:25:02 mypcname /USR/SBIN/CRON[2886]: (root) CMD (/usr/bin/bitcoind 2>&1 >/tmp/bitcoind.out &)

Alguma idéia de por que isso não está funcionando?

    
por mulllhausen 15.12.2013 / 13:08

1 resposta

0

o problema foi que o bitcoind não era cron. Eu não tinha configurado bitcoind para rodar como root, então ele estava bombardeando na inicialização. Não sei por que, mas a mensagem do dado não estava aparecendo em /tmp/bitcoind.out . de qualquer maneira, quando eu tentei apenas a partir da linha de comando executando bitcoind como root eu tenho:

$ sudo bitcoind
Error: To use bitcoind, you must set a rpcpassword in the configuration file:
/root/.bitcoin/bitcoin.conf
It is recommended you use the following random password:
rpcuser=bitcoinrpc
rpcpassword=xxxxxxxxxxxxxxxxxxxxxxxxx
(you do not need to remember this password)
The username and password MUST NOT be the same.
If the file does not exist, create it with owner-readable-only file permissions.
It is also recommended to set alertnotify so you are notified of problems;
for example: alertnotify=echo %s | mail -s "Bitcoin Alert" [email protected]

então eu corri o problema executando o bitcoind como meu usuário:

$ sudo crontab -e # note that this is still root's crontab!
@reboot sudo -u myusername /usr/bin/bitcoind 2>&1 >/tmp/bitcoind.cron-out

e agora é executado na inicialização. talvez fosse melhor colocar isso no meu próprio crontab? Eu não tenho certeza se isso significaria que só funciona quando eu logar como meu usuário através de? Vou testá-lo novamente mais tarde hoje e atualizar a resposta se isso funcionar ...

atualização

Sim, ele ainda roda mesmo quando eu não faço o login, se eu excluir a entrada do crontab do root e, em seguida, adicioná-lo ao crontab do meu usuário:

$ sudo crontab -e # note that this is still root's crontab!
<delete last line/>
<save and exit/>
crontab: installing new crontab
$ crontab -e
@reboot /usr/bin/bitcoind 2>&1 >/tmp/bitcoind.cron-out
crontab: installing new crontab
    
por 16.12.2013 / 01:17