Hacker News new | past | comments | ask | show | jobs | submit login
Ventoy (ventoy.net)
594 points by matthberg 10 months ago | hide | past | favorite | 111 comments



Fantastic tool. Works with Linux, Windows, FreeBSD, some forms of DOS -- most things.

I wrote about it here: https://www.theregister.com/2021/12/10/friday_foss_fest/

Now there's a PXE network-boot version too.

https://www.iventoy.com/en/index.html


I've never tried ventoy, but if the PXE/netboot features work, I want to strongly urge anyone thinking of experimenting with PXE/netboot to use ventoy or any other similar helper instead of trying to set up PXE/netboot yourself. I can confidently say that PXE was the single most difficult project/aspect of computing I've ever worked on in the 20 years of working with Linux machines as a hobby and a job. 3-4 times I attempted to mess with it, got it working about 2. Wasted/spent an absolutely enormous amount of time.


PXE is one of those things that used to be dead simple to set up. Just add an entry to the DHCP record and set up a TFTP server for the kernel and NFS root drive and you were golden.

UEFI threw a huge moneywrench in the process, and SystemD doesn't help. Last time I made it work I had to track down a mailing list entry where someone discussed an otherwise undocumented kernel option that needed to be set to make it work. One of the key glue techs that made it work last time (rom-o-matic) went out of development and is gone.


That is still basically the process. You need to ensure that the arch options are being selected properly in your dhcp file, ex:

if option arch = 00:07 { filename "uefi/shimx64.efi"; next-server X.X.X.X; } else ...

Otherwise, your going to get the wrong arch/filename.

It is similar to HTTPS, but the arch = 00:10 for x64 and it needs:

option vendor-class-identifier "HTTPClient";

Then put the URL in the filename field.

Finally just put the usual bios/pxe stub in the last "else"

Of course, your distro should provide a PXE capable grub/kernel/initrd, which you then toss on the TFTP/HTTPS (or HTTP then you don't have to deal with certs) server in the path provided.


UEFI seems hard, because there's no standardized way to boot ISO files, and memdisk from syslinux doesn't work in UEFI. With memdisk, the OS kernel could (if properly written) hook into the loaded image, and mount that as well.

Without that support, you have to take apart ISO files to netboot them, and your PXE environment needs to understand the various kernels and how to boot them, and how to provide modules / filesystem images.

It's a big pain.


Either Dell or Lenovo (can't remember which, I own both laptops) has some new-generation HTTPS boot, tried it (I wanted to dual boot FreeBSD/Linux without messing with UEFI, disabling secure boot, or repartitioning, just pressing F12 and net-booting), wasted another 2-3 hours rebooting each time, got absolutely nowhere again. Man, this stuff is cursed.


Just commenting an adjacent UEFI problem solved: My workaround at work with some old test robots that I still use, but don't have UEFI... Put iPXE on a flash drive, and use that to chain-boot into the uefi-only PXE setup. (there's still a few that this doesn't work for, but it's a minority and I'm going to scrap those...)


iPXE makes the client-side part of it manageable; the only drawback is having to walk through the open pull-requests on github for the patches you need to get it working, and possibly having to fight some buggy uefi drivers (usually solved with snponly). Also has the advantage of making it possible to do everything secureboot + over TLS with your own certificates, rather than classical PXE which is all plaintext.

For the serverside, there are several python projects on github which provide everything you need in one package, for example pybootd.


You are not wrong.

But I get a good bit of satisfaction of having gleaned a pretty functional understanding of setting up PXE/netboot (Ubuntu installs; with a Ubuntu PXE server via DNSMasq + nfs + tftp).

I even did some grub menu user input (and ascii art while I was at it) prompts/trickery to allow choosing the machine name shortly after boot, before the long slow Ubuntu install.

The list of things I've failed at (memtest) or not tried (Windows) is surely long, though.

Ventoy is fantastic for any lower-volume imaging needs I have, of course.


I tried iVnetoy on both Windows and Linux, on Windows I couldn't get it working (don't know why, maybe a firewall issue?), but on Linux it worked flawlessly, and the injection features are also great


Ventoy and iVentoy are separate products. I have not tried iVentoy -- I have no real need for it -- but I can attest to the USB-key tool's simplicity and utility. I suspect the netboot one will be comparably good.


Knew about http://netboot.xyz, but had no idea iVentoy existed. Good to know.


Ventoy developer longpanda offers tools for injection into Linux and Windows ISOs, which work with the Ventoy injection plugin, https://github.com/ventoy/WinInjection & https://github.com/ventoy/LiveInjection

https://www.linux-magazine.com/Issues/2022/257/deepin

> Deepin is a distribution developed in Wuhan, China by Deepin Technology. Its homepage proclaims it "the top Linux distribution from China" ... The extensive EULA is uncommon for the Linux space, and the privacy policy goes into some detail about the types of information they collect – not just browser history, but information on when you use your computer and the applications installed on your system.

https://cntechpost.com/2019/12/31/union-tech-acquires-deepin...

> Deepin Technology said today it is now a wholly-owned subsidiary of Union Tech ... developed a new UOS product ... The UOS preparatory group was voluntarily initiated by a number of domestic operating system core companies. Its members include China Electronics Group (CEC), Wuhan Shenzhidu Technology Co., Ltd., Nanjing Chengmai Technology, and ZTE New Fulcrum ... It has set up a headquarters in Beijing and established branches in Shanghai, Guangzhou, Wuhan, Nanjing, Xi'an, Chengdu and other places.


What does the stuff about Deepin have to do with Ventoy?


The Ventoy homepage links to Deepin as a "Friendly Link" and Deepin is a boot target in Ventoy screenshots.


... So?

I don't get it. It supports hundreds of distros and dozens of OSes.

What do you feel is relevant about Deepin?


> It supports hundreds of distros and dozens of OSes.

Indeed, so why is Deepin the only distro worthy of a "Friendly Link" on the Ventoy home page? Are they a sponsor of the project? Code contributor? Preferred demo platform?


Does it matter?

It's not the only link: there's also some Chinese forum.

Maybe it's Longpanda's favourite distro? It is a very good one. I've reviewed it:

https://www.theregister.com/2022/04/01/deepin_205_surfaces/

https://www.theregister.com/2022/08/25/deepin_206_23/

It is one of the major distros, with millions of users, and yet there is very little knowledge of it in the West. Its commercial upstream claims to have over 3 million paid users:

https://www.theregister.com/2023/11/20/3_million_deepin_user...

I suspect that in plain old user numbers it is up there with Debian, Ubuntu and CentOS, and yet you rarely even hear it mentioned in the same breath. Nor is its desktop, DDE, which is FOSS and is supported in Fedora, openSUSE and has its own Ubuntu remix.


Fantastic tool.

Having a single thumb drive with multiple ISOs on it means you don't have to keep juggling thumb drives ("now where did I put my Debian 12 XFCE installer") or overwriting them over and over ("oh no, this has the 64-bit ISO, but now I need the 32-bit installer").


I only recently learned that Ventoy can also boot from Virtualbox VHD files and run them "on the metal".

https://forums.ventoy.net/archive/index.php?thread-416.html


For deployments where China is not preferred in system install/boot root of trust, standalone grub2 can boot multiple ISOs and VHDs.

Sample configs for grub2 ISO boot, e.g. USB or secondary disk partition for system recovery, https://news.ycombinator.com/item?id=38663958

There is dedicated hardware to emulate optical drives, e.g. Korean IODD sells SSD enclosures to emulate up to 4 virtual optical drives in parallel, mapped to ISOs or VHDs. As a standalone device, this keeps untrusted emulation code away from the system CPU. The output of that untrusted code could be verified, e.g. by hashing the emulated ISO.


Indeed, many of Ventoy's magic come from GRUB2, Ventoy just wins in ease of use by autodetecting whatever's tossed onto the drive without manually editing the boot menu.


Microsoft has supported "Native VHD Boot" since at least Windows 7 [1], but it is cool this project can configure it automatically.

[1] https://learn.microsoft.com/en-us/virtualization/community/t...


Now that’s awesome. Thanks for that, I was not aware of this feature.


I have an external nvme with many iso's running ventoy and it's become an absolute staple. I even engraved 'ventoy' on it with a hand engraver so there's never any doubt.

Useful for more than installs too, I have live distros with things like memtest, gparted and clonezilla, which really simplifies little one-off fixes.


How does the external NVMe work? Is there a USB enclosure for it? How does it fare against a USB thumb drive?


There are Thunderbolt based drive enclosures, but the reasonably priced ones are all based on one of a handful of USB to NVMe bridge chips. You usually get a 10Gbps link, so nowhere near the speed the NVMe drive inside is capable of, but about twice the performance of SATA-based USB drives or the fastest that use a USB-native SSD controller. Compared to a typical USB thumb drive, performance is night and day, especially for writes and random access.


Interesting, thank you, though I guess I'd have to go USB 3 or USB-C, as I don't have Thunderbolt.


Something like this tool-less Sabrent NVMe enclosure ($30 https://a.co/d/2JOZsHn) paired with an inexpensive M.2 SSD.

Not sure how gracefully the enclosure downgrades to USB 2.0 speeds, but it's very handy and very fast.

The SSD doesn't need to be fancy. It's overall bigger than a typical thumb drive, but much more reliable and the SSD can be easily swapped out. The detachable USB C cable on the enclosure is also very convenient.


M.2 2242 NVMe/SATA enclosure is a bit smaller, https://www.amazon.com/gp/product/B082CFQYKR/


Nvme to usb enclosures can work great, but can also be dodgy to work with. I personally find SATA enclosures more reliable overall, as they are less demanding

There are a few issues at play:

1. Power supply issues: the power demands of your mix of enclosure and drive may not be satisfied by your USB port(s), which can vary wildly in capability, and over time.

2. The controller within the enclosure can overheat under load. This seems to happen across many enclosures I’ve tried. Larger enclosures may allow for attaching a tiny heatsink.

3. NVMe drives may not gracefully handle sudden disconnections. USB connections are inherently unreliable interfaces prone to physical disruption and loss of power, which will multiply against any normally hidden non-resiliance in the nvme drive.

If your drive decides to stop showing up, first try loading up the boot device selection screen in the UEFI, and then insert the drive. It may take several seconds to show up. If trying that a few times doesn’t work, the drive may be stuck in some kind of bad state. You may be able to recover from this with the unfortunately poorly known power cycle technique https://dfarq.homeip.net/fix-dead-ssd/

The technique summarized is:

1. Connect to power (not data) only. Alternatively letting the drive sit at bios setup screen also seems to work. Turn on the power and leave the power on for 30 minutes.

2. After 30 minutes, power down or pull the power cable.

3. Wait 30 seconds, then restore power.

4. Let the drive sit powered on for another 30 minutes.

5. Power down again, then wait 30 seconds.

Always set up automatic backups if you actually have non-replaceable data on the drive. They can and will just suddenly die forever with loss of all data, just like thumb drives. You have been warned.

All that said, there are generally less issues if you are simply putting ventoy on it to just install an OS from an iso.

I have a dual raid1 sata enclosure that I use to boot a windows to go install created with Rufus (https://github.com/pbatard/rufus), which makes testing and benchmarking so much nicer to deal with. I’ve even stuck games on it, and other than relative filesystem slowness it works pretty great, once I added a heatsink to the enclosure controller.


Mine is a cheapy NVME->USBC external. You do have to be a little careful with the cheap ones, USBC is a somewhat safer bet. Some of them list what chip they're using, which is what I went off of, as I wanted to be able to get full USB3 speed out of it at least.

The reason I went this route is simple really, I wanted something faster/more reliable than a flash drive. Ventoy runs fine off a cheap flash drive, but, it is faster when your device is faster.


It's one of those tools that you don't know exists and then you wonder how you did without. The ingenuity of FLOSS developers never ceases to amaze me.


The only issue I had was two weeks ago where I could not boot Proxmox from my ventoy stick. But Google Shows a bunch of issues with Proxmox installs.


I faced it too. There is a PR on the ventoy GitHub repository that fixes Proxmox boot.

https://github.com/ventoy/Ventoy/actions/runs/7088423200


Discussions on similar submissions:

A New Bootable USB Solution https://news.ycombinator.com/item?id=28889392 (October 16, 2021 — 182 points, 47 comments)

Ventoy makes making bootable USB drives easy https://news.ycombinator.com/item?id=24273289 (August 25, 2020 — 66 points, 11 comments)

Ventoy: A new bootable USB solution https://news.ycombinator.com/item?id=24241485 (August 21, 2020 — 394 points, 106 comments)

Ventoy – A New Bootable USB Solution https://news.ycombinator.com/item?id=23394714 (June 2, 2020 — 70 points, 6 comments)


This is a great tool for those of us who might have a bit of a distro hopping problem. You no longer need to do the whole song and dance with `dd` and can just copy a bunch of ISOs to a single USB drive


I recently started getting into Linux, I was able to load up four or five ISOs and cycle through them so painlessly. Very fun.


This is the best tool I have used for my linux installs, it also is handy to have some recovery/maintenance ISO's quickly available.

It works with BIOS and UEFI and even lets you keep using your usb for other files.


the persistence feature is cool: https://www.ventoy.net/en/plugin_persistence.html

especially if you want to customize or keep your bootable recovery disk usb updated without rolling your own ISOs.


Unfortunately that works by creating a FS on a loop image file, you can't use the FS in the actual USB stick.

It's still great, but if you run into space issues you'll have to extend the loop file.


So you can boot from a USB that already has other files on it or just other isos?


You can put other files on it too.

It is basically a bootloader that lists all the Isos on the drive and let's you boot them.

I have a handful of Isos and it's a good send


I like "good send" -- it's a bit less hyperbolic than "Godsend".


This is absolutely amazing. Having to clear out a usb just to boot a live image is really annoying (still need to format the usbs with it at the beginning though)


You can put whatever you want on the VENTOY drive: I made one for a friend a that had Kubuntu and Tails ISOs along with Yuzu (Nintendo Switch emulator) and a bunch of Switch games.

I didn't test Tails much (I was just trying to encourage learning linux through fun... tools) but I could boot into Kubuntu and play the included Switch games. It even worked with a cheap/generic Switch Pro-like controller without any extra setup required other than to tell Yuzu to use it.

Essentially it was an instant boot-on-anything Nintendo Switch emulator thumb drive (it was one of the tinier varieties too). Tape that drive to the back of a $20 Switch Pro-like controller and it's a fantastic Christmas gift


Sounds really cool! Thanks for the idea!


Yes- it formats the USB when you install Ventoy (to add an EFI partition) but after that you can put other files on it in addition to the ISOs. It will only show the ISOs in the boot menu and ignore the other files.


Is there any option to set a default ISO to boot? Without having to select a file manually. I keep juggling between different OSes on raspberry pies and it’s a pain to reformat drive again and again. But sometimes i do want it to boot headless.


See `VTOY_DEFAULT_IMAGE`, which also allows for some special values: https://www.ventoy.net/en/plugin_control.html#vtoy_default_i...


You can also have it leave extra space at the end of the device. I create a new partition there and format it with ab EXT4 filesystem. At one time (I think) Windows could not deal with the extra partition but Linux does just fine.


And those other files can include bios files, drivers, etc


If your files include non-bootable ISOs, they will also show up in the boot menu. I haven't tried selecting one to see what happens.


You can say that only a specific folder has ISOs.

It's configurable via a simple json file.


Good to know! I haven't looked into the configuration at all, just been using it as-installed since hearing about it a little over a year ago. (Thanks, Late Night Linux!)


https://www.ventoy.net/en/plugin_imagelist.html

Example config:

{ "image_list": [ "/ISO/Linux/archlinux-2020.10.01-x86_64.iso", "/ISO/cn_windows_10_enterprise_ltsc_2019_x64_dvd_9c09ff24.iso", "/ISO/Win10PE.iso" ] }

or:

https://www.ventoy.net/en/plugin_control.html

And something like:

{ "VTOY_DEFAULT_SEARCH_ROOT": "/ISO" }


Key limitation: can't be installed to run standalone (in a partition on your nvme boot drive) if you care about partitions alignment.

Variants without this limitation were discussed yesterday.

Usecase: a rescue distribution to start from the UEFI menu manually, or automatically if your normal boot fails


Why not dual boot any Linux for that? If you use Windows. Coz if it run Linux, you’re fine, you can just load another kernel of your is happened to break after the update.


The goal is to have full ISOs, for Ubuntu, Windows 11 etc with the minimal number of partitions and files, for easy maintenance and imaging to other computers

A few ISO + a UEFI entry to select them is much simpler: the ISO file will never change. It can not be rended unbootable by mistake

I tried to explain that yesterday in a reply to https://news.ycombinator.com/item?id=38668260 and on https://news.ycombinator.com/item?id=38668809


Sounds like not a bad idea for the tool, but very niche.

Theoretically, something similar can be achieved with a read-only partition, or a read-only installation (e.g. Fedora Silverblue). I won’t argue that may include more competency than just throwing some ISOs at the partition. But for me, that feels like a more comfortable way of having a rescue system at hand. I have an Arch installation USB for the same reasons, to save my Arch installation if anything happens. I had been thinking of creating a separate USB with Arch installed, but I’m not sure it’s needed. As in reality all of my maintenances were to boot, chroot and update or downgrade some things. In case I need a GUI, I use a Fedora installation. I assume your scenario is more like that.


> In case I need a GUI, I use a Fedora installation. I assume your scenario is more like that.

Yes, it's just faster to boot to an installation or liveCD iso, as it's rarely needed and updating it only requires a new ISO.

Having a full installation on a separate partition is riskier (what if something writes to the partition) and more brittle (too many moving parts)


I recently needed to install Linux onto two new systems, and the process has somehow gotten even more infuriating since I last purchased hardware about five years ago. Between Secure Boot, UEFI, the Windows Boot Loader, "self-healing BIOS" (aka, "huh, you tried to boot something other than Windows, lemme just revert all those BIOS settings for you..."), and either crippled or inscrutably complex BIOS, I was dead in the water with the install process for several hours on each device.

Ventoy saved my bacon. One of the problems I was encountering turned out to be that one of the BIOSes wasn't recognizing the standard Debian ISO (any of them) as bootable, but it did recognize Ventoy. The other device ultimately refused to boot anything other than either Windows or Ubuntu (hard-locking on kernel load), but Ventoy at least made it easier to trial-and-error my way to that conclusion.

I flatly refuse to purchase a mass-market computer ever again. Everything from this point forward is either going to be custom built or purchased from a vendor with explicit Linux support.


>the Windows Boot Loader,

Just FYI, Windows Boot Manager (and also its predecessor NTLDR) can chainload into any other bootloader including GRUB. Originally intended to support dualbooting Windows NT with Windows 9x, it's actually quite handy and reliable.

>I flatly refuse to purchase a mass-market computer ever again.

There's your problem. "Big box" store-bought computers have motherboards that are locked down and devoid of most advanced features.


I've seen old tutorial from the Windows 7 era, tried to do the same with Windows 11 but failed.

Can you explain how to use Windows bootmgr to chainload a linux kernel store either in the EFI or the NTFS?

The goal is to use the same menu that shows different Windows versions from different drives


The TL;DR is you dump a bootloader (eg: the 446 bytes of GRUB that would reside in a Master Boot Record) into a Windows-accessible file and then add a selection to Windows Boot Manager (or NTLDR) that points to that file. It will then happily execute whatever is there, such as GRUB or the Windows 9x bootloader, and hand over control.

Yes, this means if GRUB subsequently has its own selection for Windows Boot Manager you can go and dance between the two forever. :P

Seeing as the system is booting into Windows Boot Manager first, I think it should satisfy any SecureBoot demands if you want to actually boot GRUB or something afterwards.


This works on BIOS PC's or many times on UEFI machines which Have CSM enabled.

But still have not found a way to boot Linux from Windows boot loader in plain UEFI. Where those exact 446 bytes are completely ignored.

OTOH, booting Windows from a linux UEFI bootloader is still fundamentally as easy as it was a few years ago once the Linux community had legitimately acquired microsoft-signed bootloader shims. Except since then these specific Microsoft-signed keys "became" compromised, and are presently in the process of being blacklisted[0].

"Early-adopters" were expected to manually update their motherboards along the lines published here:

https://support.microsoft.com/en-us/topic/kb5025885-how-to-m...

Take a close look at the FAQ and Troubleshooting sections at the bottom of this article. And these are focused on potential problems with Windows itself. For Linux you need to interpret this information yourself.

Which is also the article where the expected deployment staging schedule shows that the blacklisting process will eventually be complete no sooner than October 8, 2024.

As time draws near, anyone who has not manually taken action will have their original keys be corrected in stages by being silently autoreplaced by spares. This autoreplacement seems to be occurring recently while running updated Windows 10 & 11 installs.

Looks like a new executable, SecureBootEncodeUEFI.exe, was downloaded during an update, and has been reaching the designated spawning date for many users:

https://learn.microsoft.com/en-us/answers/questions/1286247/...

https://answers.microsoft.com/en-us/windows/forum/all/secure...

I saw the CMD popup while I was running an updated W10 on an especially slow PC.

According to the calendar, this is a really drawn-out process, and until it's over[1] we will remain in a transition period where you never know which keys you need to have on your media in order for it to boot on any one particular motherboard.

.

[0] https://arstechnica.com/information-technology/2023/05/micro...

>Fix will eventually render all kinds of older Windows boot media unbootable.

Not only "old" Windows boot media, Linux boot media is a target that can not be considered merely "collateral damage".

[1] It will only be completely over once all UEFI PC motherboards in existence have been updated to perfection. Well, really after that only once all UEFI-bootable media has been corrected to match perfectly as well. Haven't seen any articles on how this is supposed to be accomplished though . . .

Could very well be some subtle encouragement to discard all old media for some reason.


> But still have not found a way to boot Linux from Windows boot loader in plain UEFI. Where those exact 446 bytes are completely ignored.

That's exactly what I'm looking for: chainloading from bootmgfw by adding entries with bcdedit: this is because winload.exe loads the kernel (ntoskrnl) by reading the BCD, so maybe it's possible to make it load a linux kernel, or to replace winload.exe by something that will (you can revert that with `bcdedit /set {default} path \windows\system32\boot\winload.exe`)

Have you explored that?


That's surprising. I never experienced that. All I do is format USB stick with FAT32, copy files from ISO and it just works.


I invite you to give that a shot on either an LG 16Z90R or a Dell Inspiron 7710.


while I don't have any of those machines readily available, i am curious if this USB image [1] would work. It's a lightly customized Alpine which can be written to a flashdrive using either Rufus, usbimager, or this command: xz -dkc <asm.usb.xz >/dev/sdi

the image was built using this repo [2] and this command: ./build.sh -i dl/alpine-standard-3.19.0-x86_64.iso -p min -s 0.3

[1] https://ocv.me/asm.usb.xz [2] https://github.com/9001/asm


Would've been happy to try this, but this device has already been shipped to the recipient. FWIW the consensus was that Secure Boot on the Inspiron was still partially active, even after disabling it in BIOS. If this image is capable of running with Secure Boot enabled, then it should work. If it requires disabling Secure Boot, then it probably wouldn't.


In that case we probably have the answer already :) The next question then would have been whether secureboot-signing it yourself and replacing the PK/DB in the BIOS would have made it work, but it's really unfortunate that we've gotten to this point.


Yeah. I was genuinely surprised at how hostile the process has become. These were the most difficult installs I've ever had by far, and for entirely different reasons than in the past. Contrary to past installs, once I finally got the OS on there, everything else worked better than expected.


Here we go again: Leave that damn windows bootloader alone. Create new partition for the new bootloader, set it as default boot partition. When booting choose "Windows boot mgr" in GRUB (may need to run osprober), it'll work fine. This way windows can keep it's bootloader healthy, and you can boot to both OSes.


Appreciate the advice, but I have no interest in booting Windows and would rather not keep its boot loader. On the exceedingly rare occasion that I need Windows for something, a VM is far more convenient than a reboot.


Hm, I'm confused- why you do not just wipe the Windows install entirely then?


I do, but that requires either successfully booting something else or pulling the drive. Manufacturers are making it incrementally harder to successfully boot something else. Pulling the drive is still an option, but it turned out that I didn't have the right NVME adapter and one wasn't available locally, and in any case, if you do that and still can't get it to boot, then you have to have a backup image of the drive or you're really SOL. If the device still boots Windows in any condition, I can still return it to the retailer as a plan Z.


I'm afraid I'm totally lost. Do you not just plug in a USB drive with a Linux ISO, hit the key combo for the boot menu, and boot off the USB? Maybe you need to disable secure boot in the BIOS/UEFI, but that's about it, no?


I know Ventoy has been around for a while, but I'm still glad we have a good FOSS solution for this. Back in the day, I used to run a proprietary (I think) tool called SARDU for the job, which worked fine, but wasn't terrific.


Very practical for IT work or if you just want to put all of your useful ISOs somewhere like a large USB stick. You can have your Win/AV/Rescue/Linux/Memory testing and other tools together and just boot whatever you need without struggling with writing images and repeating the boot process while smashing your keys. The only machines that this didn't work for me were from the Windows XP era. Didn't have any compatibility issues with ISOs!


This is what I use most often these days for loading any system with a Linux install (or to test drive distros it's an awesome tool).

I have found some hardware seems to have weird issues with drives of a certain size (I tried using a 256GB external SSD and have encountered a laptop that will not boot from it, and will only boot from USB storage if it's like 32GB or lower or something weird like that). But that appears to be a particular quirk of that laptop and nothing to do with Ventoy in particular.


Echoing the praise here. I just install this on all the USB storage devices I have. If I have ISOs on it, now I can boot. Otherwise I can use them as regular USB storage.


Never heard of it before. Don't really have a use for it. But still love the fact that HN frontpage brings these kinds of projects up sometimes.


Gonna echo everyone here and say this is a great tool, but I was sad to find out that it does not work with the Steam Deck Recovery image.


1. Even better as part of Easy2boot.

1. I have servers in the basement with a KVM switch and Idrac. I always keep a usb stick with Easy2boot and Ventoy on it plugged into my servers, and often my desktops, so I can fix stuff offline, or even totally wipe the OS. Plop a live CD (Sergei Strelec) on there, and you can copy isos on there from the network. It's awesome.


Love the tool, been using it for a long time. But one thing that it can't do is illumos based iso's.


It may have evolved since I last used it. But when I tried, it was a bit of a "bag of spanners", thrown together shell scripts which made some incorrect assumptions. Back then it didn't even make a bootable device. Everyone seems to rave about it now though, so may be worth another look.


I had an old version of ventoy and it worked flawlessly for a long time. Recently it had some problems with booting an EndeavourOS iso, I updated it and that fixed the issue. Updating was just downloading fresh installer and clicking a button. For me it has always been solid, the UX of just copying over the iso and still being able to store random crap is perfect.


As an alternative, I've been using an IODD 2541 for making virtual ISOs and USB sticks bootable. Put any SSD into the box, copy ISOs or other formats to the drive. Selection is from a small LCD panel on the front.

I'd say it's one of my most essential pieces of kit that I take with me.


Unsure about the model 2541 which seems overly complicated. I have been using an iODD 2531 for 10+ years for bare metal & physical boxes. It's a USB hardware based virtual optical media drive enclosure for a 2.5" SATA drive that just works. Also, iodd's website isn't reachable by me so I can't see if there have been any recent firmware updates.[0]

0. http://iodd.kr


Is source code available yet? I ask because I suggested using Ventoy at $WORK and the Security folks shot me down because it's apparently from an a$ian country so we wanna be able to convince ourselves it's not gonna end up just being an extremely flexible trojan...


Let me Google that for you.

https://github.com/ventoy/Ventoy

That was hard.


Can you put a Ventoy iso on it?


Also, look at iVentoy. It's not free but it's not expensive, and it is "Ventoy over PXE boot". It takes a bit to set up, but I have it running on a Linux box and I can boot any machine from any image.


I miss pxe. Feels like all of our tools got more complicated for managing servers but for very little gain. Pxe is one of those good simple tools that we need to get back to.


Beware that a related project, iventoy, is crippled commercial pseudo-FOSS.


What about FreeDOS?

FreeDOS with SBEmu is really nice for an instant DOS machine on real hardware:

https://github.com/crazii/SBEMU/releases


I'm sure it can do that too.


switched to using only one large pen drive with all my ISO with ventoy and never looked back. worked well even with windows.

there were some challenges, especiall with UEFI with some devices. but there are workarounds documented in the tool's website. it is like a one-time thing per device, but you do have to trust random keys off the internet.

it is well worth the hassle of extra keystrokes to get to the boot menu. i just wish there was a way to bypass grub menu for every iso where it applies.


I'm blown away by how easy this makes having a boot drive for multiple operating systems while also letting the thumb drive work normally as a data storage medium


Another plus is Ventoy can install Windows 11 without secure boot, TPM from an official MS ISO. Some Linux distros cannot install with those features enabled.


There are hardware disk enclosures that emulate an optical drive over USB and booting works on hardware level with "physical" optical drive.

But how ventoy achieve systems booting and detecting the iso programmatically? I know that initially, there seems to be grub2 reading usb file list and then it reads iso eltorito boot image and boots from it, but how exactly the OS itself know about the virtual drive? Is there an interface in uefi or bios that allow emulate optical drive, or some other standard is at play and operating systems just happens to support it? Window 10/11 pe / installer, for example, reports the iso in diskpart as virtual disk. Not an optical drive. Windows kernel actually mounts the iso somehow automatically.

Can someone point me on how this actually works, please.


I don't know the answer, but it's not required to emulate an optical drive.

Modern UEFI BIOSes can natively boot from USB sticks, they can save settings and screenshots to the USB stick (thus they are not mounted read-only).


grub2 has a builtin scripting language (very much like bash/bourne), which allows you to dynamically do all sorts of stuff.

I did a deep dive into grub2 years ago, and ended up creating my own sort-of-ventoy-like Swiss army knife, boot anything, grub config.

In some ways, you can treat grub2 as a mini os, with a scripting language.

So ... I'm sure that's how Ventoy does it (but I haven't really checked)


I've used similar tools like imageUSB and Rufus in the past. But it looks like Ventoy is better in every aspect. Excellent!


I have the Gandalf rescue ISO[0] on this, among many other ISOs I use incase I need to repair/rescue or install stuff. My Ventoy setup is a veritable 'Swiss army knife' for general IT related things. The Gandalf Windows preinstalled environment has all this bundled with it, if anyone's interested:

    Tools/Utilities included on this Windows PE:
    AoMei Partition Assistant: Partitioning solution
    WinRAR: Powerful archiver and archive manager
    7-Zip: Archiver and archive manager
    Defraggler: Disk Defragmenter
    MS Paint and Wordpad: Microsoft’s basic image and text editors
    Macrium Reflect: Backup and disk imaging solution
    CCleaner: System optimization, privacy and cleaning tool
    Media Player Classic: Classic Windows media player
    HWiNFO: Hardware information and diagnostic tool
    Snipping Tool: Screen capture application.
    Windows Defender: Microsoft’s excellent antivirus app
    TeamViewer: Remote control solution
    Double Drive: Driver backup application
    Winmerge: File comparison tool
    Opera: Web Browser, Fast, simple and safe way to get around on the web
    GetRight: Download manager
    Ntpwedit: Change or remove passwords for local system accounts
    Partition Wizard
    Virtual Keyboard
    Virtual Magnifying Glass
    DiskCryptor: Disk encryption application similar to Bitlocker
    Bitlocker: Microsoft’s disk encryption application
    Powershell: Powerful automation tool is both a shell and a scripting language
    UltraISO: Directly edit ISO files, make images from CD/DVD-ROM
    Unlocker: Unlocker helps delete locked files with error messages
    Gimagex: A graphical user interface for the ImageX tool
    SuperAntiSpyWare: Free Malware Remover
    Magic Jelly Bean Key Finder: A utility that retrieves your Product Keys
    HiJackThis: Spot home page hijackers and startup programs
    Ghost: The classic imaging tool
    Skype: Provides video chat and voice calls
    VNC Viewer: Remote Control Software
    Sysinternal Suite Troubleshooting Utilities
    VLC Media Player: Open-source cross-platform multimedia player
    IrfanView Image Viewer
    FastStone Image Viewer: User-friendly image browser, converter and editor
    Mozilla FireFox: Another great browser
    Easy BCD: Boot management tool and bcd editor
    Snipping Tool: Take snapshots
    Drive Snapshot: Disk imaging solution
    MyLan Viewer: Network/IP Scanner
    Rufus: Utility to format and create bootable USB flash drives
    Wise Data Recovery: Recovery program to get back deleted photos, documents, etc.
    WinToolkit: Customize Your Windows Installation
    ImgBurn: CD burning tool
    Treesize: Quickly Scan Directory Sizes and Find Space Hogs
    Klite Codec Pack Basic
    RecoverKeys: Retrieves your Product Keys
    Remote Desktop: Latest version of Windows remote desktop
    DismGui: Dism with a graphical interface
    Klite Codec Pack Basic
    Google Chrome: Great Browser
    Powershell: Automation scripting
[0] https://www.fcportables.com/gandalf-boot-iso/


The only thing that I carry all day besides my laptop is a flash disk with ventoy in it.


This piece of software literally solves all of my problems. Great tool!


Filled up even a 256GB drive now will all the ISOs i can put on it.


Very useful and neat. Beats using Rufus to image something.


A life saver for hopping




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: