Não é possível obter código para ser executado na inicialização no arquivo init.d

0

Estou trabalhando nisso há literalmente mais de 4 horas. Tudo o que estou tentando fazer é obter o seguinte código para ser executado na inicialização:

IP_ADDR=$(/sbin/ifconfig eth0 | /bin/sed -rn 's/^.*inet addr:(([0-9]+\.){3}[0-9]+).*$//p')
/usr/bin/wget -q -O /dev/null http://example.com/private/RPi_IP.php?send=${IP_ADDR}

Com example.com substituído pelo meu website. Por algum motivo, toda vez que inicio, recebo uma mensagem dizendo que o arquivo de inicialização que eu fiz falhou. Eu não tenho ideia do que fazer. Eu até tentei escrever esse código em outros arquivos de inicialização para outros programas, e isso ainda faz com que ele falhe. Há algo realmente errado com este código? Ele funciona bem como um script bash autônomo, mas não na inicialização.

Depois que eu faço o arquivo que eu coloco, sempre faço:

chmod +x file
sudo update-rc.d file defaults

Há algo de errado com o que estou fazendo acima? Eu estou em um Raspberry Pi com Raspbian se isso for útil.

    
por sand_storm_of_code.txt 04.12.2013 / 04:47

1 resposta

1

Em vez de transformá-lo em um script de inicialização, se você precisar dele para ser executado na reinicialização, eu usaria o cron.
@reboot /path/to/file fará com que ele seja executado na inicialização.
Os scripts no init.d precisam de linhas específicas e outras coisas, e se você não precisa de todos os arquivos, o cron faz o trabalho muito bem.

    
por 04.12.2013 / 05:05

Tags