Como iniciar automaticamente os serviços na inicialização no Linux?

Uma das coisas essenciais para um administrador de sistema saber é como configurar o serviço na inicialização, para que quando um servidor seja reinicializado, ele seja iniciado automaticamente.

Pode haver vários motivos para a reinicialização do servidor, incluindo o seguinte.

  • Programado para semanal, mensal
  • Inesperado devido a problemas de hardware/kernel

Fazendo a configuração correta, você não precisa iniciá-los manualmente toda vez que reiniciar.

Um pouco de automação. Não é?

Os exemplos a seguir são para duas distribuições populares testadas em DigitalOcean servidores.

CentOS ou RHEL 6.x

No exemplo a seguir, peguei um servidor Apache HTTP, mas o procedimento permanece o mesmo para quaisquer outros serviços que você deseja iniciar na inicialização no Red Hat Enterprise Linux (RHEL) ou na versão CentOS 6.

Você pode manter qualquer nome de arquivo de script, e aqui eu mantive httpd

  • Torne-se um usuário root em seu servidor Linux
  • Crie ou copie seu script em /etc/init.d/
[[email protected] init.d]# ls -ltr httpd
-rwxr-xr-x. 1 root root 3371 Jan 6 08:56 httpd
[[email protected] init.d]#

Usaremos o utilitário chkconfig, que está disponível por padrão no Linux ou CentOS.

  • Adicione o script para iniciar na inicialização usando o chkconfig com o parâmetro –add
[[email protected] init.d]# chkconfig --add httpd
[[email protected] init.d]# chkconfig httpd on
  • Confirme se o script foi adicionado com sucesso com –list
[[email protected] init.d]# chkconfig --list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[[email protected] init.d]#

Isso é tudo! O script httpd será chamado para iniciar os serviços na inicialização do Linux.

  Como instalar e usar o gerenciador de tarefas Nozbe no Linux

Caso você precise desabilitar o serviço de inicialização automática, você pode usar os seguintes comandos

chkconfig httpd off
chkconfig --del httpd

RHEL ou CentOS 7.x/8.x

O procedimento para configurar os serviços na inicialização no RHEL 7 é um pouco diferente do RHEL 6. Ele usa o systemd para gerenciar os serviços.

A maioria dos softwares como Apache, PHP, MySQL, scripts Nginx são adicionados em serviços quando você o instala.

Vamos dar um exemplo de PHP-FPM.

Primeiro, vamos ver o status do php-fpm (isso pressupõe que você já tenha scripts em /usr/lib/systemd/system/)

[[email protected] ~]# systemctl status php-fpm
php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled)
Active: inactive (dead) 
[[email protected] ~]#

Como você pode ver, o status está desabilitado, o que significa que não está configurado para iniciar na inicialização.

  Como instalar o navegador Qupzilla no Linux

Vamos habilitar o php-fpm para iniciar na inicialização usando systemctl

[[email protected] ~]# systemctl enable php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.
[[email protected] ~]#

Agora vamos ver o estado

[[email protected] ~]# systemctl status php-fpmphp
php-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; vendor preset: disabled)    Active: inactive (dead) 
[[email protected] ~]#

php-fpm está pronto para iniciar na inicialização. Vamos testá-lo reiniciando o servidor.

Se você precisar desabilitar os serviços de inicialização na inicialização, poderá usar o comando abaixo

systemctl disable php-fpm

Você também pode preferir conferir este post explicando os serviços systemd e de inicialização automática na inicialização.

Ubuntu

A configuração de serviços de inicialização automática no Ubuntu é um pouco diferente. Digamos que o nome do script seja Nginx

  • Faça login no servidor Ubuntu com root
  • Copie o script na pasta /etc/init.d/
  • Execute o comando abaixo
update-rc.d nginx defaults
  • Reinicie o servidor para garantir que os serviços sejam iniciados.
  Como instalar imagens do Docker no Linux

Isso me ajudou e acredito que será benéfico para você também.

A administração do sistema é sempre divertida e desafiadora, e se você deseja turbinar sua carreira, consulte este Curso Udemy.

Em seguida, confira como encontrar o motivo da reinicialização repentina do Linux.
Vá aqui para instalar/atualizar o PHP-FPM 5.6 no CentOS 6.x.

Gostou de ler o artigo? Que tal compartilhar com o mundo?