Есть ли способ выяснить, если /dev/dm-1
такое раздел блочного устройства или целое блочное устройство? Если /dev/dm-1
такое раздел, есть ли способ узнать путь к соответствующему целому блочному устройству?
Каждый раздел представляет собой «целое» блок-устройство. Вы мог подразделить любой раздел, а затем снова и снова ...
В вашем примере dm-1
может быть сопоставлен с чем угодно: необработанным устройством, абстракцией устройства dmcrypt, логическим томом в группе томов с поддержкой MD-RAID, с несколькими путями и шифрованием dm.
Номер dm-X
в основном это был произвольный свободный номер при инициализации устройства. На хостах без особых изменений уровня блочного устройства во время выполнения эти номера просто распределяются в естественном порядке при загрузке.
Но большинство механизмов сопоставления устройств также позволяют указать псевдоним для сопоставления. Проверять, выписываться ls -l /dev/mapper/
.
Чтобы затем визуализировать иерархические отношения между блочными устройствами, вы можете использовать lsblk
(Список блок-устройств). Ниже приведен сокращенный пример вывода:
$ lsblk /dev/sdb
NAME MAJ:MIN TYPE
sdb 8:128 disk
├─sdb1 8:129 part
└─sdb5 8:133 part
└─crypto (dm-0) 252:0 crypt
├─ubuntu-root (dm-1) 252:1 lvm
└─ubuntu-swap (dm-2) 252:2 lvm
Для данного dm-x с большим M, второстепенным m существует соответствующий /sys/dev/block/M:m/dm/uuid
файл. Если содержание uuid
файл начинается с part
, можно с уверенностью предположить, что это раздел. Соответствующее устройство целиком находится в /sys/dev/block/M:n/slaves/
. Например:
[centos@try ~]$ cat /sys/dev/block/253:0/dm/uuid
mpath-353333330000007d0
[centos@try ~]$ cat /sys/dev/block/253:1/dm/uuid
part1-mpath-353333330000007d0
[centos@try ~]$ ls -l /sys/dev/block/253:1/slaves
total 0
lrwxrwxrwx. 1 root root 0 15 août 22:06 dm-0 -> ../../dm-0
В lsblk Команда - это удобный способ отображения информации о блочных устройствах, в том числе о том, какое устройство сопоставления устройств куда идет.
/ dev / dm-1 означает «устройство отображения №1».
По сути, это логическая единица, созданная с помощью уровня отображения встроенных устройств ядра. С точки зрения приложения пользовательского пространства, это блочное устройство RAW.
С помощью pvs
и lvdisplay
мы должны быть в состоянии сказать вам, какой именно физический диск / раздел его поддерживает.