Criar um novo serviço no Centos7

De Wiki do Ouro Minas Palace Hotel
Ir para navegação Ir para pesquisar

https://douglastos.wordpress.com/2018/03/19/systemd/


Nos RHEL 5 e 6, utilizamos o recurso de inicialização automática da RHEL através de /etc/rc.d/init.d para executar qualquer script na inicialização do sistema. Começando com RHEL 7 init é substituído por systemd e o método anterior está obsoleto. Há outra maneira em RHEL 7 para fazer o mesmo, e hoje tive essa demanda de gerar uma tarefa na inicialização dentro do diretório proc, mais não posso recompilar o kernel, logo esse seria a solução, vamos a como efetuar esse procedimento.


Primeiro passo criar um scipt (no meu caso criei um diretório na raiz /rotinas/ com permissão +x)

#vi /rotinas/tcp_tw.sh
#!/bin/bash
echo "1" >> /proc/sys/net/ipv4/tcp_tw_recycle
echo "1" >> /proc/sys/net/ipv4/tcp_tw_reuse


Agora vamos aplicar a permissão também no script:

#chmod +x /rotinas/tcp_tw.sh


Criando o Serviço do Systemd Agora vamos criar um arquivo no diretório /etc/systemd/system/ com o conteúdo abaixo:

#vi /etc/systemd/system/tcp_tw.service
[Unit]
Description=Description for sample script goes here
After=network.target
 
[Service]
Type=simple
ExecStart=/rotinas/tcp_tw.sh
TimeoutStartSec=0
 
[Install]
WantedBy=default.target
Habilitar e funcionar o serviço


# systemctl daemon-reload
# systemctl enable tcp_tw.service
# systemctl start tcp_tw.service

Lembrando que o comando no primeiro script, o nome do script como do serviço, dever ser adaptado pra seu uso.