como adicionar comandos para rodar na inicializacao?

Iniciado por chipito, 22 de Dezembro de 2007, 21:00

tópico anterior - próximo tópico

chipito

ola amigos,

finalmente consegui fazer meu compartilhamento de internet funcionar (nao sei porque ensistem no comando echo 1 > /proc/sys/net/ipv4/ip_forward se nao funciona... e olha q leio isso em todo lugar) mas surgiu outro problema, sou obrigado a digitar estes comandos toda vida q ligo o computador do ubuntu...

tentei colocar os comandos que preciso no /etc/rc.local (e já disseram pra dar um chmod +x nele, ja tentei e nao deu tambem) e não funcionou...

estou colocando no arquivo errado?

preciso rodar:

----------
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up
ifconfig eth1 192.168.0.1 netmask 255.255.255.0 up

route default del
route default add gw 192.168.1.1 dev eth0

modprobe iptable_nat
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
----------




fabiovalinhos

Olha, a primeira coisa que veio na minha cabeça foi o /etc/rc.local.
Tratar os seus comandos como um "daemons"

Como não deu certo, agora eu flquei curioso, quero acompanhar mais de perto este tópico.

Infelizmente não sei como ajudar tirando o rc. Esperar.



Sorte.
73
sudo dpkg no seu quadrado ...sudo dpkg no seu quadrado ...
http://www.youtube.com/watch?v=tHmrq0FtczM

chipito

bem menos mal, achei que só eu q nao conseguia, pois todo mundo me falava pra colocar no rc.local  ::)

andre88

basta ires a Sistema->Preferências->Sessões e meter lá os comandos k keres k seja executados ao iniciar...

fácil! ;)
André Barbosa

clcampos

Citação de: andre88 online 24 de Dezembro de 2007, 19:20
basta ires a Sistema->Preferências->Sessões e meter lá os comandos k keres k seja executados ao iniciar...

fácil! ;)

Acho que assim não atende aos desejos do amigo. Pois se colocar neste lugar eles serão executados ao fazer login no PC, enquanto que colocando a chamada no arquivo /etc/rc.local os comandos são executados durante o boot.

Outra forma é criar um script com os comandos, dar permissão de execução a ele (chmod 555 script, por exemplo), e depois executar o comando abaixo:

Citarln -s /diretorio_onde_esta_o_script/script  /etc/rc2.d/S99script

Troque o termo diretorio_onde_esta_o_script pelo PATH correto do arquivo.

Troque o termo script (nos dois lugares do comando) pelo nome correto do arquivo.

[]'s

Cristiano
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

chipito

Citarln -s /diretorio_onde_esta_o_script/script  /etc/rc2.d/S99script

Troque o termo diretorio_onde_esta_o_script pelo PATH correto do arquivo.

Troque o termo script (nos dois lugares do comando) pelo nome correto do arquivo.

[]'s

Cristiano

ola amigo, obrigado pela resposta
pode explicar melhor o q significa este comando?

e porque rc2.d ??? (existem varios RC dentro da pasta /etc)
e porque S99script qual o significado do S99 ?

obrigado!

fabiovalinhos

Citação de: chipito online 25 de Dezembro de 2007, 18:24
Citarln -s /diretorio_onde_esta_o_script/script  /etc/rc2.d/S99script

Troque o termo diretorio_onde_esta_o_script pelo PATH correto do arquivo.

Troque o termo script (nos dois lugares do comando) pelo nome correto do arquivo.

[]'s

Cristiano

ola amigo, obrigado pela resposta
pode explicar melhor o q significa este comando?

e porque rc2.d ??? (existem varios RC dentro da pasta /etc)
e porque S99script qual o significado do S99 ?

obrigado!

Vou tentar explicar..se eu estiver errado, por favor alguém me corrija, ou acrescenta. Assim eu aprendo também.

pode explicar melhor o q significa este comando?

Cria um link simbólico aonde se encontra seu script até a pasta rc2.

Maiores detalhes, mande no terminal o man ln


e porque rc2.d ??? (existem varios RC dentro da pasta /etc)

Porque seu micro corre em nível dois.
Se vc mandar um runlevel no terminal, ele mostra o resultado para vc (2). É o modo como o sistema está correndo. Parece que esse número vária de distro para distro.
http://pt.wikipedia.org/wiki/Runlevel

e porque S99[b]script[/b] qual o significado do S99 ?
Nesta pasta vc verá um ordem numérica crescente dos links, isso significa que ao iniciar o sistema, os scripts serão iniciados durante o boot em uma ordem lógica.
Isso determina quem vai "levantar" antes de quem.

7355

sudo dpkg no seu quadrado ...sudo dpkg no seu quadrado ...
http://www.youtube.com/watch?v=tHmrq0FtczM

chipito

ok acho q entendi

e como faço esse script? só abrir o gedit e digitar os comandos linha por linha depois salvAR?

clcampos

Citação de: chipito online 26 de Dezembro de 2007, 11:34
ok acho q entendi

e como faço esse script? só abrir o gedit e digitar os comandos linha por linha depois salvAR?

Abra o editor de textos (Aplicações > Acessórios > Editor de Textos), cole o texto abaixo (se for ele mesmo):

Citar
#!/bin/bash
#

ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up
ifconfig eth1 192.168.0.1 netmask 255.255.255.0 up

route default del
route default add gw 192.168.1.1 dev eth0

modprobe iptable_nat
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Altere sua permissão: chmod 555  SEU-TEXTO.sh

Mude SEU-TEXTO.sh pelo nome dele, claro.

Após isto sugiro colocar ele em /etc/init.d:

sudo   cp   SEU-TEXTO.sh      /etc/init.d

Ai sim execute o ln.

[]'s

Cristiano
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!