Existe, na verdade, um limite no número de unidades expostas pelo subsistema SCSI abstrato do Linux, que inclui unidades SATA e USB. Isso ocorre porque os arquivos do dispositivo são marcados por pares de números de dispositivos maiores / menores e o esquema alocado para o subsistema SCSI tem esse limite implícito.
link
Os seguintes opcodes principais são alocados: 8, 65 a 71 e 128 a 135, resultando em um total de 16 blocos alocados. O código de operação secundário é limitado a 256 valores possíveis (faixa de 0,255). Cada disco recebe 16 opcodes secundários consecutivos onde o primeiro representa o disco inteiro e os próximos 15 representam partições.
let major = number of major allocated opcodes = 16
let minor = number of minor opcodes per major opcode = 256
let parts = number of minor opcodes per disk = 16
major * (minor / parts) = 16 * (256 / 16) = 256 possible drives
Eu já vi pessoas escreverem 128 como o limite. Acredito no Linux mais recentemente 128..135, o que explicaria a discrepância.
O esquema de nomenclatura ( /dev/sdbz7
) é escolhido pelo userland, não pelo kernel do Linux. Na maioria dos casos, eles são gerenciados pelo udev, eudev ou mdev (embora no passado tenham sido criados manualmente). Eu não sei seus esquemas de nomeação. Não confie necessariamente em todos os dispositivos de nomes de sistemas baseados no Linux da mesma maneira, pois o administrador do sistema pode modificar as políticas de nomenclatura de dispositivos.