Назад | Перейти на главную страницу

Как смонтировать файл образа .bin в Linux

Я использовал службу импорта AWS для импорта большого диска (2 ТБ), и они сбросили два файла .bin в мою учетную запись S3. В их инструкциях говорится о том, чтобы разделить тома EBS, чтобы сделать диск достаточно большим, чтобы вместить образ, а затем просто использовать его.

Ну, у меня есть все в полоску и еще много чего, но я не знаю, что делать с этим .bin-изображением. Кажется, не работает с mountВо всяком случае, не без опций, и я не знаю, какие опции ставить.

>file -k image-NPX7P-0000.bin
image-NPX7P-0000.bin: x86 boot sector; partition 1: ID=0xb, starthead 1, startsector 63, 3907024821 sectors, extended partition table (last)\011, code offset 0x0

>file -k image-NPX7P-0001.bin
image-NPX7P-0001.bin: data

РЕДАКТИРОВАТЬ: Я добавил информацию о файле, и, судя по ее виду, я бы предположил, что причина, по которой я не могу смонтировать только 0000, заключается в том, что 0001 является его расширением (что соответствует тому, как я предполагаю, что они это сделали). Но как мне объединить их и смонтировать?

EDIT2: Используя ответ osgx, я смог собрать два файла bin и использовать kpartx для чтения таблицы разделов.

> file-sk: /dev/dm-2: x86 boot sector, code offset 0x58, OEM-ID "BSD 4.4", sectors/cluster 64, heads 255, sectors 3907024821 (volumes > 32 MB) , FAT (32 bit), sectors/FAT 476816, reserved3 0x1000000, reserved 0x1, serial number 0x5cb415f7, label: "SOURCE-PSE " DOS executable (COM), boot code –

Однако это все равно не будет установлено. Он говорит, что требуется тип файловой системы, и ничего из того, что я использовал, не помогает. Также отправлено в pastebin, потому что это длинная моя конфигурация ядра с соответствующими (возможно) значениями:

http://pastebin.com/j7iS7RF3

В соответствии с file -k, у вас есть образ диска (может быть, он разбит на два тома); образ диска имеет таблицу разделов размером 2 ТБ (39 ГБ секторов по 512 = 2 ТБ) и типа FAT32 (0x0b).

Сделайте кота, чтобы объединить оба изображения в одно

cat image*bin > image.iso

ИЛИ (осторожно! это изменит первый файл)

cat image*0001* >> image*0000*

Запустить kpartx для чтения таблицы разделов через image.iso через устройство loop1 (теперь вам понадобится корень; замените image.iso на image * 0000 *, если вы использовали второй способ catтинг)

losetup /dev/loop1 image.iso; kpartx -av /dev/loop1;

Выход будет как add map loop1p1 ...

Затем найдите loop1p1 в / dev / mapper

ls -l /dev/mapper
file -sk /dev/mapper/*   # finally check that it is a FAT32

И монтируем его:

mount -o ro -t auto /dev/mapper/loop1p1 /where/to/mount

Работа с fs; размонтировать его; запустить kpartx -d -v /dev/loop1; ; unmap loop1 с помощью losetup

(используется руководство http://nfolamp.wordpress.com/2010/08/16/mounting-raw-image-files-and-kpartx/ )

Попробуй смонтировать с -o loop вариант.

используйте bchunk и конвертируйте в iso, тогда вы можете легко смонтировать http://goinggnu.wordpress.com/2007/05/08/howto-mount-bincue-files-in-linux/

Преобразуйте файл в ISO и работайте с ним оттуда. Я успешно использовал iat (Iso9660 Analyzer Tool).

Установите его (под Ubuntu, где я живу - YMMV):

sudo apt-get install iat

Используй это:

iat inputFile.bin > newShiny.iso