ventoy / Ventoy

A new bootable USB solution.
https://www.ventoy.net
GNU General Public License v3.0
61.9k stars 4.03k forks source link

trouble getting my win10xpe distro to boot #532

Closed senposage closed 2 years ago

senposage commented 3 years ago

I been banging my head against the wall for a couple hours on this my personal build of xpe doesn't seem to boot under ventoy attempting to boot with ventoy in mbr mode result in 0xc0000017 and starting ventoy in uefi mode allows it to proceed but then it fails with a i/o problem or file not found I tried the wimboot method same result I also tried memdisk mode it boots but my distro needs the iso mounted and this method uses lots of ram

https://drive.google.com/file/d/1LZEupCxA1ML1vasA1q4kfSWvtDXjIiaU/view?usp=sharing the iso boots and runs normally when installed with rufus in uefi mode

I think this is a problem with ventoy calling the wrong bootloader its trying to load the winpe when it should be loading the winpe with the proper win10xpe arguments I had a similar issue a few months ago where the iso didn't boot on a older machine unless I used csm mode but that was a different problem causing the issue

ventoy commented 3 years ago

Please make a test: press ctrl+i before you select the ISO file in Ventoy's boot menu.

senposage commented 3 years ago

compatibility mode works, but it does not properly mount the Y drive containing the programs I can work around this by moving the 'programs" folder, CDUsb,y,and XPEstartup scripts to the root of the pen drive but this is less then ideal

senposage commented 3 years ago

what needs to happen is that ventoy needs to keep the .iso mounted so that xpe can access and mount its data properly is there a plugin for this where I can specify an iso to keep mounted after initial boot ? I am in the process of re-rolling my .iso using the latest win10xpe will report back to see if that works any better I will build it with the ventoy.dat

senposage commented 3 years ago

I re-rolled my iso with the newer win10xpe version same problem it boots but no mounting of the .iso by win10xpe with the ventoy.dat installed to the root of the iso (can I specify the compatibility flag in the ventoy.json ? )

ventoy commented 3 years ago

You should mount the ISO file inside the ISO (e.g. in a script) Such a ISO is just what I said as "Ventoy Compatible" https://www.ventoy.net/en/compatible.html

You can use vtoydump tool to get the ISO file name and path after boot.

Currently you can't specify the compatibility flag in ventoy.json. You can put a ventoy.dat file or set VENTOY COMPATIBLE string in the head of the ISO file as described in https://www.ventoy.net/en/doc_compatible_mark.html

senposage commented 3 years ago

I went with a much cleaner work around I MOVED the 'programs' folder and the CDUsb.y out of the .iso and into the root of the drive I also copied XPEStartup.cmd and XPEStartup.ini from the iso to the root of the drive please note that there can only be one copy of the CDUsb.y file

everything works as expected a added bonus is the programs remain easily accessible on the drive

win10xpe looks for the CDUsb.y and when it finds it it mounts that drive since this file normally exists inside the iso it never finds it and thus never mounts it

as for compatibility mode it might not be a bad idea to make it so you can automate this with a plugin and maby even package a list of iso names\hashes for the plugin to load and automatically apply the flag having to put stuff in the iso is not a good solution especially for large distributions tampering with the iso can cause problems if not done correctly and since you already maintain a list of 'compatible isos' making a a plugin to automatically flag known good images makes sense

ventoy commented 3 years ago

Ventoy Compatible is for the owner of the ISO file who need to make a new iso file for every release. ctrl+i is just a debug method for special case. Many other PE iso boot fine in normaly way (no need compatible mode)

senposage commented 3 years ago

the issue is that the iso maintainer should not be required todo anything to make some other piece of software work or work better that burden should be on the software, you can not expect the end-user to modify a production image when ventoy is more then capable of detecting or being told that a particular image is 'compatible' based on either the isoname or sha

I don't think microsoft or unbuntu is going to go and change there .iso formats simply because ventoy may need the flag but we are drifting off topic here

!closing ill open a new issue for further discussion on ventoy having the ablity to detect and use compatibility mode where needed automatically based on a list of isonames or checksums

ventoy commented 3 years ago

Maybe we need a auto_compatible plugin like auto_memdisk plugin https://www.ventoy.net/en/plugin_automemdisk.html

ventoy commented 2 years ago

What about the latest release? @senposage