/sys/block 内のどのデバイスが実際の HDD ドライブであるか興味があります。
[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]#
これをどう理解すればいいのでしょうか?
答え1
man sd
ブロック デバイスが実際の HDD であるかどうかは、およびに記載されているように、ディスク ドライバーに対応するメジャー デバイス番号から判断できますman 4 hd
。SCSI
ディスクと SATA ディスクのメジャー番号は 8 で、古い IDE ディスクのメジャー番号は 3 または 22 です。
/proc/devices
これらはファイル内で確認したり解析したりできます/sys/block/*/dev
:
cd /sys/block; grep -lE '^(8|3|22):' */dev | sed 's-/dev--'
sda
sdb
これを仮想マシンで実行すると、結果は仮想化の種類によって異なります
。ハードウェア仮想化
PVHVMを除いて、動作は上記と同じです(下記参照)。準仮想化状況は変わります。例えば、XEN xvdドライバはメジャー202を使用します。
これは、PVHVMたとえば、Amazon EC2 で使用されるようなものです。
したがって、VM で目的の結果を達成するには追加の対策が必要です。