Преобразование файлов в формате Nero (nrg) в ISO-образ
Добавлено: 07 окт 2010, 10:37
Существует утилита nrg2iso, но её искать не обязательно, т.к. можно обойтись системной утилитой dd
Применяем утилиту dd (программа для конвертирования и копирования файлов). Единственное отличие формата Nero от ISO заключается в наличии "шапки" в 300 килобайт, которая приклеивается Nero к ISO файлу.
Преобразование формата сводится к вызову команды:
Код: Выделить всё
dd bs=1k if=image.nrg of=image.iso skip=300
Код: Выделить всё
bs=1k : block size = 1kbyte / размер блока
if=image.nrg : input file / файл-источник
of=image.iso : output file / файл-результат
skip=300 : пропустить 300 блоков
Код: Выделить всё
mount image.nrg /path -o offset=$((1024*300))
Обратное преобразование:
Код: Выделить всё
dd if=/dev/zero of=image.nrg bs=1k count=300
cat image.iso >> image.nrg
Код: Выделить всё
count=300 : отсчитать 300 блоков
if=/dev/zero : содержит бесконечное количество символов 0x00
подтверждается следующей командой:
Код: Выделить всё
dd if=win2003_eng_sp2.nrg bs=1k count=300 | hexdump -C
00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
300+0 records in
300+0 records out
307200 bytes (307 kB) copied, 0.0194742 seconds, 15.8 MB/s
0004b000
то незачем ее "придумывать" для образа Nero NRG.
Записать диск без предварительного сохранения подрезанного образа возможно так:
Код: Выделить всё
dd if=image.nrg of=image.iso bs=1k skip=300 | cdrecord speed=2 -
например, на wodim, growisofs.
Дополнение: для монтирования нестандартных форматов дисковых образов удобно
использовать пакет fuseiso.
Монитируем:
Код: Выделить всё
fuseiso -p файл.nrg mnt_dir
Код: Выделить всё
fusermount -u mnt_dir