O que é / etc / services no Linux / Unix?

UNIX sistemas operacionais armazene o que é chamado de arquivo de serviços em / etc / services. Ele armazena informações sobre vários serviços que os aplicativos cliente podem usar no computador. Dentro do arquivo estão o nome do serviço, número da portae o protocolo que usa e quaisquer aliases aplicáveis.

Os números das portas são mapeados para serviços específicos, assim como o arquivo do host em computadores Windows mapeia um nome de host para um endereço de IP. No entanto, o arquivo de serviços do sistema operacional UNIX não inclui endereços IP, mas sim informações como se o serviço é TCP ou UDP e quais nomes comuns ele pode ter.

Exemplo de um arquivo de serviços UNIX

arquivo de serviços

No UNIX, a função principal do arquivo de configuração / etc / services é que os programas possam fazer uma chamada getportbyname () sockets em seu código para entender qual porta eles devem usar. Por exemplo, um daemon de e-mail POP3 consulta getportbyname (POP3) para recuperar o número 110 no qual o POP3 é executado.

A ideia é que se todos os daemons POP3 usarem getportbyname (), não importa qual daemon POP3 você execute, você sempre poderá reconfigurar seu número de porta editando / etc / services.

Não é confiável usar o arquivo de serviços para discernir o que significam os números de porta. Para descobrir quais programas de portas estão usando, você deve usar o programa lsof para descobrir exatamente quais portas estão vinculadas a quais processos. Se executar o lsof não for apropriado, você deve pesquisar as portas em uma referência mais genérica.

Sintaxe

Todos os arquivos de serviços seguem o mesmo sintaxe do:

comentários de apelidos de porta de nome / protocolo

No entanto, um alias e um comentário para cada entrada do banco de dados não são necessários, como você pode ver neste arquivo de serviços de exemplo:

$ cat / etc / services
#
# Copyright 2008 Sun Microsystems, Inc. Todos os direitos reservados.
# O uso está sujeito aos termos de licença.
#
#ident "@ (#) services 1.34 11/08/19 SMI"
#
# Serviços de rede, estilo Internet
#
tcpmux 1 / tcp
echo 7 / tcp
echo 7 / udp
descartar 9 / tcp coletor nulo
descartar 9 / udp coletor nulo
usuários do systat 11 / tcp
dia 13 / tcp
dia 13 / udp
netstat 15 / tcp
fonte chargen 19 / tcp ttytst
chargen 19 / udp ttytst source
ftp-data 20 / tcp
ftp 21 / tcp
ssh 22 / tcp # Secure Shell
telnet 23 / tcp
smtp 25 / tcp mail
time 37 / tcp timserver
tempo 37 / udp timserver
name 42 / udp nameserver
whois 43 / tcp nicname # geralmente para sri-nic
swat 901 / tcp # Samba Web Adm. Ferramenta
servicetag 6481 / udp
servicetag 6481 / tcp
snmpd 161 / udp snmp # SMA snmp daemon
$

Perguntas frequentes

  • O que é Unix?

    o Sistema operacional Unix é uma família de sistemas operacionais. Android, macOS e Linux são todas variantes do Unix. O Unix cria ambientes robustos e multiusuário que são bons para desktops e servidores.

  • Como faço para mover um arquivo de um diretório para outro no Unix?

    Use o comando Unix / Linux mv através de uma janela de Terminal para mover arquivos e pastas em seu computador. Alternativamente, sua distribuição Unix / Linux deve vir com um gerenciador de arquivos. Os gerenciadores de arquivos comumente usados ​​incluem Nautilus, Dolphin, Thunar, PCManFM e Caja.

  • O que é um shell Unix?

    Um shell Unix é uma interface de sistema Unix que atua como um interpretador de linha de comando. O shell Unix recebe sua entrada por meio do teclado e, em seguida, envia esses comandos e programas para o sistema operacional executar.