Как смонтировать файл образа.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 является его расширением (что отслеживает то, как я предполагаю, что они это сделали). Но как бы мне слить их и смонтировать?
РЕДАКТИРОВАТЬ 2: Используя ответ 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, потому что это длинный конфиг моего ядра соответствующих значений (возможно):
4 ответа
В соответствии с file -k
, у вас есть образ диска (может быть, он разделен на два тома); образ диска имеет таблицу разделов размером 2 ТБ (39G секторов по 512 = 2 ТБ) и типа FAT32 (0x0b).
Сделать кошку, чтобы объединить оба изображения в одно
cat image*bin > image.iso
ИЛИ (осторожно! Это изменит первый файл)
cat image*0001* >> image*0000*
Запустить kpartx
читать таблицу разделов через image.iso через устройство loop1 (теперь вам понадобится root; замените 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
Работа с фс; размонтировать его; запустить kpartx -d -v /dev/loop1;
; снять отображение loop1 с losetup
(используется вручную http://nfolamp.wordpress.com/2010/08/16/mounting-raw-image-files-and-kpartx/)
Используйте 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