Questão Como executar um aplicativo na inicialização automaticamente?


Eu estou usando "UbuntuServer13.10" e tenho IP dinâmico. Então, para fins de aprendizado, quero adicionar um host no meu IP dinâmico para abrir meu servidor facilmente de qualquer lugar. Para este propósito, eu usei www.noip.com roteiro. Tudo está funcionando bem e está mudando meu IP Dinâmico para lá, automaticamente, sempre que meu IP Dinâmico for alterado. Agora o problema é que, para esse propósito, eu tenho que iniciar o aplicativo "No-IP" em cada inicialização manualmente que eu não quero. estou usando /usr/local/bin/noip2 no terminal para iniciar manualmente após o início do servidor. Então, a minha principal questão é que Como iniciar este aplicativo na inicialização / inicialização do servidor automaticamente? Esperando por uma solução perfeita e fácil ...

Eu tenho o script abaixo fornecido pelo departamento de suporte "No-IP". Isso é ok e onde adicionar isso ...

####################################################### 
#! /bin/sh 
# . /etc/rc.d/init.d/functions  # uncomment/modify for your killproc 
case "$1" in 
start) 
echo "Starting noip2." 
/usr/local/bin/noip2 
;; 
stop) 
echo -n "Shutting down noip2." 
killproc -TERM /usr/local/bin/noip2 
;; 
*) 
echo "Usage: $0 {start|stop}" 
exit 1 
esac 
exit 0 
####################################################### 

4
2018-04-02 06:55


origem




Respostas:


Você deve adicionar seu script aos padrões de runlevel:

sudo touch /etc/init.d/noip2
sudo chmod 755 /etc/init.d/noip2
sudo update-rc.d noip2 defaults

Em seguida, adicione isso /etc/init.d/noip2

####################################################### 
#! /bin/sh 
# . /etc/rc.d/init.d/functions  # uncomment/modify for your killproc 
case "$1" in 
start) 
echo "Starting noip2." 
/usr/local/bin/noip2 
;; 
stop) 
echo -n "Shutting down noip2." 
killproc -TERM /usr/local/bin/noip2 
;; 
*) 
echo "Usage: $0 {start|stop}" 
exit 1 
esac 
exit 0 
####################################################### 

Em seguida, reinicie e seu script estará em execução.


4
2018-04-02 06:59



Eu tentei seu código e ele é executado quando eu faço login no meu usuário e atualizo meu host automaticamente sem iniciar manualmente. Mas Eu quero executar este "No-IP" na inicialização / start não após o login para minha conta de usuário. Como fazê-lo rodar automaticamente sem logar qualquer conta? - Muhammad Hassan
Veja a resposta atualizada - Danatela
Veja minha pergunta atualizada. Este é o script que eu tenho que adicionar rc.local em vez do acima que você forneceu. Se sim, depois de atualizar o novo script fornecido pelo suporte "No-IP", devo adicionar esse script aos padrões de nível de execução como você mencionou acima? - Muhammad Hassan
Veja a resposta atualizada. - Danatela
Eu fiz tudo como você disse, mas ainda não obtive o aplicativo na inicialização / boot. :( - Muhammad Hassan


Existe um link System-V no linux que permite a execução de scripts em diferentes níveis de inicialização.

Siga os passos abaixo:

  1. faça um script de shell (que executa seu aplicativo) por exemplo.

    nome começar

    #!/bin/bash
    /bin/bash xxx.sh
    
  2. coloque isto começar para /etc/init.d/ diretório

  3. agora precisamos colocar esse script para iniciar o nível
  4. Comando de execução update-rc.d start Agora reinicie seu PC.

Espero que te ajude.


0
2018-04-02 07:37