1.. SPDX-License-Identifier: GPL-2.0 2 3.. _pt_BR_admin_devices: 4 5Dispositivos alocados no Linux (versão 4.x+) 6============================================ 7 8Esta lista é a Linux Device List, o registro oficial dos números de 9dispositivo alocados e dos nós do diretório ``/dev`` para o sistema 10operacional Linux. 11 12A versão deste documento em lanana.org não é mais mantida. Esta versão, no 13kernel Linux mainline, é o documento mestre. Atualizações devem ser enviadas 14como patches aos mantenedores do kernel (veja o documento 15:ref:`Documentation/translations/pt_BR/process/submitting-patches.rst <pt_BR_submittingpatches>`). 16Explore especificamente as seções intituladas "CHAR and MISC DRIVERS" e 17"BLOCK LAYER" no arquivo MAINTAINERS para encontrar os mantenedores certos 18a envolver para dispositivos de caractere e de bloco. 19 20Este documento é incluído por referência no Filesystem Hierarchy Standard 21(FHS). O FHS está disponível em https://www.pathname.com/fhs/. 22 23Alocações marcadas com (68k/Amiga) aplicam-se somente ao Linux/68k na 24plataforma Amiga. Alocações marcadas com (68k/Atari) aplicam-se somente ao 25Linux/68k na plataforma Atari. 26 27Este documento está em domínio público. Os autores solicitam, no entanto, 28que versões semanticamente alteradas não sejam distribuídas sem permissão 29dos autores, presumindo-se que os autores possam ser contatados sem um 30esforço desarrazoado. 31 32 33.. attention:: 34 35 AUTORES DE DRIVERS DE DISPOSITIVO, POR FAVOR LEIAM ISTO 36 37 O Linux agora possui amplo suporte à alocação dinâmica de numeração de 38 dispositivos e pode usar ``sysfs`` e ``udev`` (``systemd``) para lidar com 39 as necessidades de nomenclatura. Ainda existem algumas exceções na área de 40 dispositivos seriais e de inicialização. Antes de pedir um número de 41 dispositivo, certifique-se de que você realmente precisa de um. 42 43 Para ter um número maior (major) alocado, ou um número menor (minor) nas 44 situações em que isso se aplica (por exemplo, busmice), por favor envie um 45 patch aos autores conforme indicado acima. 46 47 Mantenha a descrição do dispositivo *no mesmo formato desta lista*. A razão 48 para isso é que essa é a única maneira que encontramos de garantir que 49 temos todas as informações necessárias para publicar o seu dispositivo e 50 evitar conflitos. 51 52 Por fim, às vezes temos que bancar a "polícia do espaço de nomes". Por 53 favor, não se ofenda. Frequentemente recebemos submissões de nomes em 54 ``/dev`` que fatalmente causariam conflitos no futuro. Estamos tentando 55 evitar chegar a uma situação em que teríamos que sofrer uma mudança 56 incompatível para a frente. Portanto, por favor, consulte-nos **antes** de 57 tornar públicos, de qualquer forma, os nomes e números do seu dispositivo 58 --- pelo menos até o ponto em que seria minimamente difícil alterá-los. 59 60 Sua cooperação é apreciada. 61 62.. include:: ../../../admin-guide/devices.txt 63 :literal: 64 65Entradas adicionais do diretório ``/dev/`` 66------------------------------------------ 67 68Esta seção detalha as entradas adicionais que devem ou podem existir no 69diretório /dev. É preferível que os links simbólicos usem a mesma forma 70(absoluta ou relativa) indicada aqui. Os links são classificados como 71"físicos" (hard) ou "simbólicos", dependendo do tipo de link preferido; se 72possível, o tipo de link indicado deve ser usado. 73 74Links obrigatórios 75++++++++++++++++++ 76 77Estes links devem existir em todos os sistemas: 78 79=============== =============== =============== ============================== 80/dev/fd /proc/self/fd simbólico Descritores de arquivo 81/dev/stdin fd/0 simbólico Descritor de arquivo da stdin 82/dev/stdout fd/1 simbólico Descritor de arquivo da stdout 83/dev/stderr fd/2 simbólico Descritor de arquivo da stderr 84/dev/nfsd socksys simbólico Exigido pelo iBCS-2 85/dev/X0R null simbólico Exigido pelo iBCS-2 86=============== =============== =============== ============================== 87 88Observação: ``/dev/X0R`` é <letra X>-<dígito 0>-<letra R>. 89 90Links recomendados 91++++++++++++++++++ 92 93Recomenda-se que estes links existam em todos os sistemas: 94 95 96=============== =============== =============== ========================== 97/dev/core /proc/kcore simbólico Compatibilidade retroativa 98/dev/ramdisk ram0 simbólico Compatibilidade retroativa 99/dev/ftape qft0 simbólico Compatibilidade retroativa 100/dev/bttv0 video0 simbólico Compatibilidade retroativa 101/dev/radio radio0 simbólico Compatibilidade retroativa 102/dev/i2o* /dev/i2o/* simbólico Compatibilidade retroativa 103=============== =============== =============== ========================== 104 105Os nomes alternativos ``/dev/scd?``, sugeridos anteriormente para os 106``/dev/sr?`` de CD-ROM e outras unidades ópticas (que usam comandos SCSI), 107foram removidos na versão 174 do ``udev``, lançada em 2011. 108 109Links definidos localmente 110++++++++++++++++++++++++++ 111 112Os links a seguir podem ser estabelecidos localmente para se adequar à 113configuração do sistema. Isto é meramente uma tabulação da prática 114existente, e não constitui uma recomendação. No entanto, se existirem, eles 115devem ter os seguintes usos. 116 117=============== ================= =============== ============================== 118/dev/mouse porta de mouse simbólico Dispositivo de mouse atual 119/dev/tape unidade de fita simbólico Dispositivo de fita atual 120/dev/cdrom unidade de CD-ROM simbólico Dispositivo de CD-ROM atual 121/dev/scanner scanner simbólico Scanner atual 122/dev/modem porta de modem simbólico Dispositivo de discagem atual 123/dev/root dispositivo raiz simbólico Sistema de arquivos raiz atual 124/dev/swap área de swap simbólico Dispositivo de swap atual 125=============== ================= =============== ============================== 126 127O ``/dev/modem`` não deve ser usado para um modem que suporte tanto discagem 128de entrada quanto de saída, pois isso tende a causar problemas com arquivos 129de trava (lock). Se existir, o ``/dev/modem`` deve apontar para o 130dispositivo TTY primário apropriado (o uso dos dispositivos alternativos de 131saída é obsoleto). 132 133Para dispositivos SCSI, o ``/dev/tape`` e o ``/dev/cdrom`` devem apontar 134para os dispositivos *cozidos* (*cooked*) (``/dev/st*`` e ``/dev/sr*``, 135respectivamente), enquanto o ``/dev/scanner`` deve apontar para o 136dispositivo SCSI genérico apropriado (``/dev/sg*``). 137 138O ``/dev/mouse`` pode apontar para um dispositivo TTY serial primário, um 139dispositivo de mouse em hardware, ou um socket para um programa de driver de 140mouse (por exemplo, ``/dev/gpmdata``). 141 142Sockets e pipes 143+++++++++++++++ 144 145Sockets e pipes nomeados não transitórios podem existir em /dev. As entradas 146comuns são: 147 148=============== ======== ============================= 149/dev/printer socket socket local do lpd 150/dev/log socket socket local do syslog 151/dev/gpmdata socket multiplexador de mouse do gpm 152=============== ======== ============================= 153 154Pontos de montagem 155++++++++++++++++++ 156 157Os nomes a seguir são reservados para a montagem de sistemas de arquivos 158especiais sob /dev. Esses sistemas de arquivos especiais fornecem interfaces 159do kernel que não podem ser fornecidas com nós de dispositivo padrão. 160 161=============== ======== ================================================== 162/dev/pts devpts Sistema de arquivos de escravos PTY 163/dev/shm tmpfs Acesso de manutenção à memória compartilhada POSIX 164=============== ======== ================================================== 165 166Dispositivos de terminal 167------------------------ 168 169Dispositivos de terminal, ou TTY, são uma classe especial de dispositivos de 170caractere. Um dispositivo de terminal é qualquer dispositivo que possa atuar 171como terminal de controle de uma sessão; isso inclui consoles virtuais, 172portas seriais e pseudoterminais (PTYs). 173 174Todos os dispositivos de terminal compartilham um conjunto comum de 175capacidades conhecidas como disciplinas de linha (line disciplines); estas 176incluem a disciplina de linha de terminal comum, bem como os modos SLIP e 177PPP. 178 179Todos os dispositivos de terminal são nomeados de forma semelhante; esta 180seção explica a nomenclatura e o uso dos vários tipos de TTY. Observe que as 181convenções de nomenclatura incluem várias verrugas históricas; algumas delas 182são específicas do Linux, algumas foram herdadas de outros sistemas, e 183algumas refletem o Linux tendo superado uma convenção emprestada. 184 185Um sinal de cerquilha (``#``) em um nome de dispositivo é usado aqui para 186indicar um número decimal sem zeros à esquerda. 187 188Consoles virtuais e o dispositivo de console 189++++++++++++++++++++++++++++++++++++++++++++ 190 191Consoles virtuais são telas de terminal em tela cheia no monitor de vídeo do 192sistema. Consoles virtuais são nomeados ``/dev/tty#``, com a numeração 193começando em ``/dev/tty1``; o ``/dev/tty0`` é o console virtual atual. 194O ``/dev/tty0`` é o dispositivo que deve ser usado para acessar a placa de 195vídeo do sistema naquelas arquiteturas para as quais os dispositivos de 196frame buffer (``/dev/fb*``) não são aplicáveis. Não use o ``/dev/console`` 197para esse fim. 198 199O dispositivo de console, ``/dev/console``, é o dispositivo para o qual as 200mensagens do sistema devem ser enviadas, e no qual os logins devem ser 201permitidos em modo monousuário. A partir do Linux 2.1.71, o ``/dev/console`` 202é gerenciado pelo kernel; para versões anteriores, ele deve ser um link 203simbólico para o ``/dev/tty0``, para um console virtual específico como o 204``/dev/tty1``, ou para um dispositivo primário de porta serial (``tty*``, 205não ``cu*``), dependendo da configuração do sistema. 206 207Portas seriais 208++++++++++++++ 209 210Portas seriais são portas seriais RS-232 e qualquer dispositivo que simule 211uma, seja em hardware (como modems internos) ou em software (como o driver 212ISDN). No Linux, cada porta serial possui dois nomes de dispositivo: o 213primário, ou de chamada de entrada (callin), e o alternativo, ou de chamada 214de saída (callout). Cada tipo de dispositivo é indicado por uma letra 215diferente. Para qualquer letra X, os nomes dos dispositivos são 216``/dev/ttyX#`` e ``/dev/cux#``, respectivamente; por razões históricas, o 217``/dev/ttyS#`` e o ``/dev/ttyC#`` correspondem ao ``/dev/cua#`` e ao 218``/dev/cub#``. No futuro, deve-se esperar que múltiplas letras sejam usadas; 219todas as letras serão maiúsculas para o dispositivo "tty" (por exemplo, 220``/dev/ttyDP#``) e minúsculas para o dispositivo "cu" (por exemplo, 221``/dev/cudp#``). 222 223Os nomes ``/dev/ttyQ#`` e ``/dev/cuq#`` são reservados para uso local. 224 225Os dispositivos alternativos provêem exclusão baseada no kernel e padrões um 226tanto diferentes dos dispositivos primários. Seu principal propósito é 227permitir o uso de portas seriais com programas sem suporte inerente a portas 228seriais, ou com suporte defeituoso. Seu uso é obsoleto, e eles podem ser 229removidos em uma versão futura do Linux. 230 231A arbitragem de portas seriais é provida pelo uso de arquivos de trava com 232os nomes ``/var/lock/LCK..ttyX#``. O conteúdo do arquivo de trava deve ser o 233PID do processo que está travando, como um número ASCII. 234 235É prática comum instalar links como /dev/modem, que apontam para portas 236seriais. Para garantir o travamento adequado na presença desses links, 237recomenda-se que o software persiga os links simbólicos e trave todos os 238nomes possíveis; adicionalmente, recomenda-se que um arquivo de trava seja 239instalado com o dispositivo alternativo correspondente. Para evitar 240impasses (deadlocks), recomenda-se que as travas sejam adquiridas na 241seguinte ordem, e liberadas na ordem inversa: 242 243 1. O nome do link simbólico, se houver (``/var/lock/LCK..modem``) 244 2. O nome "tty" (``/var/lock/LCK..ttyS2``) 245 3. O nome do dispositivo alternativo (``/var/lock/LCK..cua2``) 246 247No caso de links simbólicos aninhados, os arquivos de trava devem ser 248instalados na ordem em que os links simbólicos são resolvidos. 249 250Sob nenhuma circunstância uma aplicação deve manter uma trava enquanto 251espera que outra seja liberada. Além disso, aplicações que tentam criar 252arquivos de trava para os nomes de dispositivo alternativos correspondentes 253devem levar em conta a possibilidade de serem usadas em um TTY que não seja 254de porta serial, para o qual nenhum dispositivo alternativo existiria. 255 256Pseudoterminais (PTYs) 257++++++++++++++++++++++ 258 259Pseudoterminais, ou PTYs, são usados para criar sessões de login ou para 260prover outras capacidades que exijam uma disciplina de linha TTY (incluindo 261capacidade de SLIP ou PPP) a processos arbitrários geradores de dados. Cada 262PTY tem um lado mestre, nomeado ``/dev/pty[p-za-e][0-9a-f]``, e um lado 263escravo, nomeado ``/dev/tty[p-za-e][0-9a-f]``. O kernel arbitra o uso dos 264PTYs permitindo que cada lado mestre seja aberto apenas uma vez. 265 266Uma vez que o lado mestre tenha sido aberto, o dispositivo escravo 267correspondente pode ser usado da mesma maneira que qualquer dispositivo TTY. 268Os dispositivos mestre e escravo são conectados pelo kernel, gerando o 269equivalente a um pipe bidirecional com capacidades de TTY. 270 271Versões recentes dos kernels Linux e da GNU libc contêm suporte ao esquema 272de nomenclatura System V/Unix98 para PTYs, que atribui um dispositivo comum, 273``/dev/ptmx``, a todos os mestres (abri-lo lhe dará automaticamente um PTY 274não atribuído anteriormente) e um subdiretório, ``/dev/pts``, para os 275escravos; os escravos são nomeados com inteiros decimais (``/dev/pts/#`` em 276nossa notação). Isso remove o problema de esgotar o espaço de nomes e 277permite que o kernel crie automaticamente os nós de dispositivo para os 278escravos sob demanda, usando o sistema de arquivos "devpts". 279