Me interesa saber qué dispositivos en /sys/block son unidades HDD reales:
[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]#
¿Cómo puedo entender esto?
Respuesta1
Si un dispositivo de bloque es un HDD real se puede derivar del número de dispositivo principal correspondiente al controlador de disco como se documenta en man sd
y man 4 hd
:
los discos SCSI y SATA tienen 8 principales, los discos IDE antiguos 3 o 22.
Puede verlos /proc/devices
o analizarlos en los /sys/block/*/dev
archivos:
cd /sys/block; grep -lE '^(8|3|22):' */dev | sed 's-/dev--'
sda
sdb
Cuando esto se ejecuta en una máquina virtual, los resultados dependen del tipo de virtualización:
ConVirtualización de hardware, el comportamiento es el anterior excepto para PVHVM (ver más abajo).
ConParavirtualización, las cosas cambian. Por ejemplo, el controlador XEN xvd utiliza el 202 principal.
Esto también es válido paraPVHVMcomo se usa en Amazon EC2, por ejemplo.
Por lo tanto, necesita medidas adicionales para lograr el resultado deseado en las máquinas virtuales.