Jump to content

kyvaith

Member
  • Posts

    10
  • Joined

  • Last visited

  • Donations

    0.00 USD 
  • Country

    Poland

About kyvaith

Profile Information

  • OS
    Windows 10 x64

kyvaith's Achievements

0

Reputation

  1. This, I think is out of my reach. It seems to me that there are two problems (these are just my guesses): 1. Lack of ISO9660 driver, in the VMWare Player EFI implementation and native machines.2. Incorrect ISO9660 driver addressing VirtualBox's EFI.3. It has nothing in common with GRUB2. Thesame situation is with Reffit, Reffind, Clover, ELILO etc. Ad. 1. In the VMWare Player, ISO9660 partition is reported as block device, not a file system. By this, EFI applications (if they do not have their own driver) can not read information from ISO9660 part of DVD. VMWare: Ad. 2. If inside ISO image, there is a FAT ELTorito image, EFI thought that the whole DVD consists only of this ELTorito image. By this, even if EFI has ISO9660 driver, Windows can not find a ISO9660 partition. If, EL Torito image is not there, driver addresses the ISO9660 file system and Windows runs. VirtualBox: I tried to manually load the drivers ISO9660 in VMWare Player, but despite a successful load, the EFI Shell can not detect the ISO9660 file system (probably because the address is already occupied by the image ELTorito). A few highlights:- Writing Windows, I mean Windows Preinstalation Enviroment.- Speaking Universal, I mean running on any x86_64 platform. - I'm not a develope. I'm trying to prepare this thumb just for fun, hoping someone will like this project.- My English is very poor, so not everyone can understand me, I'm sorry. In summary, the topic requires further analysis, but I do not know what I might do next.
  2. #scdbackup - You can click the "follow topic" at the very top of the page on the right. I am very happy that you joined this thread. You may be right that basically I do not need to do a hybrid ISO, so lets forget about whole hybridizing thing. I did some tests. All tests on VirtualBox. On VMWare and native, still the only way for me to boo Windows is jump grom grub2-efi to EFI Shell, and then to bootmgfw.efi. OSCDIMG on Windows: OK, but boot directly to Windows%USERPROFILE%\Desktop\oscdimg.exe -lKyvaithService -m -o -u2 -udfver102 -bootdata:2#p0,e,b.\boot\etfsboot.com#pEF,e,b.\efi\microsoft\boot\efisys_noprompt.bin .\ %USERPROFILE%\LUN0.isoOK, but boot directly to Windows %USERPROFILE%\Desktop\oscdimg.exe -lKyvaithService -m -o -u2 -udfver102 -bootdata:2#p0,e,b.\boot\grub\i386-pc\eltorito.bin#pEF,e,b.\efi\microsoft\boot\efisys_noprompt.bin .\ %USERPROFILE%\LUN0.isoBROKEN, error while loading Windows from GRUB2 %USERPROFILE%\Desktop\oscdimg.exe -lKyvaithService -m -o -u2 -udfver102 -bootdata:2#p0,e,b.\boot\grub\i386-pc\eltorito.bin#pEF,e,b.\boot\efiboot.img .\ %USERPROFILE%\LUN0.isoOK, Windows boot from GRUB2 menu (bootmgfw.efi) %USERPROFILE%\Desktop\oscdimg.exe -lKyvaithService -j1 -u1 -e -m -h .\ %USERPROFILE%\LUN0.isoBROKEN, error while loading Windows from GRUB2 %USERPROFILE%\Desktop\oscdimg.exe -lKyvaithService -j1 -e -m -h .\ %USERPROFILE%\LUN0.isoBROKEN, error while loading Windows from GRUB2 %USERPROFILE%\Desktop\oscdimg.exe -lKyvaithService -j1 -u1 -e -m -h -bootdata:2#p0,e,b.\boot\grub\i386-pc\eltorito.bin#pEF,e,b.\boot\efiboot.img .\ %USERPROFILE%\LUN0.isoBROKEN, error while loading Windows from GRUB2 %USERPROFILE%\Desktop\oscdimg.exe -lKyvaithService -j1 -u1 -e -m -h -bootdata:2#p0,e,b.\boot\etfsboot.com#pEF,e,b.\boot\efiboot.img .\ %USERPROFILE%\LUN0.iso MKISOFS on Linux: OK, Windows boot from GRUB2 menu (bootmgfw.efi)mkisofs -iso-level 4 -U -udf -V "KyvaithService" -o ../LUN0.iso ./OK, Windows boot from GRUB2 menu (bootmgfw.efi) mkisofs -iso-level 4 -U -V "KyvaithService" -o ../LUN0.iso ./BROKEN mkisofs -iso-level 4 -U -V "KyvaithService" -b boot/grub/i386-pc/eltorito.bin -no-emul-boot -boot-load-size 4 -boot-info-table -o ../LUN0.iso .OK, Windows boot from GRUB2 menu (bootmgfw.efi), but don't boot from legacy mkisofs -iso-level 4 -U -V "KyvaithService" -b boot/grub/i386-pc/eltorito.bin -no-emul-boot -boot-load-size 4 -boot-info-table -no-boot -o ../LUN0.iso . Conclusions:In fact, Windows does not require the UDF file system to boot from EFI, although using the oscdimg without UDF switch, Windows wont start (??) Windows will not start if inside the FAT12 ELTorito, is another bootx64.efi than a copy of cdboot_noprompt.efi Windows starts up with grub2, if inside the ISO there is no any ELTorito images. I have no idea what's going on. ISO9660 grub2 driver may maps EFI path in wrong? But it also does not make sense.
  3. It is a bit of a twist.- In theory, all the PC, can run in the EFI mode, with ELTorito FAT12 image.- Some PC can run from /ISO9660/EFI/BOOT/BOOT***.EFI- Older Macs do not detect ELTorito FAT12, and GPT from CD / DVD, and they need a HFS + partition in the APM partition scheme.- Medium-old Macs (yes, sorry), do not detect ELTorito FAT12, and APM from CD/DVD, and they need a HFS + partition on GPT scheme.- New Macs can run both the ELTorito FAT12, and GPT from CD / DVD, but does not display duplicate items in the boot menu, with hybrid iso (yay!). APM is needed for native boot on older Macs, GPT is needed for native boot on few years old Macs, and for addressing boot files in GRUB2-EFI. ELTorito FAT12 is needed to start on most PCs, but I found out, that it's not used! It just need to be there, and if it's detected, PC jumps directly to /ISO9660/EFI/BOOT/BOOT***.EFI. From the very beginning, my ISO is a hybrid, but maybe I did not mention it before, because this is not the problem. I made a bunch of test images without hybridization. Windows behaves identically.
  4. GPT partition scheme is required by the newer Mac's and PC PC is not able to address the file on the partition HFS+ or FAT12 partition located in APM schema. Two partition schemes are also a disadvantage. In EFI Shell, on the machine that supports both schemes, each ELTorito partition is doubled. Eg. In VMWare Player fs0 and fs3 is the same HFS +, and fs1 and fs2 are the same FAT12 partition.
  5. Hi, I'm sorry I did not say anything since the last post, but I thought I found a clue. Unfortunately, despite slight progress, I still can not achieve a expected result. As promised, I've uploaded ISO files. Please test only EFI mode. The first image is a hybrid ISO generated using xorriso 1.3.8: xorriso -as mkisofs -iso-level 4 -U -V "KyvaithService" -isohybrid-mbr boot/isohybrid.mbr -no-pad --boot-catalog-hide -b boot/grub/i386-pc/eltorito.bin -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e boot/efiboot.img -no-emul-boot -isohybrid-gpt-basdat -isohybrid-apm-hfsplus -eltorito-alt-boot -e boot/macboot.img -no-emul-boot -isohybrid-gpt-hfsplus -isohybrid-apm-hfsplus -o ~/LUN0.iso ./NO The second image is modified original Windows 8.1 ISO using UltraISO. I added grub2-EFI and removed unnecessary files. There is no hybrid funcionality. NO What I've found: First image contains two file systems - APM and GPT. They are used to register the two ELTorito images (FAT12 and HFS +) as native partitions. This allows to view and run files from ELTorito images from GRUB2. The image contains a standard ISO9660 partition, but does not include the UDF partition. With this ISO, VirtualBox, VMWare Player and native machine runs GRUB2-EFI as excepted. I can load Linux and Mac OS (requires some improvements, but there are clear). Unfortunately it does not load Windows. I tried to chainload bootx64.efi from the original M$ ELTorito image (cdboot.bin), using cdboot.efi file from the M$ ISO UDF filesystem, and from bootmgfw.efi extracted from boot.wim. I also tried to use iPXE wimmbot, which gives the same effect. In my ISO, I'm using a modified version of GRUB 2.02b2 (I added a horizontal menu, the rest is unchanged). As suggested, I've checked grub2 earlier versions - the same effect on the 1.98, 1.99, 2.00, 2.01b1. However, there is some progress - I am able to run Windows with EFI Shell. This method works on VMWare Player and a few native machines that I have at hand. After starting the ISO, GRUB2-EFI loads up automatically. On the keyboard, select the "c" and type: chainloader /efi/boot/shellx64.efibootAfter loading the EFI Shell type: FS2:\EFI\BOOT\WINDOWS.EFIAnd Windows loads. This means that GRUB2 probably do not properly maps drives address. But I'm not sure. It does not work on VirtualBox, because the EFI Shell did not detect any file systems. I tried to load the EFI driver for ISO9660 from here but that did not help. And the second ISO: Windows starts up, but only for VirtualBox. The key here is the UDF partition, without it, Windows will not start. Unfortunately this does not work in VMWare Player and native machines due to the lack of FAT12 ELTorito image. Adding it in UltraISO makes Windows does not load again anywhere, despite the UDF partition. Please help, I am terribly frustrated. I've confirmed that the pendrive actually works on any Macs and PCs I've tested, just missing the **** Windows EFI boot.
  6. #jaclaz - I'll answer your questions tomorrow. #cdob - I've seen this information before, but didn't success with other than UDF filesystem. I've tried to uppercase folder too before, even tried to make all files and folders in the ISO uppercase, but it didn't work. Can you please try to make such ISO by yourself? I'm testing in Virtualbox, maybe this is the reason? Tomorrow I'll post successful (UDF) and unsuccessful ISO's too. For clarity, only ISOs generated with ocdimg with swith "-u2" boot form EFI in VirtualBOX.
  7. Well, it's not that obvious. There are external hard drives, which theoretically could do such a thing. Check out Zalman ZM-VE400 or ZM-VE300
  8. #jaclaz - thank you for your reply and sorry for bumping subject (I did not know that it is forbidden). This story has a lot more details, but I decided that I will describe the whole process after I'll get stick to work in 100%. So at this moment, in response to your questions: Well, WHY EXACTLY do you need that? Xorriso can generate an ISO image that contains MBR, AFP and GPT partition schemas. This is required for older Macs to see DVD as a bootable in disk chooser. My ISO has three El-Torito images :- Grub2 MBR (produced by grub-MKIMAGE for PC i386)- Macboot.img - image of a single HFS + partition containing grub2 x86_64 EFI, which was blessed by OSX, so that it appears as MacOS installer (in fact being multibootloader with grub2)- Efiboot.img - which contains a single FAT12 partition with grub2 EFI x86_64 and ia32. Actually, It's needed only in one scenario - the installation of Windows on a Mac using Bootcamp. Unfortunately, Macintosh are nasty machines, and they do not allow you to install Windows from USB stick - only from the CD. Probably you will ask - "why don't use virtual CD funcionality only to attach official Windows installer ISO, and use rest of the flash drive for other OS'es?" - The reason is the same as above - Macintosh are nasty. They do not see the HDD part of memory stick, if it contains the virtual CD. The whole subject was explored by me for a year now and after much analysis I know that this is the only right way to prepare the stick.
  9. Hi, I am trying to prepare a universal memory stick, which will be able to run Live Mac OS, Linux, WinPE and install each of these systems to disk, both in EFI or MBR, on any modern PC and Macintosh. To make this possible, I had to create a memory stick, with virtual ISO image in LUN0 of thumb (low-level memory stick modification, so it is reported as DVD drive and hard disk). This means that I have to prepare the ISO, which will be able to run any of these systems. Interestingly, I have no problem with Linux or Mac OS. Windows also runs in the MBR, but I'm not able to run it from the EFI. It seems that Windows EFI requires the ISO, which has only the UDF file system, but I need to generate the ISO using xorriso on Linux, which does not support the UDF. Has anyone tried to make multiboot ISO (CD/DVD) with GRUB2 bootloader, which would allow to run WinPE with EFI? That's the last thing I need to work out, and I'm sitting on this problem from about a week Regards, Tom.
×
×
  • Create New...