.\" -*- nroff -*- .\" .\" This manpage is Copyright (C) 1996 Austin Donnelly , .\" with additional material (c) 1995 Martin Schulze .\" .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" .\" This manpage was made by merging two independently written manpages, .\" one written by Martin Schulze (18 Oct 95), the other written by .\" Austin Donnelly, (9 Jan 96). .\" .\" Thu Jan 11 12:14:41 1996 Austin Donnelly .\" * Merged two services(5) manpages .\" .TH SERVICES 5 "11/01/1996" "Linux" "Manual do Programador Linux" .SH NOME services \- lista de serviços da rede Internet .SH DESCRIÇÃO .B services é um arquivo ASCII provendo um mapeamento amigável entre nomes textuais para serviços da internet, e consignar suporte para números de portas e tipo de protocolos. Todos programas de rede deveriam pesquisar este arquivo para receber um número de porta (e protocolo) para seus serviços. As rotinas da biblioteca C .BR getservent (3), .BR getservbyname (3), .BR getservbyport (3), .BR setservent (3), e .BR endservent (3) suportam a pesquisa destes arquivos a partir de programas. Números de portas são designadas pelo IANA (Internet Assigned Numbers Authority), e atualmente a política deles é designar ambos os protocolos TCP e UDP quando designando um número de porta. Então, a maioria dos lançamentos deveriam ter duas entradas, mesmo que somente para serviços TCP. Números de portas abaixo de 1024 (tmabém chamada de portas 'de baixo nível') podem somente ser acessadas pelo root (veja .BR bind "(2), " tcp "(7), and " udp "(7).)" Isto é feito para clientes conectando portas de baixo nível possam confiar que o serviço executado na porta é uma implementação padrão, e não um serviço qualquer rodado por um usuário da máquina. Os famosos números de portas especificados pela IANA são normalmente localizados no espaço do superusuário. A presença de um lançamento para um seviço no arquivo .B services não significa necessariamente que o serviço esteja rodando atualmente na máquina. Veja .BR inetd.conf "(5)" para configurações de serviços da Internet ofereçido. Note que nem todos os serviços de rede serão iniciados pelo .BR inetd "(8), " e assim podem não aparecer em .BR inetd.conf "(5). " Em particular, servidores de notícias (NNTP) e correio (SMTP) são muitas vezes inicializados pelos scripts de boot do sistema. O localização do arquivo .B services é definido por .B _PATH_SERVICES em .IR /usr/include/netdb.h "." Isto é usualmente selecionado por .IR /etc/services "." Cada linha descreve um serviço, e é da forma: .IP \f2service-name\ \ \ port\f3/\f2protocol\ \ \ \f1[\f2aliases ...\f1] .TP onde: .TP 10 .I service-name é um nome amigável para o serviço é conhecido por e procurado sob. Ele é sensivel ao caso. Muitas vezes, o programa cliente é nomeado depois do .IR service-name "." .TP .I port é o número da porta (em decimal) para uso deste serviço. .TP .I protocol é o tipo de protocolo para ser usado. Este campo deve estar compatível com a entrada no arquivo .BR protocols "(5)" . Valores típicos incluem os .B tcp e .BR udp "." .TP .I aliases e um espaço opcional ou tabulação separa listas de outros nomes para este serviço (mas veja a seção PROBLEMAS abaixo). Novamente, os nome são sensíveis ao caso. .PP Espaços ou tabulações podem ser usadas para separar os campos. Comentários são iniciados pelo sinal (#) e continuam até o final da linha. Linhas em branco são ignoradas. O .I service-name deveria iniciar na primeira coluna do arquivo, desde que espaços iniciais não sejam tirados. .I service-names poderiam ter qualquer caractere imprimível excluindo espaço ou tambulação, de qualquer forma, um escolha conservadora de caracteres deveria ser usada para minimizar problemas de interomperabilidade. Por exemplo: a-z, 0-9, e hífen (\-) poderiam ser sensível a seleção. Linhas que não combinam com este formato não poderiam estar presente no arquivo. (Atualmente, elas são silenciosamente omitidas por .BR getservent "(3), " getservbyname "(3), and " getservbyport "(3)." De qualquer forma, este comportamento precisaria contar com ele.) Conforme compatibilidade pregressa para as caracteristicas, a barra (/) entre o número da .I porta e o nome do .I protocolo podem, na realidade, ser uma barra ou uma vírgula (,). Uso da vírgula em modernas instalações não é recomendado. Este arquivo pode ser distribuído sobre uma rede usando um serviço de nomeação como Yellow Pages/NIS or BIND/Hesiod. Um exemplo do arquivo .B services pode parecer com: .RS .nf .sp .ta 3i netstat 15/tcp qotd 17/tcp quote msp 18/tcp # message send protocol msp 18/udp # message send protocol chargen 19/tcp ttytst source chargen 19/udp ttytst source ftp 21/tcp # 22 - unassigned telnet 23/tcp .sp .fi .RE .SH PROBLEMAS Havia um máximo de 35 aliases, devido a maneira que o código do .BR getservent "(3)" era escrito. Linhas com mais caracteres que .B BUFSIZ (atualmente 1024) serão ignoradas por .BR getservent "(3), " getservbyname "(3), e " getservbyport "(3)." De qualquer, isto também faz a próxima linha ter uma análise misturada. .SH ARQUIVOS .TP .I /etc/services A lista de serviços da rede Internet .TP .I /usr/include/netdb.h Definição de .B _PATH_SERVICES .SH "VEJA TAMBÉM" .BR getservent (3), .BR getservbyname (3), .BR getservbyport (3), .BR setservent (3), .BR endservent (3), .BR protocols (5), .BR listen (2), .BR inetd.conf (5), .BR inetd (8). Determindas RFC, mais recentemente RFC 1700, (AKA STD0002) Guia de Serviços para Yellow Pages Guia de Serviços para BIND/Hesiod .SH TRADUÇÃO E REVISÃO PARA A LÏNGUA PORTUGUESA \&\fR\&\f(CWAndré L. Fassone Canova (tradução)\fR \&\fR\&\f(CWRoberto Selbach Teixeira (revisão)\fR