Ajuda com script na inicialização do ubuntu-server

Bom dia a todos.

Pessoal estou tentando executar um script na inicialização do ubuntu-server, ele faz o seguinte:


#!/bin/bash

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -o enp4s0 -j MASQUERADE


Qual está sendo meu problema?

Eu coloco o script na inicialização ele executa o script, mas quando inicia o sistema eu tenho que executa-lo manualmente de novo para a internet compartilhar.

eu imagino que seja pela ordem em que ele está sendo executado, acredito que o script esteja sendo executado antes da placa iniciar(só teoria mesmo).

também tentei no crontab -e adicionando @reboot /path/script

Alguém já passou por isso? poderia me dar uma ajuda?

Obrigado.

RC.LOCAL NA SYSTEMD - SCRIPT DE EXECUÇÃO NA INICIALIZAÇÃO DO SISTEMA

Para isso escrevi essa pequena dica. Vi que tem muitas pessoas com problemas.

Edite o arquivo:

sudo nano /etc/systemd/system/rc-local.service

Adicione as seguintes linhas:

[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local
#Descomente linha abaixo para iniciar depois de conectado
#After=network-online.target

[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99

[Install]
WantedBy=multi-user.target

Crie o arquivo rc.local:

printf '%s\n' #!/bin/bash' '# Comandos aqui em baixo, antes do (exit 0)' 'exit 0' | sudo tee -a /etc/rc.local

Coloque permissão para execução:

sudo chmod +x /etc/rc.local

Ative o serviço para executar quando iniciar:

sudo systemctl enable rc-local

Pronto, agora edite o arquivo /etc/rc.local e adicione os comandos que você precisar. Ele será executado toda vez que ligar o computador.

Fonte: Viva o Linux
Créditos: Rodrigo Leutz

1 Curtida

Muito obrigado pela dica, assim que chegar em casa vou tentar e comento se funcionou, obrigado mesmo.

2 Curtidas