Я использовал dd
для резервного копирования 80GB диска
dd if=/dev/sdb of=~/sdb.img
Теперь мне нужно получить доступ к некоторым файлам на этом диске, но я не хочу копировать «.img» обратно на диск.
mount ~/sdb.img /mnt/sdb
тоже не работает. Возвращает:
mount: you must specify the filesystem type
Я пытался найти тип файловой системы с file -s
fox@shoebox $ file -s sdb.img
sdb.img: x86 boot sector; partition 1: ID=0x12, starthead 1, startsector 63, 10233342 sectors; partition 2: ID=0xc, active, starthead 0, startsector 10233405, 72517410 sectors; partition 3: ID=0xc, starthead 0, startsector 82750815, 73545570 sectors, code offset 0xc0
Можно ли смонтировать sdb.img
, или я должен использовать dd
для восстановления диска?
file -l sdb.img
как указано в ответе на ваш вопрос: unix.stackexchange.com/questions/2668/…fdisk -l
неfile -l
.fdisk -u -l sdb.img
file
менее разговорчивы по умолчанию, попробуйте добавить-k
переключатель , чтобы получить вид продукции , показанный в ответ - как это:file -k FILENAME.img
.В Linux команды монтирования в принятом ответе неявно создадут устройство цикла. Предполагая, что полный образ диска имеет правильную таблицу разделов (которую может понять ваше ядро), вы можете предпочесть использовать
losetup(8)
напрямую, чтобы избавить вас от необходимости расчета смещений. Также нет необходимости в дополнительных инструментах, какkpartx
в другом ответе . Это будет делать в основном то же самое, что и следующее:losetup -Prf sdb.img
будет ассоциировать первое устройство свободной петли (-f
) как readonly (-r
) с файлом изображенияsdb.img
. В-P
параметр заставляет ядро сканировать таблицу разделов данного устройства контура и создаст петлю устройства для каждого раздела.Таким образом, вы можете получить что-то вроде:
Теперь вы можете монтировать каждый раздел, разумеется, только для чтения, в желаемой точке монтирования.
Хранение всего только для чтения не является обязательным, но может быть полезно для резервного образа.
обновление:
-P
опция была добавлена с util-linux-2.21 в 2012 году. Поэтому она не была доступна на момент написания принятого ответа. Также обратите внимание, что этот и другие ответы относятся к Linux. OpenBSD и NetBSD имеют диски vnode, которыми управляет,vnconfig(8)
а FreeBSD имеет диски памяти, которыми управляетmdconfig(8)
.источник
Кроме того, вы можете использовать хороший инструмент под названием
kpartx
. Со страницы руководства:Это означает, что вы можете создать «псевдоустройство» с разделами устройства прямо из файла img:
Затем вы можете смонтировать,
/dev/mapper/loop0p2
например, если вы хотите второй раздел на образе.источник