Como reiniciar o rc.local sem reiniciar toda a maquina?

Iniciado por lordfox8, 15 de Dezembro de 2014, 19:22

tópico anterior - próximo tópico

lordfox8

Olá senhores sou novo no mundo ubuntu, estou gostando, mas tenho muita inexperiência com o ubuntu mas já estou pegando a manhã de algumas coisas, mas o seguinte montei meu rc.local com as portas iptables a rede etc... gostaria que quando acrescenta alguma porta ou modificasse algum ip tivesse um meio de reiniciar sem ter que parar minha VMBOX e reiniciar a maquina! como fazer isso eu andei pesquisando em alguns outros mas não consegui fazer funcionar o script, e onde eu escrevo o comando para ele reiniciar tipo o dhcp para reiniciar é só colocar sudo service isc-dhcp-server restart ou start...

???

tem como iniciar tambem as unidade do meu hd? tipo as partições sem ter que ficar clicando na unidade para abrir e depois executar o VMBOX?

zekkerj

O rc.local não é um serviço, pra ser reiniciado; é apenas um script. Assim, vc pode simplesmente executá-lo novamente. Mas se vc está fazendo isso pra reconfigurar firewall, o melhor seria vc ter um script de firewall, separado. Assim vc poderia reconfigurar seu firewall a qualquer momento.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

lordfox8

#2
Mas como poço fazer isso???? não tenho muita experiencia nisso, teria algum exemplo?

Queria aprender a utilizar a webmin.... existe algum tutorial em português com configurações básicas.

zekkerj

Executar o rc.local? É só chamar o nome do script na linha de comandos.

sudo /etc/rc.local

Já separar os comandos pra outro arquivo, bem, é exatamente isso... pega os comandos que vc colocou lá dentro, tira, e cria um novo arquivo com eles, tipo, firewall.sh, depois é só chamar o arquivo firewall.sh na hora que vc quiser.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

lordfox8

legal, mas assim ele irá chamar automaticamente??? tipo quando o linux der o boot ele irá subir?

zekkerj

pra isso vc tem que transformá-lo num serviço, o que exige um pouco mais de cuidado.

vc também pode colocar uma chamada pra esse script no próprio arquivo rc.local.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Arthur Bernardes

Eu prefiro trabalhar como um serviço de sistema, no meu ver é mais elegante e simples. Mas como o "zekkerj" disse, exige cuidado.

lordfox8

#7
eu tentei chamar pelo sudo /etc/rc.local mas apresenta um erro

Código do Arquivo:
Citar#!/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.

modprobe iptable_nat
#echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
#echo 1 > /proc/sys/net/conf/default/rp_filter
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP

iptables -A INPUT -p -tcp --dport 3128 -j ACCEPT

#liberar portas

iptables -A INPUT -p -tcp --dport 3333 -j ACCEPT
iptables -A INPUT -p -tcp --dport 1234 -j ACCEPT
iptables -A INPUT -p -tcp --dport 2000 -j ACCEPT

iptables -A INPUT -p -udp --dport 3333 -j ACCEPT
iptables -A INPUT -p -udp --dport 1234 -j ACCEPT
iptables -A INPUT -p -udp --dport 2000 -j ACCEPT

#Redirecionamento de portas
iptables -t nat -A PREROUTING -p tcp --dport 2000 -j DNAT --to 192.168.1.118:2000
iptables -t nat -A PREROUTING -p udp --dport 2000 -j DNAT --to 192.168.1.118:2000

iptables -t nat -A PREROUTING -p tcp --dport 1234 -j DNAT --to 192.168.1.100:1234
iptables -t nat -A PREROUTING -p udp --dport 1234 -j DNAT --to 192.168.1.100:1234

iptables -t nat -A PREROUTING -p tcp --dport 3333 -j DNAT --to 192.168.1.100:3333
iptables -t nat -A PREROUTING -p udp --dport 3333 -j DNAT --to 192.168.1.100:3333

exit 0

Citarroot@00094-01-PC:/home/internet# sudo /etc/rc.local
/etc/rc.local: 19: /etc/rc.local: cannot create /proc/sys/net/conf/default/rp_filter: Directory nonexistent

Isolei o comando acima e apareceu outro erro:
Citarroot@00123-00:/home/internet# sudo /etc/rc.local
iptables v1.4.21: unknown protocol "-tcp" specified
Try `iptables -h' or 'iptables --help' for more information.

lordfox8