Skip to content

How To Create A Multiboot USB With Ventoy Using Linux

These example instructions will show how you can create a multiboot USB flash drive using Ventoy that will allow the ability to install Microsoft Windows 10 or Windows 11 and Arch Linux by using a Linux terminal and desired web browser.

Environment

Tested using the following.

  • Arch Linux x86_64
  • Debian v12 (bookworm)
  • Fish v3.6.4
  • GNU bash v5.2.21
  • Ventoy v1.0.97
  • Windows 10
  • Windows 11

Assumptions

  • General understanding of using a Linux terminal or CLI (command-line interface)
  • Have a USB flash drive that can be cleared of data
  • Steps prefixed with a "$" (dollar sign) represents the CLI (command-line interface) prompt
  • Steps prefixed with a "#" (number sign) represents the CLI prompt with elevated user permissions (e.g. root)
  • The text after the "$" or "#" is to be entered at the CLI

Preparation

  1. Download Microsoft Windows.

    1. Browse to Windows 10 or Windows 11 download page.

    2. Select the applicable edition.

      • Windows 10 (multi-edition ISO)
      • Windows 11 (multi-edition ISO)
    3. Click the "Download" or "Confirm" button.

    4. Select the product language.
    5. Click the "Confirm" button.
    6. Download the ISO.

      Click on the applicable download button, "32-bit Download" or "64-bit Download".

    7. Click on the "Verify your download".

      Make note of the SHA256 hash under for the applicable downloaded ISO file in order to verify the data integrity and authenticity of the downloaded file.

  2. Download Arch Linux.

    1. Browse to Arch Linux - Downloads page.
    2. Select an applicable HTTP Direct Download mirror.

      Generally it is best to select a mirror that is closest to where you are located in the world.

    3. Download the ISO (e.g. archlinux-2024.02.01-x86_64.iso).

    4. Download one of the file integrity checksums.

      • b2susm.txt
      • sha256sums.txt
  3. Verify Windows Download.

    $ sha256sum ~/Downloads/Win11_23H2_English_x64v2.iso
    
    36DE5ECB7A0DAA58DCE68C03B9465A543ED0F5498AA8AE60AB45FB7C8C4AE402  Win11_23H2_English_x64v2.iso
    

    Note

    Visually compare the outputted hash above to the hash located on the download page under "Verify your download". If hashes match then the download was successful.

  4. Verify Arch Linux Download.

    Use one of the following methods to verify data integrity.

    $ b2sum -c b2sums.txt
    
    archlinux-2024.02.01-x86_64.iso: OK
    b2sum: archlinux-x86_64.iso: No such file or directory
    archlinux-x86_64.iso: FAILED open or read
    b2sum: archlinux-bootstrap-2024.02.01-x86_64.tar.gz: No such file or directory
    archlinux-bootstrap-2024.02.01-x86_64.tar.gz: FAILED open or read
    b2sum: archlinux-bootstrap-x86_64.tar.gz: No such file or directory
    archlinux-bootstrap-x86_64.tar.gz: FAILED open or read
    b2sum: WARNING: 3 listed files could not be read
    

    $ sha256sum -c ~/Downloads/sha256sum.txt
    
    archlinux-2024.02.01-x86_64.iso: OK
    sha256sum: archlinux-x86_64.iso: No such file or directory
    archlinux-x86_64.iso: FAILED open or read
    sha256sum: archlinux-bootstrap-2024.02.01-x86_64.tar.gz: No such file or directory
    archlinux-bootstrap-2024.02.01-x86_64.tar.gz: FAILED open or read
    sha256sum: archlinux-bootstrap-x86_64.tar.gz: No such file or directory
    archlinux-bootstrap-x86_64.tar.gz: FAILED open or read
    sha256sum: WARNING: 3 listed files could not be read
    

    Note

    A successful download will return "archlinux-2024.02.01-x86_64.iso: OK". The errors shown in the example are for the files that were not downloaded.

Instructions

Arch Linux

  1. Install Ventoy.

    $ pikaur -Sy ventoy-bin
    

    Note

    AUR helper required per these instructions.

  2. Plug-in the USB flash drive.

  3. Locate device name of USB flash drive using one of the following commands.

    $ mount
    
    ...
    /dev/sde1 on /run/media/adam/4359-41A0 type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)
    

    $ lsblk
    
    NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
    ...
    sde       8:64   0  14.9G  0 disk
    └─sde1    8:65   0  14.9G  0 part /run/media/adam/4359-41A0
    ...
    

    Note

    In these instructions the USB flash drive device name is assumed to be "/dev/sde".

  4. Install Ventoy to USB.

    # ventoy -i /dev/sde
    
    **********************************************
        Ventoy: 1.0.97  x86_64
        longpanda admin@ventoy.net
        https://www.ventoy.net
    **********************************************
    
    Disk : /dev/sde
    Model: SanDisk Cruzer Glide 3.0 (scsi)
    Size : 57 GB
    Style: MBR
    
    
    Attention:
    You will install Ventoy to /dev/sde.
    All the data on the disk /dev/sde will be lost!!!
    
    Continue? (y/n) y
    

  5. Continue with installation.
    All the data on the disk /dev/sde will be lost!!!
    Double-check. Continue? (y/n) y
    
    Create partitions on /dev/sde by parted in MBR style ...
    Done
    Wait for partitions ...
    partition exist OK
    create efi fat fs /dev/sde2 ...
    mkfs.fat 4.2 (2021-01-31)
    success
    Wait for partitions ...
    Wait for /dev/sde1//dev/sde2 ...
    /dev/sde1 exist OK
    /dev/sde2 exist OK
    partition exist OK
    Format partition 1 /dev/sde1 ...
    mkexfatfs 1.3.0
    Creating... done.
    Flushing... done.
    File system created successfully.
    mkexfatfs success
    writing data to disk ...
    sync data ...
    esp partition processing ...
    
    Install Ventoy to /dev/sde successfully finished.
    
  6. Unplug and then plug-in the USB flash drive.
  7. Move ISOs to the USB flash drive.

    $ mv ~/Downloads/Win11_23H2_English_x64v2.iso /run/media/adam/Ventoy/
    $ mv ~/Downloads/archlinux-2024.02.01-x86_64.iso /run/media/adam/Ventoy/
    

    Note

    The destination of the USB flash drive mount point "/run/media/adam/Ventoy/" may vary.

Debian

  1. Download Ventoy (e.g. ventoy-1.0.97-linux.tar.gz).
  2. Download the file integrity checksums, sha256.txt.
  3. Verify Ventoy download.

    $ sha256sum -c ~/Downloads/sha256.txt
    
    ventoy-1.0.97-linux.tar.gz: OK
    sha256sum: ventoy-1.0.97-livecd.iso: No such file or directory
    ventoy-1.0.97-livecd.iso: FAILED open or read
    sha256sum: ventoy-1.0.97-windows.zip: No such file or directory
    ventoy-1.0.97-windows.zip: FAILED open or read
    sha256sum: WARNING: 2 listed files could not be read
    

    Note

    A successful download will return "ventoy-1.0.97-linux.tar.gz: OK". The errors shown in the example are for the files that were not downloaded.

  4. Decompress downloaded archive.

    $ tar -zxvf ventoy-1.0.97-linux.tar.gz
    
    ...
    ./ventoy-1.0.97/plugin/ventoy/theme/menu_w.png
    ./ventoy-1.0.97/plugin/ventoy/ventoy_grub.cfg
    ./ventoy-1.0.97/plugin/ventoy/ventoy.json
    

  5. Change directory.

    $ cd ventoy-1.0.97/
    

  6. Plug-in the USB flash drive.
  7. Locate device name of USB flash drive using one of the following commands.

    $ mount
    
    ...
    /dev/sde1 on /run/media/adam/4359-41A0 type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)
    

    $ lsblk
    
    NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
    ...
    sde       8:64   0  14.9G  0 disk
    └─sde1    8:65   0  14.9G  0 part /run/media/adam/4359-41A0
    ...
    

    Note

    In these instructions the USB flash drive device name is assumed to be "/dev/sde".

  8. Install Ventoy to USB.

    # ./Ventoy2Disk.sh -i /dev/sde
    
    **********************************************
        Ventoy: 1.0.97  x86_64
        longpanda admin@ventoy.net
        https://www.ventoy.net
    **********************************************
    
    Disk : /dev/sde
    Model: SanDisk Cruzer Glide 3.0 (scsi)
    Size : 57 GB
    Style: MBR
    
    Attention:
    You will install Ventoy to /dev/sde.
    All the data on the disk /dev/sde will be lost!!!
    
    Continue? (y/n) y
    

  9. Continue with Installation.
    All the data on the disk /dev/sde will be lost!!!
    Double-check. Continue? (y/n) y
    
    Create partitions on /dev/sde by parted in MBR style ...
    Done
    Wait for partitions ...
    partition exist OK
    create efi fat fs /dev/sde2 ...
    mkfs.fat 4.2 (2021-01-31)
    success
    Wait for partitions ...
    Wait for /dev/sde1//dev/sde2 ...
    /dev/sde1 exist OK
    /dev/sde2 exist OK
    partition exist OK
    Format partition 1 /dev/sde1 ...
    mkexfatfs 1.3.0
    Creating... done.
    Flushing... done.
    File system created successfully.
    mkexfatfs success
    writing data to disk ...
    sync data ...
    esp partition processing ...
    
    Install Ventoy to /dev/sde successfully finished.
    
  10. Unplug and then plug-in the USB flash drive.
  11. Move ISOs to the USB flash drive.

    $ mv ~/Downloads/Win11_23H2_English_x64v2.iso /run/media/adam/Ventoy/
    $ mv ~/Downloads/archlinux-2024.02.01-x86_64.iso /run/media/adam/Ventoy/
    

    Note

    The destination of the USB flash drive mount point "/run/media/adam/Ventoy/" may vary.