Estou um pouco confuso com a forma como o disco rígido/dispositivo de armazenamento linux, os arquivos de bloco são nomeados.
Minhas perguntas são:
Como os dispositivos e partições IDE são nomeados?
Como os dispositivos e partições EIDE são nomeados?
Como os dispositivos e partições PATA são nomeados?
Como os dispositivos e partições SATA são nomeados?
Como os dispositivos e partições SCSI são nomeados?
Por fim, tenho lido artigos sobre esse assunto e vi menções de 'drives mestre' e 'drives escravos'. O que são, para que servem e como são nomeados?
Introdução
Em primeiro lugar, todos os dispositivos preenchem a
/dev
pasta.Além disso, é importante observar que os termos (E)IDE e PATA geralmente se referem à mesma coisa, que é o padrão de interface PATA . IDE e PATA são termos intercambiáveis neste contexto.
Houve uma grande mudança nas convenções de nomenclatura para dispositivos de bloco no Linux, em torno do lançamento do kernel Linux versão 2.6. O kernel suporta todos os dispositivos ATA por meio de libATA , que começou com suporte a dispositivos SATA em 2003 e foi estendido para o suporte PATA atual.
Portanto, esteja ciente de que, dependendo da sua distribuição e versão do kernel, a convenção de nomenclatura das unidades pode ser diferente.
Desde algum tempo, os dispositivos PATA em distribuições "modernas" são nomeados como os drives SATA, já que ambos agora usam libATA.
Para sua distribuição, você pode encontrar isso em
/lib/udev/rules.d/60-persistent-storage.rules
.No meu sistema usando o Debian 9, também é o caso. Por exemplo:
Ao navegar neste arquivo, você saberá como sua distribuição nomeará cada dispositivo de bloco que você pode conectar à sua máquina.
Bloquear convenções de nomenclatura de dispositivos
Unidades IDE
hda
hdb
Como só pode haver duas unidades em um controlador/cabo IDE, o mestre é o primeiro e o escravo é o segundo. Como a maioria das placas-mãe são equipadas com dois controladores IDE, o mesmo acontece com o segundo controlador:
hdc
sendo a unidade mestre no segundo controlador ehdd
a unidade escrava.Esteja ciente de que, desde o kernel Linux 2.6.19, o suporte de drives IDE foi mesclado com drives SATA/SCSI e, portanto, serão nomeados como eles.
Unidades SATA e SCSI
Essa convenção de nomenclatura começou com unidades SCSI e foi estendida para unidades SATA com libATA. Aplica-se a SCSI, SATA, PATA, bem como outras unidades, fora do escopo da questão OP (armazenamento em massa USB, FireWire, etc.). De qualquer forma, normalmente, todos os dispositivos que usam um barramento serial usam a mesma denominação hoje em dia (exceto o drive NVMe, mas isso seria uma história para dispositivos PCI).
sda
sdb
Convenções de nomenclatura de partições
Em relação às partições, cada uma delas é indicada por um número ao final de cada disco, denominado conforme descrito anteriormente, a partir de 1 . Exceto por alguns outros dispositivos não mencionados no OP, é sempre o caso.
Por exemplo, para as partições em uma unidade SATA, elas seriam listadas como
sda1
,sda2
e assim por diante, para partições primárias . As partições lógicas começam no índice "5", enquanto a partição estendida recebe o índice "4". Observe que isso obviamente é verdade apenas para unidades que usam MBR e não GPT.Abaixo, esta é a saída de
lsblk
dar um exemplo para o disco chamadosdd
, com 3 partições primárias (sdd1
,sdd2
,sdd3
), 1 partição estendida (sdd4
) e 2 partições lógicas (sdd5
,sdd6
).Dispositivos mestres e escravos
Uma única interface IDE pode suportar dois dispositivos. Normalmente, as placas-mãe vêm com interfaces IDE duplas (primária e secundária) para até quatro dispositivos IDE em um sistema.
Para permitir que duas unidades operem no mesmo cabo paralelo, o IDE usa uma configuração especial chamada mestre e escravo. Essa configuração permite que o controlador de uma unidade informe à outra unidade quando ela pode transferir dados de ou para o computador. O nome vem do fato de o drive escravo perguntar ao mestre se está se comunicando com a placa-mãe; se o mestre estiver, ele dirá ao escravo para esperar até que a operação termine, mas se não, dirá ao escravo para prosseguir.
A função mestre/escravo pode ser escolhida graças ao recurso "Cable Select": você pode usar um jumper em cada unidade que suporta esse recurso para selecionar "Master", "Slave" ou "Auto" (esta última opção significa que o mestre está na extremidade do cabo IDE e o escravo é o outro).
Encontrei uma referência antiga que se refere a tudo menos SATA.
As unidades SATA e SCSI são /dev/sd X onde começa com a para se referir à unidade física.
As partições são /dev/sdX Y onde Y representa o número da partição (começando com 1) dentro desse dispositivo.
O nome do dispositivo EIDE era o mesmo que o IDE é o mesmo que o PATA, antes do kernel Linux 2.6.19 (Obrigado, Paradox , por notar a mudança!)
/dev/hda era a unidade 'mestre' no controlador 'primário'.
/dev/hdb era a unidade 'escrava' no controlador 'primário'.
/dev/hdc era a unidade 'mestre' no controlador 'secundário'.
/dev/hdd era a unidade 'escrava' no controlador 'secundário'.
Um número segue cada dispositivo de unidade para indicar a(s) partição(ões), começando com 1.
Desde o kernel Linux 2.6.19, a mesma convenção de nomenclatura que SCSI e SATA é usada para EIDE, IDE e PATA.