Jump to content











Photo
* * * * * 1 votes

UEFI MULTI - Make Multi-Boot USB-Drive

uefi usb multiboot windows 10 aio boot linux vhdx ssd wim

Best Answer wimb , 02 March 2019 - 09:49 AM

There is a new version of UEFI MULTI available with new Grub4dos SVBus menu entries.

 

Mapping for VHD WIMBOOT is taken into account for various cases e.g VHD + WIM on USB Or on Internal Harddisk.

 

UEFI_MULTI determines the Drive Number for the MountPoint of the selected NTFS System Drive where the VHD resides.

UEFI_MULTI determines the DriveType and Bus Type of the selected NTFS System Drive.

In this way the program knows where VHD + WIM are located e.g. on USB Or on Internal Harddisk

and the program knows the Windows disk number which is used in menu.lst entries for WIMBOOT mapping in case the VHD + WIM are located on Internal Harddisk.

 

VHD + WIM located on NTFS drive of USB Harddisk Or  Portable SSD

iftitle [if exist (hd0,1)/W10x64_S3.vhd] (hd0,1)/W10x64_S3.vhd - SVBus  RAMDISK  - 2048 MB - map for WIMBOOT
map --top --mem (hd0,1)/W10x64_S3.vhd (hd-1)
map --hook
root (hd-1,0)
chainloader /bootmgr

=

VHD + WIM located on NTFS drive of Internal Disk

title W10x64_NL_1.vhd - SVBus  RAMDISK  - 2.0 GB - map as hd for WIMBOOT
find --set-root --ignore-floppies /W10x64_NL_1.vhd
map --top --mem /W10x64_NL_1.vhd (hd)
map --hook
root (hd-1,0)
chainloader /bootmgr

:cheers:

 

How to Make VHD WIMBOOT on USB and to use Grub4dos menu and SVBus driver for booting from RAMDISK

 

Download: VHD_WIMBOOT and  Manual: Attached File  VHD_WIMBOOT.pdf   500.28KB   29 downloads

 

Best Results for speed of Portable VHD WIMBOOT obtained with SAMSUNG Portable SSD T5 250 GB with UEFI/MBR Partitioning with 20 GB FAT32 and 230 GB NTFS partition.

 

[attachment=16488:UEFI_MULTI-2019-03-02_140545.png] == [attachment=16487:W10x64-RAM-HelloWorld-2019-03-01_155130.png] == [attachment=16493:F2-VHD-USB-Ready-2019-03-03_113112.png]

 

With VHD WIMBOOT from USB Portable SSD we can have a full Win10 x64 of Size 600 MB booting from RAMDISK

as very fast Portable and always FRESH Operating System.

 

The only limitation is that booting from RAMDISK requires booting in BIOS mode with Grub4dos.

Hopefully we can have UEFI Secure support when Grub2 in future might be able to load such VHD into memory and launch Windows by chainloading bootmgfw.efi  :rolleyes:  :unsure:

But anyway booting from Windows Boot Manager menu as FILEDISK using Microsoft vhdmp.sys driver is available in BIOS and in UEFI Secure mode.

 

wimlib-clc CAPTURE followed by APPLY is important to reduce the size of the WIMBOOT Operating System from 3,5 GB down to 600 MB 

so that it can be located in VHD of Size 2 GB with total boottime 30 seconds which is OK.

 

Thanks to alacran for pointing me to wimlib of synchronicity (More Info: here) combined with  wimlib-clc of ReTokener    :)

Thanks to steve6375 for --top --mem and Wonko the Sane for (hd-1) and karyonix for (hd) map for WIMBOOT solution in Grub4dos menu   :worship:

 

VHD size 2 GB with full Win10x64 OS + Office Word and Excel + VLC player total size 600 MB in RAMDISK connected to WIM file of size 6 GB on USB NTFS drive

As compared to WinPE the VHD WIMBOOT has the advantage to have support for Office and Printer and any program can be installed which is all not the case for WinPE

 

In case of VHD WIMBOOT on each machine it takes extra boottime and space to adjust the drivers for that machine
The VHD WIMBOOT solution is Portable, but not as flexible as Win10XPE, where boottime is not dependant on machine hardware
 
For Portability it is good to have two VHD's
- On couple of other machines boot first with  25 GB VHD WIMBOOT as FILEDISK from Boot Manager Menu and  let Win10 Install all drivers
- At Home After booting with Win10 x64 OS then CAPTURE WIM of 25 GB VHD - Format and APPLY WIM on 1.5 GB VHD 
- Next time Boot with 1.5 GB VHD WIMBOOT on USB with Grub4dos menu from RAMDISK on all other machines
The 1.5 GB VHD will be handy for booting from RAMDISK on 4GB RAM machines, but in other cases a 3.9 GB VHD is preferred
 
In this way you have some learning on a couple of machines, but then the WIM has improved and can be used on all machines .... 
That principle of learning, where the SYSTEM registry is improving, is already working since the days of Windows eXPerience
Go to the full post


  • Please log in to reply
225 replies to this topic

#201 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 4 weeks ago

In other words:

Apparently the VHD was not given the name that it should have.

But given that filename, everything is as expected and booting is OK.

 

Can you give me the makebt\wim_info\wiminfo.txt file for that Win 8.1 case ?

 

There is something not as expected in that file, so that parsing goes wrong.



#202 alacran

alacran

    Silver Member

  • .script developer
  • 875 posts
  •  
    Mexico

Posted 4 weeks ago

In other words:

Apparently the VHD was not given the name that it should have.

But given that filename, everything is as expected and booting is OK.

 

Well yes, I only wanted to report item by item to let you know all was checked carefully, not only just reporting the first thing saw.

 

alacran



#203 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 14713 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 4 weeks ago

VHD file was created with wrong name W10x64_ES_1.vhd, it should be W8.1x64_ES_1.vhd or 8.1x64_ES_1.vhd.

 

I would anyway advise against using a multidot file name, W81x64_ES_1.vhd would have BTW the same length of W10x64_ES_1.vhd

 

 

 

:duff:

Wonko



#204 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 4 weeks ago

I would anyway advise against using a multidot file name, W81x64_ES_1.vhd would have BTW the same length of W10x64_ES_1.vhd

 

 

 

Yes you are right. It is Microsoft that introduced this extra dot in the Name. So may be we need to remove it again ...

 

I hope alacran can provide the makebt\wim_info\wiminfo.txt file so that I can see why parsing goes wrong in his case.



#205 alacran

alacran

    Silver Member

  • .script developer
  • 875 posts
  •  
    Mexico

Posted 4 weeks ago

Sure:

 

Spoiler


  • wimb likes this

#206 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 4 weeks ago

Download -  coming later

 

@alacran

 

In Windows 7 OS then bcdboot.exe 7/8/10 cannot make the VHD internal BCD entry and that is the cause of the problem that you encountered.

 

I have no solution for this problem and so the program VHD_WIMBOOT needs Windows 10 Or Windows 8 / 8.1 OS.

 

The failure in giving the VHD the right name is solved and for Windows 8.1 the extra dot in the VHD filename is removed.


  • alacran likes this

#207 alacran

alacran

    Silver Member

  • .script developer
  • 875 posts
  •  
    Mexico

Posted 4 weeks ago

Thanks for this new version, if the program is not compatible with 7, it may not be a big issue, but it is good we now are aware of that before running it.

About the dot on 8.1 I'm glad you fixed it. but also a warning like:  Do not use dot(s) or espaces on files names could be enough, sorry for the extra work my friend.

 

Just downloaded, I'll run some tests ASAP and let you know of my findings.

 

alacran



#208 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 14713 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 4 weeks ago

In Windows 7 OS then bcdboot.exe 7/8/10 cannot make the VHD internal BCD entry and that is the cause of the problem that you encountered.

I have no solution for this problem and so the program VHD_WIMBOOT needs Windows 10 Or Windows 8 / 8.1 OS.

 

If I get this right, you could boot (Wimboot) Windows 7 but you stop because the BCDBOOT cannot make a "correct" BCD entry for it? :w00t:

 

A possible solution is here (whether you will like it or not is another thing):

http://reboot.pro/to...ch-using-linux/

 

:duff:

Wonko



#209 alacran

alacran

    Silver Member

  • .script developer
  • 875 posts
  •  
    Mexico

Posted 4 weeks ago

@ wimb

 

Download -  VHD_WIMBOOT  New Version 1.1 available for testing

 

@alacran

 

In Windows 7 OS then bcdboot.exe 7/8/10 cannot make the VHD internal BCD entry and that is the cause of the problem that you encountered.

 

I have no solution for this problem and so the program VHD_WIMBOOT needs Windows 10 Or Windows 8 / 8.1 OS.

 

The failure in giving the VHD the right name is solved and for Windows 8.1 the extra dot in the VHD filename is removed.

 

Sorry for the delate but I was busy with other things.

 

I can confirm the dot problem is fixed, but this time on W81x64_ES_1.vhd and also on W10x64_MX_1.vhd even if lang is correct on VHD name, it was not applied to all the BCDs as it was before on first version, I assume when you edited the code you just forgot to add this feature, (it was working fine before, at least on W10x64_MX_1.vhd the right lang was selected on BCDs).

 

alacran

Attached Thumbnails

  • Lang.png


#210 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 3 weeks ago

Download -  coming later

 

@alacran

 

- Option Added - Capture WIM File with LZX Compression

- Added - Locale Language in BCD is taken into account

 

For making new BCD entries there was only code to use default Language en-US, but now the Locale value is taken into account.


  • alacran likes this

#211 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 3 weeks ago

If I get this right, you could boot (Wimboot) Windows 7 but you stop because the BCDBOOT cannot make a "correct" BCD entry for it? :w00t:

 

A possible solution is here (whether you will like it or not is another thing):

http://reboot.pro/to...ch-using-linux/

 

 

It is not Wimboot Windows 7, but Boot with Windows 7 x64

Then Mount Win10x64 VHD as Drive N: and try to make new entry into the VHD internal BCD e.g. N:\Boot\BCD

 

When I use W10x64 version of bcdboot and command as given Or W7 bcdboot without /f ALL, it all fails, wheras I can use such command with succes in Win10x64  or Win8/8.1OS

bcdboot.exe N:\Windows /s N: /f ALL

I tried your suggestion to use bcdedit for that purpose to create new entry in BCD

 

Using Windows 7 x64 OS Or Win 10 x64 OS then I can create such entry in the N:\Boot\BCD but it is not correct

bcdedit /store N:\Boot\BCD /create /d W10x64_NL_7-VHD /application osloader
gives guid {513f748d-4e64-11e9-b210-3052cb53659e}
bcdedit /store N:\Boot\BCD /set {513f748d-4e64-11e9-b210-3052cb53659e} device partition=N:
bcdedit /store N:\Boot\BCD /set {513f748d-4e64-11e9-b210-3052cb53659e} path \Windows\system32\winload.exe
bcdedit /store N:\Boot\BCD /set {513f748d-4e64-11e9-b210-3052cb53659e} osdevice partition=N:
bcdedit /store N:\Boot\BCD /set {513f748d-4e64-11e9-b210-3052cb53659e} systemroot \Windows
bcdedit /store N:\Boot\BCD /displayorder {513f748d-4e64-11e9-b210-3052cb53659e} /addlast
bcdedit /store N:\Boot\BCD /default {513f748d-4e64-11e9-b210-3052cb53659e}

The problem is that the generated entry refers to the VHD instead of to the mounted partition.

 

Strange enough enum and enum /v show total different info for the last entry

C:\Windows\system32>bcdedit /store N:\Boot\BCD /enum

id                      {default}
device                  partition=N:
path                    \Windows\system32\winload.exe
description             W10x64_NL_7-VHD
osdevice                partition=N:
systemroot              \Windows


C:\Windows\system32>bcdedit /store N:\Boot\BCD /enum /v

id                      {513f748d-4e64-11e9-b210-3052cb53659e}
device                  vhd=[M:]\W10x64_NL_2.vhd,locate=custom:12000002
path                    \Windows\system32\winload.exe
description             W10x64_NL_7-VHD
osdevice                vhd=[M:]\W10x64_NL_2.vhd,locate=custom:22000002
systemroot              \Windows


Do you you know the commands to get the correct entry for BCD inside VHD booting Windows of that VHD ?

 

I need probably something else than device partition=N: but what code will give succes ?



#212 karyonix

karyonix

    Frequent Member

  • Advanced user
  • 472 posts
  •  
    Thailand

Posted 3 weeks ago

@wimb
bcdedit /store N:\Boot\BCD /set {bootmgr} device boot
bcdedit /store N:\Boot\BCD /set {513f748d-4e64-11e9-b210-3052cb53659e} device boot
bcdedit /store N:\Boot\BCD /set {513f748d-4e64-11e9-b210-3052cb53659e} osdevice boot
  • wimb likes this

#213 alacran

alacran

    Silver Member

  • .script developer
  • 875 posts
  •  
    Mexico

Posted 3 weeks ago

Download -  VHD_WIMBOOT  New Version 1.2 available for testing

 

@alacran

 

- Option Added - Capture WIM File with LZX Compression

- Added - Locale Language in BCD is taken into account

 

For making new BCD entries there was only code to use default Language en-US, but now the Locale value is taken into account.

 

This time I used 10x64-WB.wim LZX compressed as source, located on Wimboot file on the USB, the program created W10x86_MX_1.vhd in a few minutes on USB device.

 

All working as expected, not a single issue during building or during Rambooting the created VHD of 1.5 GB fixed size.

 

So the program is totally fine as far as Apply, haven't tested Capture yet.

 

As a personal test I manually changed grub4dos version from 0.4.6a-2018-12-23 to 0.4.6a-2017-12-20 and tested Rambooting the W10x86_MX_1.vhd without making any change to munu.lst, I mean the command map --top --mem was not changed to map --mem for use on the older version, and W10x86_MX_1.vhd Rambooted as fine as before.

 

This was done with the idea to suggest you 2 optional additions to your program:

 

1 - An option for the user to select/use grub4dos 0.4.6a-2017-12-20 (the last known version capable to Ramboot Dynamic Expandable VHDs)

 

2 - An option for the user to create Dynamic Expandable VHDs (They load on RAM like a lightning), not capable to Filedisk boot using grub4dos, but Windows manager boots them without any issue, and also we save more than 2/3 of VHD size = more than 66.6 % less espace used for the VHD.

 

alacran



#214 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 14713 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 3 weeks ago

@wimb

Besides the suggestion by karyonix, I was suggesting more to use bcdboot and/or bcdedit to create a "base" BCD and then use reg.exe as cdob detailed in the given thread to "tweak it" as needed, and/or erwan.l's offlinereg:

http://reboot.pro/to...linux/?p=192410

 

and/or (if needed) direct binary editing to further refine it.

 

:duff:

Wonko



#215 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 3 weeks ago

@wimb
bcdedit /store N:\Boot\BCD /set {bootmgr} device boot
bcdedit /store N:\Boot\BCD /set {513f748d-4e64-11e9-b210-3052cb53659e} device boot
bcdedit /store N:\Boot\BCD /set {513f748d-4e64-11e9-b210-3052cb53659e} osdevice boot

 

It is useful in Windows 7 x64 OS to make existing <Unknown> entry of BCD in Win10x64 VHD bootable.

 

I can create also new working BCD entry using your code.

Important is to use the addlast for adding the entry to the menu

 

Thanks for your solution  :)



#216 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 3 weeks ago

Download -  coming later

 

- bcdboot not used anymore in code to update internal BCD of VHD

- Program now compatible with Windows 7/8/10 OS

- added new grub4dos-0.4.6a-2019-03-25 version

 

Thanks to karyonix for giving solution to make the program compatible with Windows 7  :)


  • alacran likes this

#217 alacran

alacran

    Silver Member

  • .script developer
  • 875 posts
  •  
    Mexico

Posted 3 weeks ago

Better use new grub4dos-0.4.6a-2019-03-25, see: http://reboot.pro/to...e-3#entry210171

 

It is restoring again the lost (by mistake) capability to load to Ram and Ramboot expandable VHDs. Download: http://grub4dos.chenall.net/

 

So my two previous suggestions are reduced to only one now:

 

An option for the user to create Dynamic Expandable VHDs (They load on RAM like a lightning), not capable to Filedisk boot using grub4dos, but Windows manager boots them without any issue, and also we save more than 2/3 of VHD size = more than 66.6 % less espace used for the VHD.

 

alacran



#218 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 3 weeks ago

Better use new grub4dos-0.4.6a-2019-03-25, see: http://reboot.pro/to...e-3#entry210171

 

It is restoring again the lost (by mistake) capability to load to Ram and Ramboot expandable VHDs. Download: http://grub4dos.chenall.net/

 

Thanks, I have just added the new grub4dos-0.4.6a-2019-03-25 version.



#219 alacran

alacran

    Silver Member

  • .script developer
  • 875 posts
  •  
    Mexico

Posted 3 weeks ago

W81x64_ES_1.vhd was created running VHD_WIMBOOT from Win 7x64, external BCD is fine, including lang selection, internal BCD includes lang selection fine too, but the HD and partition to boot from are not selected, see attached picture.

 

alacran

Attached Thumbnails

  • 8.1x64 made from 7.png


#220 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 3 weeks ago

W81x64_ES_1.vhd was created running VHD_WIMBOOT from Win 7x64, external BCD is fine, including lang selection, internal BCD includes lang selection fine too, but the HD and partition to boot from are not selected, see attached picture.

 

alacran

 

Probably there is only one entry which is not set as default.

I will check it and find a solution.

 

What does the entry look like in Professional mode ?



#221 alacran

alacran

    Silver Member

  • .script developer
  • 875 posts
  •  
    Mexico

Posted 3 weeks ago

This is it on Professional mode.

Attached Thumbnails

  • Pro view 8.1x64 made from 7.png


#222 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 3 weeks ago

Somehow the default entry has been removed.

So I have to check if a default entry is present and otherwise create one.

 

Normally Install creates a default entry.



#223 alacran

alacran

    Silver Member

  • .script developer
  • 875 posts
  •  
    Mexico

Posted 3 weeks ago

I haven't noticed it before because I have about 10 entries on my BCD, but during running VHD_WIMBOOT to create W81x64_ES_1.vhd from Win 7, my win10x64 Pro that was selected as default on BCD,  was overwrited by W81x64_ES_1.vhd entry, so better delete the link to download that version 1.4, since it may create big troubles to non advanced users.



#224 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 3 weeks ago

I haven't noticed it before because I have about 10 entries on my BCD, but during running VHD_WIMBOOT to create W81x64_ES_1.vhd from Win 7, my win10x64 Pro that was selected as default on BCD,  was overwrited by W81x64_ES_1.vhd entry, so better delete the link to download that version 1.4, since it may create big troubles to non advanced users.

 

OK, File has been removed.

 

Thanks for the Info.



#225 wimb

wimb

    Gold Member

  • Developer
  • 2491 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 3 weeks ago

Download:  VHD_WIMBOOT Version 1.7

 

- internal BCD create entry improved - solution also working without default entry present

- external BCD create entry improved so that default entry cannot be overwritten anymore

- VHD Expandable option added

- SVBus Filedisk entry removed, since it does not work with expandable VHD and Microsoft VHD entry in Boot Manager menu is better option

 

Thanks to karyonix, alacran, Wonko the Sane, tinybit, yaya, chenall, cdob, JFX, steve6375, ReTokener, synchronicity, schtrom and Microsoft   :) 

 

VHD_WIMBOOT-2019-03-26_150940.png == W10x64-RAM-HelloWorld-2019-03-01_155130.png

 

:cheers:

 

More Info in Support Topic on VHD_WIMBOOT  - Apply and Capture of WIM Files for OS in VHD


  • alacran likes this





Also tagged with one or more of these keywords: uefi, usb, multiboot, windows 10, aio boot, linux, vhdx, ssd, wim

1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users