-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[issue]: Ventoy used with -s -and -g creates non bootable disk. #2673
Comments
Should I add that creating disk image with rufus or dd for debian image works on the same laptop in secure UEFI mode and can be booted using the F11 boot device selection option used by the BIOS. Here the disk is not even proposed and this is not surprising given the partition type and flags. Sfdisk on the created image does not list the fat16 partition as EFI boot poartition. |
I have copied the FAT16 content, and recreated a FAT32 partition with the same content and correct flags. I still does not boot. So either, the UEFI BIOS is not able to access partition that are after a certain number of blocs (SSD disk not usb stick), or the content is incorrectly signed. Will try to move the EFI partition ate the beginning of the disk to see it it help. |
'It does no boot' is not a very good description of the problem! It is like saying 'my car does not work'. Totally useless description. |
I wonder if you even did read the first comment after the bug itself but anyway. It creates a non bootable disk because the UEFI BIOS does not recognize the disk as a bootable disk. Many user use ventoy, is fair. How many use the Linux version to create the image and specify -s and -g? As long as the UEFI BIOS does not propose me to boot the ventoy created disk, what else can I say? The PC is fine. It does boot from USB with EFI signed code created with other tools (rufus, debian iso on usb, ...). The disk is fine. I Can access it from Linux with gparted and boot it with other system installed. |
Ventoy places the FAT16 partition at the end of the disk. The most common problem that people have is that they use a fake cheap USB drive which does not actually contain the stated size of flash memory chips and often these chips are faulty too. The other problem is that some BIOSes, when in Secure Boot mode, do not list partitions which contain unsigned EFI boot files (e.g. /EFI/BOOT/BOOTX64.EFI which is insecure and is not signed). Because Ventoy needs to manipulate ISOs, etc. in order to multiboot different source files, it cannot be signed. So you may need to disable Secure Boot in your BIOS configuration settings. Since you have given no details about Secure Boot (or any other BIOS details), it is difficult to know how to help. |
The disk is a samsung T5 SSD. Brand new and working. I want to replace all my usb bootable keys with a multi iso solution (I have maybe 10+ for various partitionning recovery usage). Could you elaborate on "BOOTX64.EFI which is insecure and is not signed". I do not understand. This would mean that you sometime modify /EFI/BOOT/BOOTX64.EFI on the fly or that you modified some code and did not had it sign by microsoft? What will happen If I use my internal disk bootx64.efi and replace /EFI/BOOT/BOOTX64.EFI And I'm glad the secure boot refuse to boot anything non signed! I do not want to disable secure boot even for trying (and on some other professional laptops I will not be allowed to do it anyway) The doc you pointed is when you manage to boot up to shim layer. And I'm familiar with that as I need to add keys to sign Linux dkms modules with my own keys. |
ALL UEFI x86 64-bit firmware boots from the \EFI\BOOT\BOOTX64.EFI file. P.S. The Ventoy BOOTX64.EFI contains the Ventoy boot code. It cannot be substituted with a different version, |
So you do not support secure boot this is a misleading false advertisement. I just wasted my time. But at least this is clear now. I will open another bug for it. |
OK. Can you close this issue please as you clearly did not understand the product despite it being documented. |
Documented where? Could you give me a ponter saying it assumes the secure boot UEFI BIOS is broken? You write in your advertisement that UEFI secure boot mode IS supported. Ventoy dev teams does not seems to understand the concept of secure boot and trusted chain. As long as a single element in the boot chain is not signed, the rest cannot be considered secure anymore. The shim key enrolment is just a joke as in your case the first boot element is not signed. Signing the rest afterwards is void. The bug report is valid I do not see why I should close it. |
I am not the developer. Just trying to help you as no one else seemed to help with your issue, probably due to your lack of clear explanation of the issue. |
I'm desperately seeking for it and due to somehow false advertising I hoped to have found one. |
I am the developer of Easy2boot which does have a method of booting multiple secure bootable images, but it requires you to switch in a .imgptn file using a legacy or non secure system or a windows utility first, before you can secure boot to the selected image. |
Of course, you could always purchase an iodd drive. Then you will have no secure boot issues 😉 |
If I write code in the iodd drive that is not signed and contains malware, it does not protect me. |
The iodd drive is a virtual drive emulator, so you select the iso and then the uefi bios just sees a cd/dvd boot drive |
P.s. when I say that the Ventoy efi file is not signed, I mean not signed with a Microsoft certificate and so not accepted as secure. |
Great. Indeed I looked as some thing that was different. I've seen one but it can contain only four iso. Will continue looking to see if I find something suitable (I have maybe 12 isos...). |
That rings a bell. If it is signed it means, you expect the signature to be verified by another component. So now I'm not sure about the ventoy secure boot trust chain. Per se, it is not problematic to have part of the bootchain signed and verified using non Microsoft keys. Typically grub fails into that category on Linux distrib with shim build with a distribution key build-in. But some elements have to be signed with Microsoft key : the one used by UEFI BIOS. Is there somewhere a document that describes the ventoy bootflow from the BIOS and the keys used by each stage? |
No - you can have THOUSANDS of ISOs on an IODD and you can mount up to FOUR at any one time - i.e. the BIOS can see 4 different USB DVD virtual drives at the same time. You can have four VHDs mounted, so the BIOS can see four different USB drives at any one time. i.e. The IODD devices are what every multibooter needs and they can secure boot with no issues (as long as the ISO is signed |
OK. thanks a lot. I will look at such a device because it would fulfill my need. |
Since I have mokutil on my Linux and Linux shim can register my own created key (use that for DKMS modules), may I try to enroll the key in ventoy EFI using user space Linux mokutil? Will UEFI BIOS accept it as a valid key and allow to launch BOOTX64.EFI ? |
Why not try it? I Googled and found this...
|
openssl x509 -in /mnt/ENROLL_THIS_KEY_IN_MOKMANAGER.cer -text -noout Then: mokutil --list-enrolled [key 2] !!my personal key. Deleted!! [key 3] So key 3 is indeed identical to the one in the root of ventoy efi partition. However, when I use sbverify to check how the bianry is signed I hardly see it is the same signature: sbverify --list /mnt/EFI/BOOT/BOOTX64.EFI warning: data remaining[808656 vs 934024]: gaps between PE/COFF sections?
|
So I signed the EFI/BOOT/BOOTX64.EFI with my own key (or more precisely added my own key to the signature and still it does not work. Shim add the key in the MOK (Machine Owner Key) database that is probably not the one used by UEFI bios called db. I have no clue on how to add a key on db except recreating the whole trust chain PK see https://learn.microsoft.com/en-us/windows-hardware/manufacture/desktop/windows-secure-boot-key-creation-and-management-guidance?view=windows-11 . The BIOS do not allow key management. Some do. |
Just here to say that this error still exists. I've just ran f3probe on my usb stick and can confirm it's fine. I've tried with secure boot enabled and disabled. Installing Ventoy with -s and -g options makes an unbootable device. A little addition to what actually happens: I get stuck in a grub console and can't really do anything because it tells me I need to start a kernel first, which I can't. |
It was a false alarm it seems that moving the iso into Ventoy with my usual command was not what needed to be done. It kept unpacking when I just intended to move the file. |
Official FAQ
Ventoy Version
1.0.96
What about latest release
Yes. I have tried the latest release, but the bug still exist.
Try alternative boot mode
I do not want to disable secure boot and in any case I will not be allowed to on professional laptop.
BIOS Mode
UEFI Mode
Partition Style
GPT
Disk Capacity
1TB
Disk Manufacturer
samsung T5 SSD
Image file checksum (if applicable)
None
Image file download link (if applicable)
No response
What happened?
First the EFI boot partition type is bizzare (FAT16 should be FAT32 on most PC) and the partition flags are wrong also (should be boot,esp and not hidden, no_automount and I dunno what else). The fact is that the BIOS when F11 does not propose to boot on the newly created ventoy image on the T5.
The text was updated successfully, but these errors were encountered: