Quais dispositivos em /sys/block são HDDs?

Quais dispositivos em /sys/block são HDDs?

Estou interessado em quais dispositivos em /sys/block são unidades de HDD reais:

[root@sdp1a block]# pwd
/sys/block
[root@sdp1a block]# ls
dm-0   dm-12  dm-3  dm-7   loop1  loop5  ram1   ram13  ram3  ram7  sdaa  sdae  sdai  sdam  sdaq  sdau  sday  sdbb  sdbf  sdc  sdg  sdk  sdo  sds  sdw
dm-1   dm-13  dm-4  dm-8   loop2  loop6  ram10  ram14  ram4  ram8  sdab  sdaf  sdaj  sdan  sdar  sdav  sdaz  sdbc  sdbg  sdd  sdh  sdl  sdp  sdt  sdx
dm-10  dm-14  dm-5  dm-9   loop3  loop7  ram11  ram15  ram5  ram9  sdac  sdag  sdak  sdao  sdas  sdaw  sdb   sdbd  sdbh  sde  sdi  sdm  sdq  sdu  sdy
dm-11  dm-2   dm-6  loop0  loop4  ram0   ram12  ram2   ram6  sda   sdad  sdah  sdal  sdap  sdat  sdax  sdba  sdbe  sdbi  sdf  sdj  sdn  sdr  sdv  sdz
[root@sdp1a block]#

Como posso entender isso?

Responder1

Se um dispositivo de bloco é um HDD real pode ser derivado do número do dispositivo principal correspondente ao driver de disco, conforme documentado em man sde man 4 hd:
Os discos SCSI e SATA têm 8 principais, os discos IDE antigos 3 ou 22.

Você pode ver isso /proc/devicesou analisar os /sys/block/*/devarquivos:
cd /sys/block; grep -lE '^(8|3|22):' */dev | sed 's-/dev--'
sda
sdb

Quando executado em uma máquina virtual, os resultados dependem do tipo de virtualização:
ComVirtualização de hardware, o comportamento é igual ao acima, exceto para PVHVM (veja abaixo).
ComParavirtualização, as coisas mudam. Por exemplo, o driver XEN xvd usa o major 202.
Isso também é válido paraPVHVMconforme usado no Amazon EC2, por exemplo.
Portanto, você precisa de medidas adicionais para alcançar o resultado desejado nas VMs.

informação relacionada