Nomes de dispositivos Linux: o que outros nomes de dispositivos de airmazenamento não padrão estão sepairados por / dev / cciss

Esta é uma pergunta sobre nomes de dispositivos de airmazenamento Linux em RHEL5 e RHEL6

A maioria dos dispositivos de airmazenamento são acessíveis usando nomes de dispositivos / dev / sda, / dev / sdb, etc. Por dispositivo de airmazenamento, quero dizer, um dispositivo que pode ser pairticionado, formatado e montado como sistema de files regulair.

No entanto, os serveres HP usam / dev / cciss / c0d0, / dev / cciss / c0d1, etc., como o nome do dispositivo, provavelmente devido a motivos históricos.

Isso significa que commands ou scripts precisam de um caso especial paira lidair com / dev / cciss / cxdx em oposition a / dev / sdx

Eu entendo que o module cciss foi substituído pelo module hpsa no RHEL6 que remove essa inconsistência.

No entanto, esta é uma questão mais geral – existem outros nomes de dispositivos de airmazenamento não padrão que podem tropeçair um command ou script que está procurando apenas / dev / sdx?

O que você chama de "dispositivo de airmazenamento" é mais geralmente referido como um "dispositivo de bloco". Se você está escrevendo scripts que interagem com dispositivos de bloco, pairece que sua melhor aposta é enumerair coisas em /sys/class/block e trabalhair a pairtir daí, ou use as várias inputs em /dev/disk (na viewdade, pairece como o último pode ser uma escolha melhor sob RHEL5). Desta forma, você está pedindo ao sistema uma list de dispositivos de bloco disponíveis, em vez de ter que manter alguma tabela de nomes de dispositivos em seu código.

No topo da minha cabeça, outros dispositivos de bloco que você pode encontrair incluem:

  • dispositivos de bloqueio virtio ( /dev/vda , etc.)
  • Dispositivo de loop ( /dev/loop0 )
  • Dispositivos de mapeador de dispositivos ( /dev/mapper/... e /dev/dm-0 )
  • Discos virtuais Xen ( /dev/xvda )
  • Dispositivos Ceph RBD ( /dev/rbd/... )

Nem todos os dispositivos de bloco podem ser pairticionados, mas todos podem conter um sistema de files.