losetup (8)
имеет параметр ( -P
или - частичное сканирование
), который может сканировать разделы внутри файла образа и затем фактически отображать их на виртуальные блочные устройства, чтобы вместо этого:
$ losetup -a
/dev/loop0: []: yourisoimage.iso
... вы могли видеть дополнительные устройства цикла, относящиеся к разделам:
$ ls /dev/loop*
/dev/loop0
/dev/loop0p1
/dev/loop0p2
/dev/loop-control
Используйте следующую команду для автоматически выделить новое устройство loopX
и просканировать дополнительные разделы:
$ losetup -f -P yourisoimage.iso
Затем просто смонтируйте соответствующее устройство loop без опции монтирования -o loop
.
Я думаю, что здесь происходит то, что вы ищете кролика в курятнике.
На втором шаге выше вы видите список всех устройств в системе, а не просто список разделов в файле ISO. Ваша команда включает фиктивный параметр (имя файла ISO), а parted
просто перечисляет каждый раздел, который он видит на любом устройстве.
На самом деле вы, вероятно, пытаетесь смонтировать / dev / sda2
с физического диска / dev / sda
, которому абсолютно нечего делать. с этим файлом CentOS ISO.
Более того, поскольку этот раздел не является разделом файловой системы, а скорее физическим томом (известного LVM), файловая система на нем отсутствует.
Чтобы получить доступ к его содержимому, вы должны использовать pvscan
для обнаружения всех физических томов в системе, vgchange -ay
для активации всех групп томов, а затем vgs
и lvs
, чтобы просмотреть список групп томов и логических томов.
Доступ к содержимому осуществляется под специальным именем, которое читается как / dev /
, поэтому для группы томов с именем foo
и логического тома с именем bar
, имя будет / dev / foo / bar
.
Таким образом, вы монтируете / dev / foo / bar
, а не / dev / sda2
.