Serviços - iniciando / parando e reiniciando

Serviços - iniciando / parando e reiniciando

Devido ao grande numero de distribuições Gnu/Linux/Outros um administrador pode ficar perdido ao trabalhar com serviços. O simples ato de iniciar um script de Firewall ou o Apache pode parecer uma busca a arca perdida. Para tal reunir um pequeno guia das principais distribuições usadas em servidores.

Definindo Serviços

Serviços são funcionalidades de software-based, ou softwares de base, fornecidas a uma rede de computadores uma vez alocados e inicializados em um servidor. Geralmente são processos ou funções requisitadas por uma maquina chamada cliente ao servidor

Por exemplo, se queremos que todas as maquinas de uma rede possam salvar seus arquivos em um lugar central, facilitando a troca destes arquivos e as rotinas de backup, devemos montar um Servidor de Arquivos. Este servidor possuirá um software responsável em “organizar” o compartilhamento de locais para os usuários salvarem (guardarem) os seus arquivos.

Este software, no caso do Linux, poderia ser o samba, sendo este capaz de facilitar trocas numa rede com maquinas Linux e Windows. Dizemos que o Servidor de Arquivos estará em pleno funcionamento quando o software samba for devidamente configurado e o SERVIÇO samba estiver funcionando (ou, estiver inicializado).

Nem sempre o serviço tem o mesmo nome do programa.

Scripts

Também podemos criar um script para realizar um determinado “serviço” em nosso servidor. Como por exemplo um script de firewall ou compartilhamento de internet que contenha algumas regras tais como:

#!/bin/bash
 
# Habilita o encaminhamento
 echo "1" > /proc/sys/net/ipv4/ip_forward
 
# Limpando as tabelas
 iptables -F
 iptables -t nat -F
 iptables -t mangle -F
 
# Mascarando conexões da rede
 iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Este script deve ser salvo e conseqüentemente “transformado” em executável pelo comando #chmod +x nomedoscript.

Contudo ele ainda não é capaz de receber os comandos start/stop/restart (iniciar/parar/reiniciar), para tal devemos colocar no script estas opções:

case "$1" in
"start")
init_serviço
;;
"stop")
stop_serviço
;;
"status")
status_serviço
;;
*)

Pronto agora você já sabe um pouco mais sobre um serviço e sobre scripts, podemos analisar sua implementação numa distribuição Gnu/Linux:

SLACKWARE

Distribuição famosa por ter que ser configurada na unha é a preferida de muitas pessoas ao criar um firewall. Podemos criar um script para ser executado na inicialização do sistema, evitando que tenhamos que digitar os mesmos comandos ou executar o script toda vez que reiniciar a máquina.

Para isto. copie ou salve o arquivo como /etc/rc.d/rc.nomedoscriptdeserviço

Para parar / iniciar e reiniciar digite o comando: /etc/rc.d/rc.nomedoscriptouserviço stop|start|restart

O mesmo vale para outro serviço: /etc/rc.d/rc.serviço stop|start|restart

Ex:

/etc/rc.d/rc.samba stop|start|restart

Se quiser parar o serviço até para o próximo boot e seus subsequentes use: chmod -x /etc/rc.d/rc.nomedoscriptouserviço

DEBIAN / UBUNTU SERVER

O Debian é uma distribuição conhecida pela estabilidade, com um primoroso e rígido desenvolvimento, possibilitando uma gerencia de instalação e remoção de pacotes famosa, o apt. O Ubuntu é herdeiro desta distro, trazendo algumas inovações na instalação da distribuição e aplicativos.

Após criar o script coloque-o no diretorio /etc/init.d/

Não se esqueça que o script deve ser um executavel.

Para parar / iniciar e reiniciar o script ou um serviço execute /etc/init.d/nomedoscriptouserviço stop|start|restart

Para que o script seja iniciado no boot do sistema, devemos criar um link para o rc desejado:

#cd /etc/rc2.d
#ln -s /etc/init.d/nomedoscriptouserviço /etc/rc2.d/S99nomedoscriptouserviço

Lembrando que o rc(numero).d corresponde ao runlevel do sistema (se você não sabe, é bom dá uma procurado sobre o assunto, em suma o sistema possui diversos níveis de inicialização, executando os aplicativos corresponde aquele nível, desde que possuam o Snumero na frente do nome do script, neste exemplo, o nosso script será executado no nível 2 an posição 99).

Temos ainda o comando “update-rc.d”, que permite definir se um serviço vai ser ativado ou não durante o boot.

Ex:

Para desativar a inicialização automática do proftpd, você usaria o comando:
# update-rc.d -f proftpd remove

Se mudar de idéia e quiser que ele volte a ser inicializado durante o boot, use:
# update rc.d -f proftpd defaults

FEDORA

Fedora é a versão livre do Red Hat com algumas novidades ainda em teste. Desta forma, a gerencia em um será semelhante ao outro. O Red Hat é uma famosa distribuição hoje voltada ao mercado corporativo.

Verifique se o serviço está rodando: service nomedoserviço status

Iniciando / Parando / Reiniciando um serviço: service nomedoserviço stop|start|restart

Para ter o serviço iniciado automaticamente no boot:

1. Abra o programa ntsysv: ntsysv
2. Ache o seu serviço na lista e pressione espaço para habilitar. Os serviços que estiverem marcados com um * serão automaticamente iniciados no boot.

O local onde os scrpts devem ser salvos é o: /etc/rc.d/init.d/

MANDRIVA

O mandriva se comporta de maneira semelhante ao Fedora apresentando algumas facilidades com relação as suas ferramentas gráficas. A distribuição Mandriva tem um certo saudosismo por ter surgido da fusão do Mandrake com a Conectiva, primeira grande distribuição Gnu/Linux com foco em empresas.

Logs de Serviço

Caso algum serviço apresente problemas, não esteja rodando por exemplo, é possível visualizar os logs da inicialização do Linux pelo comando “dmesg” e também pelo arquivo de logs “/var/log/messages” através do comando:

# tail -f /var/log/messages

Rapidinha sobre os Níveis de execução:

Nível 0: Este nível de execução é utilizado para desligar o sistema.

Nível 1: Este nível é o modo de manutenção ou resgate, oferecendo um sistema básico, sem rede, servidor X, nem acesso multi-usuário.

Nível 2: Este nível de execução é idêntico ao próximo(nível 3), a diferença é que não há nenhum serviço de conexão à rede.

Nível 3: Neste nível, um dos mais importantes(senão o mais importante), o Fedora é inicializado em modo texto, com conexão à rede e capacidade multi-usuário.

Nível 4: Este nível de execução é indefinido, mas pode ser usado para inicializar o sistema em um estado personalizado.

Nível 5: Este nível de execução é o ideal para computadores usados como Desktop, pois oferece além de conexão à rede e capacidade multi-usuário, um ambiente gráfico.

FONTE:

http://forum.slackbr.org/forum/viewtopic.php?f=19&t=13520&start=0&st=0&sk=t&sd=a

http://www.debianfordummies.org/wiki/index.php/Compartilhando_Internet_no_linux

http://www.devin.com.br/eitch/fedorafaq/basics/#services

http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=7801&pagina=4

One Response to “Serviços - iniciando / parando e reiniciando”

  1. wasare Says:

    Parabéns, excelente artigo. E ajuda bastante que não entende direito sobre serviços.

Leave a Reply