Согласно этому: http://en.wikipedia.org/wiki/ISO_image#Description
«Более свежим примером является выпуск гибридных файлов ISO, которые можно загружать или запускать как с дисков BD, так и с DVD и USB-накопителей, когда образ записывается на любое из этих устройств хранения».
Как использовать стандартные инструменты Linux, чтобы определить, является ли загруженный мной ISO-образ (отредактированный или созданный с помощью genisoimage) гибридным?
Благодарность!
Ответы:
Запустите fdisk для файла. Если это показывает что-то значимое, это гибрид.
источник
Запустите
file
команду на соответствующем образе ISO. Результат выполнения этой команды на негибридном ISO будет выглядеть примерно такimage.iso: ISO 9660 CD-ROM filesystem data 'foo' (bootable)
в то время как результат выполнения этой команды на гибридном ISO будет выглядеть примерно так
image.iso: DOS/MBR boot sector ISO 9660 CD-ROM filesystem data (DOS/MBR boot sector) 'foo' (bootable); partition 1 : ID=0x17, active, start-CHS (0x0,0,1), end-CHS (0x288,63,32), startsector 0, 1329152 sectors
источник
Вы можете использовать этот сценарий для проверки ISO-образа (
-i
флаг для «проверки»)https://github.com/jsamr/bootiso
источник
Ты можешь бежать
head -c 512 thefile.iso > bytes.txt
.В правильном негибридном ISO все байты должны быть нулями (возможно, не видимыми по умолчанию в вашем текстовом редакторе). Хотя теоретически они могут содержать любой случайный мусор, поэтому в ненулевом случае труднее подтвердить, является ли это гибридом без более глубокого анализа байтов.
Для пользователей Windows вы можете установить пакет gnuwin32 coreutils, чтобы получить эту команду.
источник
Это обнаруживает таблицу разделов, отсутствующую на негибридных носителях ПЗУ:
То, что я не знаю, как определить, это между гибридным ISO и образом жесткого диска:
источник
Ответ @ Chaosape должен быть принятым решением.
После использования
file
, если ISO-образ не является гибридом, и он вам нужен (например, для создания загрузочного USB), просто используйтеisohybrid
для его преобразования:isohybrid [PATH_TO_ISO]
Вы также можете использовать флаги,
-u
чтобы сделать UEFI загрузочным.https://www.mankier.com/1/isohybrid
источник