isohybrid
может не всегда работать. Например, у меня было .iso с FreeDOS, и isohybrid не смог найти там несколько важных файлов (я не знаю, должны ли они были быть помещены туда syslinux, который я тоже использовал, или что-нибудь еще). Здесь я предлагаю несколько альтернатив.
1) Установите там другой системный загрузчик, такой как GRUB. Это объясняется здесь :
“Допустим, первый раздел вашей USB-флешки - FAT32, а его раздел - /dev/sdy1” (у меня было grub2
на ядре Fedora, поэтому я немного изменил команды):
# mkdir -p /mnt/usb ; mount /dev/sdy1 /mnt/usb
# grub2-install --target=i386-pc --recheck --debug --boot-directory=/mnt/usb/boot /dev/sdy
# grub2-mkconfig -o /mnt/usb/boot/grub2/grub.cfg
# optional, backup config files of grub.cfg
# mkdir -p /mnt/usb/etc/default
# cp /etc/default/grub /mnt/usb/etc/default
# cp -a /etc/grub.d /mnt/usb/etc
# sync; umount /mnt/usb
2) Вики FreeDOS предлагает составной метод с GRUB и syslinux здесь (хотя я не понимаю, как они запустили grub>
- я не смог загрузиться с usb до этой стадии).
3) Здесь - сообщение, которое может быть полезным - оно гласит: “До тех пор, пока файлы command.com, kernel.sys, syslinux.cfg, ldlinux.sys и fat32lba.bss находятся в корне диска и MBR и загрузочный сектор не перезаписаны, диск должен оставаться загрузочным”.
4) Здесь объясняется, как сгенерировать загрузочный .iso файл с помощью системного загрузчика syslinux. Они даже не используют isohybrid. К сожалению, это не помогло мне (возможно, из-за syslinux).
5*). Используйте программу windows через wine
. Я попробовал Руфуса, но это не сработало, он не смог найти устройство.
Предупреждаю, что, к сожалению, я не смог решить эту проблему, мое устройство было незагружаемым, но я надеюсь, что это может быть полезно для других людей (также для тех, кто хочет установить не linux на USB). Образ USB, сгенерированный chtaube, хотя и работал на меня, так что я думаю, что эти методы правильны.
UPD: 3-й метод действительно работает (с корректировкой для пользовательского установочного файла).
UPD2: (исправленные ссылки). Проблема с isohybrid
, вероятно, заключалась в том, что версии isolinux.bin на iso и моя система были разными. Перекомпилировал iso, используя genisoimage
, как предполагалось здесь :
genisoimage -l -r -J -b isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table -c isolinux/boot.cat -o fd11new.iso fd11new
Также были некоторые проблемы, они были решены методом здесь до genisoimage:
cp /boot/extlinux/*.c32 fd11new/isolinux/
extlinux --install /boot/isolinux
== конец UPD2 ==