Skip to content

rngauf/ventoy-multiboot-toolkit

Repository files navigation

Ventoy Multiboot Toolkit

PowerShell automation and reference docs for building a polished Ventoy multiboot USB drive — the kind you carry on a keychain for IT/repair/recovery work.

This isn't a replacement for Ventoy. It's the layer on top of Ventoy that:

  1. Tells you which persistence label each Linux distro requires (this is the most common silent failure in multiboot builds — wrong label, persistence gets discarded)
  2. Builds a categorized USB layout from a curated ISO source directory
  3. Merges your own persistence-array configuration into ventoy.json without breaking the rest of the file
  4. Verifies ISOs against published SHA256 hashes

The most important file

PERSISTENCE_LABELS.md — the label-to-distro map. If you're only here for that, you can leave now. The labels are:

Label Distros
casper-rw Ubuntu, Mint, antiX, MX (Ubuntu-derived)
persistence Kali, Parrot, Debian Live (+ persistence.conf inside!)
MX-Persist MX Linux (Debian-derived)
vtoycow BlackArch, Manjaro, EndeavourOS

Recommended USB layout

H:\
├── ISO\
│   ├── Recovery\        ← Hiren's, SystemRescue, GParted, CloneZilla, ShredOS, RescueZilla, Memtest86+
│   ├── AV\              ← Dr.Web LiveDisk, Kaspersky Rescue
│   ├── Privacy\         ← Tails OS
│   ├── PenTest\         ← Kali Live, Parrot Security, BlackArch Slim
│   ├── Desktop\         ← Linux Mint, MX Linux, Ubuntu, Manjaro GNOME
│   ├── Lightweight\     ← antiX (rescue old hardware)
│   └── Windows\         ← Windows 11/10 install (build via MCT)
├── persistence\         ← *.dat files for distros with persistence
├── Files\
│   ├── Tools\           ← Portable Windows tools (Sysinternals, CPU-Z, etc.)
│   └── Scripts\         ← Persistence helper scripts
└── ventoy\
    └── ventoy.json      ← The persistence array + theme config

Scripts

Script Purpose
Build-VentoyUSB.ps1 Copies your curated ISO library into the categorized layout above
Merge-VentoyJson.ps1 Replaces the persistence array in ventoy.json. UTF-8 without BOM (Ventoy requirement).
Get-WindowsISO.ps1 Helper for downloading Windows ISOs via Fido / Media Creation Tool
format_usb.ps1 Quick FAT32/exFAT prep before installing Ventoy
check_isos.ps1 Hashes ISOs and compares against known-good SHA256 list

Quick start

# 1. Install Ventoy on the USB (one-time)
# Download from https://www.ventoy.net and run Ventoy2Disk.exe, install to your drive.

# 2. Lay out source ISOs by category in a folder
mkdir D:\ISOs\{Recovery,AV,Privacy,PenTest,Desktop,Lightweight,Windows}
# ...drop your ISOs into the right subfolder...

# 3. Copy onto USB
.\Build-VentoyUSB.ps1 -SourceRoot D:\ISOs -ToolsRoot D:\PortableTools -Target H:

# 4. Create persistence .dat files (use Ventoy's CreatePersistentImg.cmd
#    on Windows or .sh on Linux — see PERSISTENCE_LABELS.md for label per distro)

# 5. Wire persistence into ventoy.json
.\Merge-VentoyJson.ps1 -BasePath H:\ventoy\ventoy.json -PersistenceMapPath .\persistence-map.example.json

Suggested portable tools to include in Files\Tools\

  • Sysinternals Suite, Process Hacker, Autoruns
  • CPU-Z, GPU-Z, HWiNFO64
  • CrystalDiskInfo, h2testw, Victoria
  • TreeSize Free, WizTree, BleachBit portable
  • Rufus, Ventoy2Disk, balenaEtcher portable
  • 7-Zip portable, Notepad++ portable
  • CyberChef (extracted ZIP)
  • Nmap, Wireshark portable
  • Cinebench, Heaven, Valley (benchmarks)

License

MIT

About

PowerShell automation for Ventoy multiboot USB builds plus the persistence-label-per-distro reference

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors