Instead of reformatting USB for each new image, Ventoy lets you simply copy ISO files like regular files. At boot, you get a menu with all available images.

Benefits:

  • โœ… No need to rewrite USB for each image
  • โœ… Support for Windows, Linux, utilities - all on one drive
  • โœ… Regular files accessible from any OS
  • โœ… Flexible configuration via JSON

๐Ÿ—‚ Correct USB Structure

[First USB partition - exFAT/NTFS]
โ”œโ”€โ”€ /ventoy/                    # โ† Must be here!
โ”‚   โ”œโ”€โ”€ ventoy.json            # Main config
โ”‚   โ”œโ”€โ”€ revi/                  # Windows auto-install
โ”‚   โ”‚   โ””โ”€โ”€ autounattend.xml
โ”‚   โ””โ”€โ”€ theme/                 # Custom theme
โ”‚       โ””โ”€โ”€ distro/theme.txt
โ”‚
โ”œโ”€โ”€ BACKUP/                    # Working files
โ”œโ”€โ”€ LINUX/                     # Linux ISOs
โ”‚   โ”œโ”€โ”€ Archlinux 2025.12.01.iso
โ”‚   โ”œโ”€โ”€ Debian 13.2.0.iso
โ”‚   โ””โ”€โ”€ NixOS 25.11.1734.iso
โ”œโ”€โ”€ WINDOWS/                   # Windows ISOs
โ”‚   โ”œโ”€โ”€ Windows 10 22H2.iso
โ”‚   โ”œโ”€โ”€ Windows 10 Enterprise LTSC 2021.iso
โ”‚   โ””โ”€โ”€ Windows 11 25H2.iso
โ”œโ”€โ”€ ReviSetup/                 # Post-install scripts
โ”‚   โ””โ”€โ”€ setup.cmd
โ””โ”€โ”€ UTILS/                     # Utilities
    โ”œโ”€โ”€ gparted-live.iso
    โ””โ”€โ”€ memtest86+.iso

โš ๏ธ Critical: /ventoy/ must be on the first partition (where ISOs are), NOT in root!


โš™๏ธ Basic Configuration: ventoy.json

File must be at /ventoy/ventoy.json, UTF-8 encoding.

Minimal Example

{
  "control": [
    { "VTOY_DEFAULT_MENU_MODE": "1" },
    { "VTOY_FILT_DOT_UNDERSCORE_FILE": "1" }
  ],
  "theme": {
    "file": "/ventoy/theme/distro/theme.txt",
    "gfxmode": "1920x1080",
    "resolution_fit": "1"
  }
}
ParameterDescription
VTOY_DEFAULT_MENU_MODEDefault menu mode
VTOY_FILT_DOT_UNDERSCORE_FILEHide files starting with . and _
theme.filePath to GRUB theme file
gfxmodeMenu resolution
resolution_fitAuto-fit to screen

๐ŸŽจ Customization: Menu Themes

Where to Get Themes

  1. distro-grub-themes - collection of ready-made themes
  2. Gnome-look.org - themes tagged ventoy
  3. Create your own - follow Ventoy documentation

Installing a Theme

# Clone theme
cd /mnt/ventoy/ventoy/theme
git clone https://github.com/AdisonCavani/distro-grub-themes.git distro

# Or download from Gnome-look
wget https://www.gnome-look.org/.../theme.tar.gz
tar xzf theme.tar.gz

In ventoy.json specify path:

{
  "theme": {
    "file": "/ventoy/theme/distro/theme.txt",
    "resolution_fit": "1"
  }
}

๐ŸชŸ Windows Auto-Install

Structure for Auto-Install

/ventoy/
โ””โ”€โ”€ revi/
    โ””โ”€โ”€ autounattend.xml     # Windows Setup็š„ answers

/ReviSetup/
โ””โ”€โ”€ setup.cmd                # Post-install

Example ventoy.json for Auto-Install

{
  "auto_install": [
    {
      "parent": "/WINDOWS",
      "template": ["/ventoy/revi/autounattend.xml"],
      "autosel": 1
    }
  ]
}
ParameterValue
parentFolder with Windows images
templatePath to autounattend.xml
autoselAuto-select template

What autounattend.xml Does

  • Skips Microsoft account creation
  • Disables telemetry
  • Applies privacy settings
  • Runs setup.cmd after install

๐Ÿ’ก Ready-made configs: meetrevision/ventoy-conf


๐Ÿ›  Post-Install: setup.cmd

Script runs automatically after Windows installation.

Example Actions

:: Disable driver updates
reg add "HKLM\Software\Policies\Microsoft\Windows\DriverSearching" /v "SearchOrderConfig" /t REG_DWORD /d 0 /f

:: Pause updates until 2038
reg add "HKLM\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" /v "PauseUpdatesExpiryTime" /t REG_SZ /d "2038-01-19T03:14:07Z" /f

:: Disable telemetry
reg add "HKLM\Software\Policies\Microsoft\Windows\DataCollection" /v "AllowTelemetry" /t REG_DWORD /d 0 /f

:: Prevent Teams auto-install
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Chat" /v "ChatIcon" /t REG_DWORD /d 2 /f

๐Ÿ—‚ Checklist: Creating USB

  • Installed Ventoy via Ventoy2Disk.sh / .exe
  • Created /ventoy/ on first partition
  • Placed ventoy.json in /ventoy/ (UTF-8)
  • Copied images to logical folders (LINUX/, WINDOWS/)
  • (Optional) Installed menu theme
  • (Optional) Configured Windows auto-install
  • Verified JSON syntax via json.cn
  • Tested boot

๐Ÿ”ง Useful Commands

# Check ventoy.json syntax
cat /ventoy/ventoy.json | jq .

# In Ventoy menu: F5 - show ventoy.json content

# Recreate Ventoy partition (data will be lost!)
sudo ./Ventoy2Disk.sh -i /dev/sdX

๐Ÿ“š Additional Features

Ventoy supports many plugins and extensions:

  • Persistence - save data between Live system reboots
  • Memdisk - boot images into RAM
  • Auto install - OS installation automation
  • Custom menu - custom menu items
  • Injection - inject drivers/files into images

๐Ÿ”— Documentation: ventoy.net


โš ๏ธ Common Issues

SymptomSolution
ventoy.json not appliedCheck path: strictly /ventoy/ventoy.json
Theme not loadingCheck encoding (UTF-8) and path in config
Auto-install not workingEnsure parent points to correct folder
JSON parse errorCheck syntax via online validator

๐Ÿ” Security

  • โœ… exFAT - accessible from any OS (but unencrypted)
  • ๐Ÿ” For sensitive files: VeraCrypt container
  • โœ… autounattend.xml and setup.cmd - plain text, no passwords