У меня есть образ всего диска, созданного с использованием дд . Структура диска выглядит следующим образом:
kent@cow:~$ sudo fdisk -l
Disk /dev/sda: 750.1 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000b8508
Device Boot Start End Blocks Id System
/dev/sda1 * 5 90872 729929303+ 83 Linux
/dev/sda2 90873 91201 2642692+ 5 Extended
/dev/sda5 90873 91201 2642661 82 Linux swap / Solaris
Изображение было создано с использованием:
dd if=/dev/sda of=image750.img
Как бы мне, если это возможно, смонтировать / dev / sda1 из образа, чтобы я мог прочитать содержимое?
Невозможно снова клонировать жесткий диск, я знаю, как это сделать, если я клонировал только один раздел. Я надеюсь, что это все еще возможно с текущим изображением.
linux
mount
disk-image
Исключен
источник
источник
Ответы:
В настоящее время есть лучший способ, больше не нужно использовать смещения или kpartx:
чтобы освободить loop0, используйте после umount:
источник
kpartx
первым, который монтирует разделы как/dev/mapper/loop3p1
, я просто хочу указать, чтоlosetup
создает устройства как/dev/loop0p1
. Ответ отмечает это, но я перечитал это, вероятно, 10 раз. : /Я столкнулся с этой проблемой сегодня и хотел обновить ответы просто как напоминание для себя. Вместо того, чтобы рассчитывать смещение самостоятельно, вы можете использовать инструмент, который предоставляет вам монтируемые устройства из образа dd: kpartx
http://robert.penz.name/73/kpartx-a-tool-for-mounting-partitions-within-an-image-file/
http://linux.die.net/man/8/kpartx
В данном случае для этого нужно что-то вроде
где loop1p1 обозначает первый раздел, loop1p2 - второй и т. д.
источник
У вас есть первая часть: fdisk -l, чтобы найти начальное смещение. Возьмите это число, умножьте на 512, и вы получите опцию смещения для монтирования. Итак, для sda1 в вашем случае 5 * 512 = 2560. Затем запустите mount:
источник
Loopmounting - это только часть ответа.
Посмотрите на http://wiki.edseek.com/guide:mount_loopback#accessing_specific_partitions_in_the_image помощь по указанию раздела. Я думаю, что mount -o loop, offset = 32256 /path/to/image750.img / mnt будет работать для вас. но вы действительно должны прочитать упомянутый учебник.
источник
losetup -P
автоматизацияМетод, упомянутый https://superuser.com/a/684707/128124 (добавлен в util-linux v2.21, добавлен Ubuntu 16.04), здесь приведены функции для дальнейшей его автоматизации. Использование:
Источник:
Контурный модуль max_part config
Достойный метод до util-linux v2.21.
loop
модуль ядра, встроенный в ядро Ubuntu 14.04Если вы настроите все правильно, Linux автоматически разделит устройства для вас.
говорит, сколько разделов
loop
устройства могут генерировать.Это
0
по умолчанию в Ubuntu 14.04, поэтому автоматического разделения не происходит.Чтобы изменить это, мы можем добавить:
в файл
/etc/modprobe
, или:до
/etc/default/grub
и после этогоsudo update-grub
.Как установить параметр модуля также описано по адресу: https://askubuntu.com/questions/51226/how-to-add-kernel-module-parameters.
После перезагрузки, когда вы делаете:
он монтирует образ на
/dev/loopX
устройство и автоматически монтирует разделы на/dev/loopXpY
устройства.Так что это самый удобный способ, если вы готовы перезагрузиться.
Смотрите также
источник
Если у вас есть файловая система в пользовательском режиме, например, fuse, то в настольных средах, таких как Gnome, и установлен инструмент, такой как gnome-disk-image-mounter, тогда он даже без правого клика правой кнопкой мыши и откроется с ним.
источник
Я считаю, что петлевое крепление является ответом -
Выше следует смонтировать его в этом каталоге.
Это должно размонтировать его:
источник