Capítulo 7. Serviços Essenciais

Entendendo os Serviços
Acionando e Parando Serviços
Exemplos de Serviços
crond
atd
syslog
network
portmap
xinet

Serviço é um programa ou conjunto de programas que devem ser executados para iniciar uma atividade em um servidor, geralmente envolvendo vários usuários.

Existem alguns serviços que são considerados essenciais em um sistema Linux. Isto porque, sem eles, o sistema perderia um pouco da sua flexibilidade. Por exemplo, sem um serviço para captar e registrar as mensagens geradas pelos vários outros programas em funcionamento haveria mais dificuldades em detectar problemas no sistema.

Este capítulo irá descrever o que são serviços, como executá-los, e também irá mostrar alguns exemplos de serviços no Conectiva Linux.

Entendendo os Serviços

Um serviço geralmente é controlado por um arquivo contendo um script que, ao ser executado, irá iniciar um ou mais processos em um servidor. No Conectiva Linux estes serviços estão localizados no diretório /etc/rc.d/init.d.

Deve-se ressaltar também que quase todos os serviços estão interligados. Se você deseja acionar um serviço de rede, como por exemplo um servidor de IRC, você precisará acionar o serviço de rede propriamente dito (network). Além disso, para ser incluído no diretório de serviços, deve-se instalar os pacotes necessários para que o serviço possa ser executado sem problemas.

Acionando e Parando Serviços

Após a instalação e configuração dos serviços você poderá executar várias funções sobre eles. As três ações mais importantes são: acionar, interromper ou reiniciar um serviço. Através do Webmin, essas ações são feitas diretamente na configuração de cada serviço, e elas podem ser executadas de modo diferente de um serviço para outro. Veja o exemplo na Figura 7.1. Iniciando um Serviço em sua Configuração, que mostra uma tela de configuração de um serviço Postfix (servidor de e-mail).

Iniciando um Serviço em sua Configuração

Figura 7.1. Iniciando um Serviço em sua Configuração

Neste exemplo, ao clicar sobre a aba Iniciar o Postfix, o serviço é iniciado com as configuração feitas nas opções disponíveis nesta tela. Depois de feito isso, se por algum motivo deseja-se parar o serviço, basta clicar em Parar o Postfix no mesmo local onde você o acionou.

Existem dois modos de inicialização de serviços: automático ou manual. O manual segue o modelo explicado no exemplo do Postfix, ou seja, o administrador é responsável por iniciar e parar o serviço. Caso o administrador deseje inicializar um serviço automaticamente (isto é, quando a máquina for inicializada), poderá configurar isto em Sistema -> Boot e Shutdown. Basta clicar sobre o serviço (ação) e configurar o seu início no boot (opção Iniciar quando o sistema for iniciado?), ou caso ela não esteja listada, basta adicioná-la.

Clicando sobre o serviço você poderá também executar as seguintes ações: Iniciar Agora, Reiniciar Agora, Mostrar Status e Parar Agora. Portanto, além da opção de se iniciar/parar o serviço em sua própria página de configuração, pode-se fazer estas ações também por esta página.

Iniciando um Serviço pela Configuração do Sistema

Figura 7.2. Iniciando um Serviço pela Configuração do Sistema

Além disso, você pode determinar em que nível de execução um serviço irá ser executado; verifique o Capítulo 3. O Processo de Inicialização, onde esta configuração já foi explicada.

[Note]Nota

Lembre-se de que sempre após a configuração ou a mudança de algum serviço, este deve ser reinicializado.

Para iniciar um serviço manualmente você deve utilizar a conta de superusuário e utilizar o comando service. Para inicializar o serviço, após o service basta digitar o nome do serviço seguido do parâmetro start. Com o parâmetro status verifica-se o estado do serviço.

Veja o Exemplo 7.1. Exemplo de Inicialização Manual de um Serviço, que mostra como iniciar o daemon do servidor de correio Postfix:

Exemplo 7.1. Exemplo de Inicialização Manual de um Serviço

# service postfix status
master está parado
# service postfix start
Iniciando os serviços postfix:              [ OK ]

Ao digitar o parâmetro start, o script irá ativar as configurações necessárias para que o servidor de correio inicialize. Caso ocorra algum erro, será enviada uma mensagem. Um exemplo de erro que pode ocorrer está descrito abaixo:

$ service postfix start
Iniciando os serviços postfix: postalias: fatal: \
open /etc/postfix/aliases.db: Permission denied
postmap: [...] /etc/postfix/access.db: Permission denied
postmap: [...] /etc/postfix/canonical.db: Permission denied
...
                                                     [FALHOU]
touch: creating `/var/lock/subsys/postfix': Permissão negada
      

Neste exemplo, um usuário comum está tentando iniciar o postfix, o que não é permitido, pois somente o superusuário pode executar esta atividade. Para interromper um serviço basta digitar o parâmetro stop.