Scripts do /etc/init.d, como criar e mudar a ordem que sao iniciados???

1. Scripts do /etc/init.d, como criar e mudar a ordem que sao iniciados???

Fábio C. Barrionuevo da Luz
luzfcb

(usa Ubuntu)

Enviado em 10/08/2010 - 09:43h

Ola galera do VOL.

O problema é o seguinte.
Tenho um script que quero que execute como root na inicialização.
Só que ele só pode rodar depois que o Daemon de DHCP (o dpcpd) tiver rodado e pegado o IP, e o Servidor grafico Xorg, estiver ativo.

Alguém sabe como faço esse script.

Sei que todo script do init.d tem que ter um cabeçalho parecido como esse: (tirei de um exemplo):

#!/bin/bash
### BEGIN INIT INFO
# Provides: apaga todas os arquivos do usuario aluno
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Should-Start: $network
# Should-Stop: $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO


Tem alguma coisa sobre funcoes "start" "stop" "restart", mas nao entendi como é que faz elas.

Obrigado a todos...


  


2. Re: Scripts do /etc/init.d, como criar e mudar a ordem que sao iniciados???

Pedro
pedrodaltoe

(usa Fedora)

Enviado em 10/08/2010 - 10:08h

Tu pode fazer um IF, pingar para teu Gateway, se receber resposta continua, se nao receber tenta denovo ou para algo assim

Crie um arquivo, chamado list1.txt com todos os ips que deseja fazer a verificação. Então copie e cole o conteudo abaixo em um arquivo e dê permissão de execução, pronto.

Ele irá te apresentar algo assim

Tirei do VOL mesmo ai http://www.vivaolinux.com.br/topico/Comandos/Shell-ping

pingou <ip>
não pingou <ip>

#!/bin/bash
List=list1.txt
echo "Data e Horario:`date`" >> /tmp/arquivo`date +%d`
cat $List | while read ip
do
ping -c3 $ip > /dev/null
if [ $? = 0 ]; then
echo "pingou $ip" >> /tmp/arquivo_`date +%d`
else
echo "não pingou $ip" >> /tmp/arquivo_`date +%d`
fi
done
mail -s "Resposta dos pings" adt.rodrigo@gmail.com < /tmp/arquivo`date +%d`


3. Re: Scripts do /etc/init.d, como criar e mudar a ordem que sao iniciados???

Ciro Souza
cirofsouza

(usa Slackware)

Enviado em 10/08/2010 - 10:25h

Colega,
Fazer o script rodar depois de pegar o IP é moleza: cria o script no rc.local!
Agora fazer ele rodar depois de carregado o X, ou seja, o usuario ja entrou com login e senha e tudo mais é mais complicado um pouco: nesse caso vc terá que criar um script como outro qualquer e fazê-lo executar como root (sudo) na inicialização do X. Aí vai depender do seu ambiente KDE, Gnome, Xfce, etc.
Espero ter ajudado!!!


4. scripts

Eberson Muenchen
SPH

(usa Debian)

Enviado em 10/08/2010 - 10:29h

Cara seguinte vai um passo a passo.
Nao sei se entendi bem a sua duvida, mas o dhcp roda no inicializar o linux, sendo assim coloca o script no rc.local e vai funfa blzinha

Acessa a pasta:
cd /etc/init.d
Cria o arquivo:
touch rc.script
Permissão de execussão (root):
chmod +x /etc/init.d/rc.script
Edite o arquivo da seguinte forma:
#!/bin/sh


iniciar(){
Ações a serem realizadas no comando start
EX.: /etc/init.d/rc.script start
}

parar(){
Ações a serem realizadas no comando stop
EX.: /etc/init.d/rc.script stop
}

# Script que define açõe das funções.
case "$1" in
"start") iniciar ;;
"stop") parar ;;
"restart") parar; iniciar ;;
*) echo "Use os parâmetros start ou stop"


insira o mesmo no rc.local
cd /etc
nano rc.local


#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

/etc/init.d/rc.script start

exit 0

pronto, so da um shutdown -r now e apos reiniciar testar se deu tudo certo.

Espero ter ajudado..

ATT





5. Re: Scripts do /etc/init.d, como criar e mudar a ordem que sao iniciados???

Pedro Rawan Meireles Limeira
pedrorawan

(usa Fedora)

Enviado em 10/09/2010 - 08:52h

No ubuntu tem um script que se executa antes do login, postLogin, algo assim não tenho certeza, mas você pode colocar nele uma chamada para o seu script. Pois antes do login o dhcp e o X já estão rodando.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts