Como Rodar um Comando curl Após o Reinício no FreeBSD

Em servidores e sistemas Unix-like, muitas vezes precisamos rodar comandos automaticamente quando o sistema é reiniciado. Isso pode ser útil, por exemplo, para notificar um serviço ou iniciar um processo remoto via curl. No FreeBSD, existem duas formas práticas de realizar isso: utilizando o cron ou criando um script de inicialização customizado.

Usando o cron com @reboot

O cron é uma ferramenta poderosa para agendamento de tarefas e, com a opção @reboot, podemos configurar comandos para serem executados automaticamente sempre que o sistema for reiniciado. Para isso, abra o terminal e edite o crontab com o comando crontab -e. Depois, adicione a seguinte linha ao crontab para executar o comando curl após a reinicialização:

@reboot /usr/bin/curl "http://localhost:5678/webhook-test/ba5e4060-4bd5-47e4-909e-e0187f54e292?mensagem=Este%20Servidor%20Foi%20Ligado" > /dev/null 2>&1

Salve o arquivo e saia do editor. A partir de agora, o comando será executado sempre que o sistema reiniciar.

Usando um Script de Inicialização Personalizado

Outra forma de rodar um comando após a reinicialização é criando um script de inicialização que é executado durante o boot do sistema. Primeiro, crie um script personalizado, por exemplo, curl_on_reboot.sh, com o comando:

sudo nano /usr/local/bin/curl_on_reboot.sh

No arquivo do script, adicione o seguinte conteúdo:

#!/bin/sh
/usr/bin/curl "http://localhost:5678/webhook-test/ba5e4060-4bd5-47e4-909e-e0187f54e292?mensagem=Este%20Servidor%20Foi%20Ligado" > /dev/null 2>&1

Em seguida, torne o script executável com o comando:

sudo chmod +x /usr/local/bin/curl_on_reboot.sh

Agora, adicione o script ao arquivo de inicialização /etc/rc.local para garantir que ele será executado ao reiniciar o sistema:

sudo nano /etc/rc.local

Adicione a seguinte linha ao final do arquivo:

/usr/local/bin/curl_on_reboot.sh

Garanta que o rc.local será executado ao reiniciar o sistema com o comando:

sudo sysrc rc_local_enable="YES"

Agora, o script será executado automaticamente sempre que o sistema reiniciar.

Conclusão

Com essas duas soluções simples, você pode configurar um comando curl para ser executado automaticamente após o reinício do seu sistema FreeBSD. A escolha entre usar o cron ou um script de inicialização vai depender de sua preferência e do nível de personalização que você precisa. Ambas as soluções são eficientes e fáceis de implementar, garantindo que seus serviços ou notificações sejam realizados automaticamente após cada reinício.

Rolar para cima