Pages

Wednesday, 30 June 2021

Ventoy

A new bootable USB solution.

https://www.ventoy.net/

   

Ventoy is an open source tool to create bootable USB drive for ISO/WIM/IMG/VHD(x)/EFI files.
With ventoy, you don't need to format the disk over and over, you just need to copy the image files to the USB drive and boot it. You can copy many image files at a time and ventoy will give you a boot menu to select them.
x86 Legacy BIOS, IA32 UEFI, x86_64 UEFI, ARM64 UEFI and MIPS64EL UEFI are supported in the same way.
Both MBR and GPT partition style are supported in the same way.
Most type of OS supported(Windows/WinPE/Linux/Unix/Vmware/Xen...)
700+ ISO files are tested. 90%+ distros in distrowatch.com supported.

Features

  • 100% open source
  • Simple to use
  • Fast (limited only by the speed of copying iso file)
  • Can be installed in USB/Local Disk/SSD/NVMe/SD Card
  • Directly boot from ISO/WIM/IMG/VHD(x)/EFI files, no extraction needed
  • No need to be continuous in disk for ISO/IMG files
  • MBR and GPT partition style supported (1.0.15+)
  • x86 Legacy BIOS, IA32 UEFI, x86_64 UEFI, ARM64 UEFI, MIPS64EL UEFI supported
  • IA32/x86_64 UEFI Secure Boot supported (1.0.07+)
  • Persistence supported (1.0.11+)
  • Windows auto installation supported (1.0.09+)
  • RHEL7/8/CentOS/7/8/SUSE/Ubuntu Server/Debian ... auto installation supported (1.0.09+)
  • FAT32/exFAT/NTFS/UDF/XFS/Ext2(3)(4) supported for main partition
  • ISO files larger than 4GB supported
  • Native boot menu style for Legacy & UEFI
  • Most type of OS supported, 700+ iso files tested
  • Linux vDisk boot supported
  • Not only boot but also complete installation process
  • Menu dynamically switchable between List/TreeView mode
  • "Ventoy Compatible" concept
  • Plugin Framework
  • Injection files to runtime environment
  • Boot configuration file dynamically replacement
  • Highly customizable theme and menu
  • USB drive write-protected support
  • USB normal use unaffected
  • Data nondestructive during version upgrade
  • No need to update Ventoy when a new distro is released

avatar

Installation Instructions

See https://www.ventoy.net/en/doc_start.html for detail

Compile Instructions

Please refer to BuildVentoyFromSource.txt

Document

TitleLink
Install & Updatehttps://www.ventoy.net/en/doc_start.html
Secure Boothttps://www.ventoy.net/en/doc_secure.html
Customize Themehttps://www.ventoy.net/en/plugin_theme.html
Global Controlhttps://www.ventoy.net/en/plugin_control.html
Image Listhttps://www.ventoy.net/en/plugin_imagelist.html
Auto Installationhttps://www.ventoy.net/en/plugin_autoinstall.html
Injection Pluginhttps://www.ventoy.net/en/plugin_injection.html
Persistence Supporthttps://www.ventoy.net/en/plugin_persistence.html
Boot WIM filehttps://www.ventoy.net/en/plugin_wimboot.html
Windows VHD Boothttps://www.ventoy.net/en/plugin_vhdboot.html
Linux vDisk Boothttps://www.ventoy.net/en/plugin_vtoyboot.html
DUD Pluginhttps://www.ventoy.net/en/plugin_dud.html
Password Pluginhttps://www.ventoy.net/en/plugin_password.html
Conf Replace Pluginhttps://www.ventoy.net/en/plugin_bootconf_replace.html
Menu Classhttps://www.ventoy.net/en/plugin_menuclass.html
Menu Aliashttps://www.ventoy.net/en/plugin_menualias.html
Menu Extensionhttps://www.ventoy.net/en/plugin_grubmenu.html
Memdisk Modehttps://www.ventoy.net/en/doc_memdisk.html
TreeView Modehttps://www.ventoy.net/en/doc_treeview.html
Disk Layout MBRhttps://www.ventoy.net/en/doc_disk_layout.html
Disk Layout GPThttps://www.ventoy.net/en/doc_disk_layout_gpt.html
Search Configurationhttps://www.ventoy.net/en/doc_search_path.html

FAQ

See https://www.ventoy.net/en/faq.html for detail

Forum

https://forums.ventoy.net


from https://github.com/ventoy/Ventoy

-----

Ventoy, 最好用的U盘启动盘制作工具!

简单来说,Ventoy是一个制作可启动U盘的开源工具。
有了Ventoy你就无需反复地格式化U盘,你只需要把 ISO/WIM/IMG/VHD(x)/EFI 等类型的文件拷贝到U盘里面就可以启动了,无需其他操作。
你可以一次性拷贝很多个不同类型的镜像文件,Ventoy 会在启动时显示一个菜单来供你进行选择.
Ventoy 安装之后,同一个U盘可以同时支持 x86 Legacy BIOS、IA32 UEFI、x86_64 UEFI、ARM64 UEFI 和 MIPS64EL UEFI 模式。
Ventoy 支持大部分常见类型的操作系统 (Windows/WinPE/Linux/Unix/VMware/Xen …)
目前已经测试了各类超过 720+ 个镜像文件(列表)。 支持 distrowatch.com 网站上收录的 90%+ 的操作系统(列表)。

Ventoy 特点
100% 开源 (许可证)
使用简单 (使用说明)
快速 (拷贝文件有多快就有多快)
可以安装在 U盘/本地硬盘/SSD/NVMe/SD卡等设备上
直接从 ISO/WIM/IMG/VHD(x)/EFI 文件启动,无需解开
ISO/WIM/IMG/VHD(x)/EFI 文件在磁盘上无需连续
支持MBR和GPT分区格式
同时支持 x86 Legacy BIOS 以及 IA32/x86_64/ARM64/MIPS64 UEFI
UEFI 模式支持安全启动 (Secure Boot) 说明
支持数据持久化 说明
支持Windows系统的自动安装部署 说明
支持 RHEL7/8/CentOS7/8/SUSE/Ubuntu Server/Debian 等Linux系统的自动安装部署 说明
镜像分区支持 FAT32/exFAT/NTFS/UDF/XFS/Ext2(3)(4) 文件系统
支持超过4GB的ISO文件
保留ISO原始的启动菜单风格(Legacy & UEFI)
支持大部分常见操作系统, 已测试720+ 个ISO文件
不仅仅是启动,而是完整的安装过程
菜单可以在列表模式和目录树模式之间实时、动态切换 说明
提出 “Ventoy Compatible” 概念
支持插件扩展
Linux vDisk(vhd/vdi/raw…) 启动解决方案
支持向运行环境中插入文件
动态替换ISO文件中的原始启动配置文件
高度可定制化的主题风格和菜单
启动过程中支持U盘设置写保护
不影响U盘日常普通使用
版本升级时数据不会丢失
无需跟随操作系统升级而升级Ventoy

-----------------------------------------


制作可启动U盘的开源工具-Ventoy

Ventoy是一个制作可启动U盘的开源工具。遵守GPL开源协议。用户只需要把ISO/WIM/IMG/EFI文件拷贝到U盘里面,无需反复地格式化U盘,即可自启动。 如果拷贝很多个不同类型的ISO文件,在启动时Ventoy会显示一个菜单来选择。 无差异支持Legacy BIOS和UEFI模式。支持大部分常见操作系统,如Windows/WinPE/Linux/Unix/VMware/Xen 等。

特性:

    快速 拷贝文件,使用简单
    直接从 ISO/WIM/IMG/EFI 文件启动,无需解压缩
    无差异支持Legacy + UEFI 模式
    UEFI 模式支持安全启动 (Secure Boot)
    支持持久化
    支持直接启动WIM文件(Legacy + UEFI)
    支持MBR和GPT分区格式
    支持自动安装部署
    支持超过4GB的ISO文件
    保留ISO原始的启动菜单风格(Legacy & UEFI)
    支持大部分常见操作系统, 已测试550+ 个ISO文件
    不仅仅是启动,而是完整的安装过程
    ISO文件支持列表模式或目录树模式显示
    支持插件扩展
    启动过程中支持U盘设置写保护
    不影响U盘日常普通使用
    版本升级时数据不会丢失
    无需跟随操作系统升级而升级Ventoy

-------------------------------------------------------------------

U盘启动工具Ventoy v1.0.29发布

Ventoy是一个制作可启动U盘的开源工具。有了Ventoy你就无需反复地格式化U盘,你只需要把ISO文件拷贝到U盘里面就可以启动了,无需其他操作。 你可以一次性拷贝很多个不同类型的ISO文件,在启动时Ventoy会显示一个菜单来选择。 无差异支持Legacy BIOS和UEFI模式。目前已经测试了各类超过200+ 个ISO文件,

从相关文档中可以知道,Ventoy在启动时会基于ISO文件创建一个虚拟设备然后启动它。 但是这个虚拟设备仅仅是BIOS层面的(Legacy或者UEFI)。大多数情况下它只在启动阶段存在。 绝大多数现代操作系统的内核在启动之后都是使用它们自身的驱动来访问硬件,因此这个虚拟设备对于内核来说是不可见的。 一般情况下,ISO里面的系统起来之后会遍历所有的硬件设备(CDROM/USB/HD …) 去寻找安装源。 但是在Ventoy启动的环境下是找不到的,因为没有这样一个实际的安装介质,是虚拟的设备嘛。但是系统内核不知道这个情况,它们不知道当前是 Ventoy使用虚拟设备引导起来的,并不是传统的物理光驱或者U盘引导起来的。所以,如果不做特殊处理的话,大部分ISO文件启动以后就会报找不到安装源的错误而停止。 因此,Ventoy必须做很多hook的工作,帮助内核找到、挂载安装源。其实就是告诉内核,当前是Ventoy从一个虚拟的设备引导起来的,你的安装源并不在常规的介质中,而是在XX硬盘的XXX.iso文件, 你把它挂载起来当做安装源就可以啦。。。。。 但是这个hook工作是非常枯燥而且麻烦的,因为系统种类实在太多而且有各种各样的特殊情况。

Ventoy Compatible 概念

实际上,Ventoy在启动之前,把相关的信息都保存在了运行时内存中(保留内存段),同时还提供了一个工具可以在系统下获取这些信息。 这样,操作系统调用一下这个工具就可以知道,当前是Ventoy环境启动的,而且还能详细知道是基于哪个磁盘的哪个ISO文件启动而来的。 这样,系统就可以直接去找到对应的ISO文件,挂载起来作为安装源就可以了。不需要再用常规的方式去寻找。 当然,如果是常规方式启动起来的,系统下调用这个工具是获取不到任何数据的,这种情况下就按照常规的启动步骤往下走就可以了。

因此,如果ISO里面的系统集成了这个工具,并且做了上述处理的话,对于Ventoy就很简单了,只需要做好这个虚拟设备就可以了,不用再费力做那些hook工作了。 另一方面,还有一个问题就是,就算ISO里面的系统做了这些工作,Ventoy怎么知道呢?因此Ventoy提供了几种方式让ISO文件来标识自己。

我把集成了这个工具并且做了上述处理的操作系统或者ISO文件称之为 “Ventoy Compatible” 的。

Ventoy 特点:

    100% 开源 (许可证)

    使用简单 (使用说明)

    快速 (拷贝文件有多快就有多快)

    直接从ISO文件启动,无需解开

    无差异支持Legacy + UEFI 模式

    UEFI 模式支持安全启动 (Secure Boot) (1.0.07版本开始) 说明

    支持超过4GB的ISO文件

    保留ISO原始的启动菜单风格(Legacy & UEFI)

    支持大部分常见操作系统, 已测试200+ 个ISO文件

    不仅仅是启动,而是完整的安装过程

    ISO文件支持列表模式或目录树模式显示 说明

    提出 “Ventoy Compatible” 概念

    支持插件扩展

    支持自动安装部署(1.0.09+) 说明

    启动过程中支持U盘设置写保护

    不影响U盘日常普通使用

    版本升级时数据不会丢失

    无需跟随操作系统升级而升级Ventoy

使用说明:

    Windows系统安装 Ventoy

下载安装包,例如 ventoy-1.0.00-windows.zip 然后解压开。

直接执行 Ventoy2Disk.exe 如下图所示,选择U盘设备,然后点击 Install 按钮即可。


安装包内 Ventoy 版本:当前安装包中的Ventoy版本号

设备内部 Ventoy 版本:U盘中已安装的Ventoy版本号,如果为空则表示未安装

安装:把Ventoy安装到U盘,只有第一次的时候需要,其他情况就只需要Update升级即可

升级:升级U盘中的Ventoy版本,升级不会影响ISO文件

    Linux系统安装 Ventoy

下载安装包,例如 ventoy-1.0.00-linux.tar.gz, 然后解压开.

在终端以root权限执行 sh Ventoy2Disk.sh -i /dev/XXX   其中 /dev/XXX 是U盘对应的设备名,比如 /dev/sdb。

Ventoy2Disk.sh  选项  /dev/XXX

  选项含义:

    -i   安装ventoy到磁盘中 (如果对应磁盘已经安装了ventoy则会返回失败)

    -I   强制安装ventoy到磁盘中,(不管原来有没有安装过)

    -u   升级磁盘中的ventoy版本

针对Linux系统有几点需要特殊说明一下:

1. 执行脚本时需要有root权限, 对一些系统比如ubuntu/deepin 执行的时候需要在前面加 sudo 比如 sudo sh Ventoy2Disk.sh -i /dev/sdb

2. 必须cd到ventoy解压之后的目录下执行此脚本

3. 请务必输入正确的设备名称,ventoy不会检查你输入的设备是U盘还是本地硬盘,如果输错了有可能会把你的系统盘格式化掉哦!

请注意:选择安装的时候,U盘将会被格式化,里面所有的数据都会丢失!

你只需要安装一次Ventoy即可,剩下的就只需要把各种ISO文件拷贝到U盘中就可以了.

你也可以把它当成普通U盘使用,保存普通文件,不会影响Ventoy的功能。

    拷贝ISO文件

安装完成之后,U盘会被分成两个区。第一个分区将会被格式化为exFAT文件系统,你只需要把ISO文件拷贝到这里面即可。你可以把ISO文件放在任意目录以及子目录下。 Ventoy会遍历所有的目录和子目录,找出所有的ISO文件,并按照字母排序之后显示在菜单中。

请注意:ISO文件的全路径中(包括目录、子目录和文件名)不能包含中文或者空格。

    升级 Ventoy

如果Ventoy发布了新版本之后,你可以点击 Update 按钮进行升级,或者Linux系统中使用 -u 选项进行升级。

需要说明的是,升级操作是安全的,不会影响原有的ISO文件

更新日志

    2021/03/16 --- 1.0.38 发布

    优化 VentoyWebDeepin.sh 脚本

    修复了1个 image_blacklist 插件的BUG

    在全局控制插件中增加了 VTOY_FILE_FLT_XXX 选项。说明

    更新 languages.ini

    新增 ISO 支持 (累计 650+)

        openEuler-20.03-LTS-SP1-x86_64-dvd.iso (Legacy + UEFI)

        FreeBSD-13.0-RC2-amd64-disc1.iso (Legacy + UEFI)

        tails-amd64-4.16.img (Legacy + UEFI)

    2021/03/06 --- 1.0.37 发布

    实验性支持龙芯 MIPS UEFI 平台 说明

    为 Deepin/UOS 系统增加了一个专门的 VentoyWebDeepin.sh脚本。说明

    全局控制插件中新增 VTOY_MAX_SEARCH_LEVEL 选项。说明

    改进了 UEFI 模式下的启动兼容性。

    移除了 UEFI 模式下启动失败时打印的 ASSERT 信息。

    脚本中使用 uname -m 来检测当前系统的体系结构 (PR #774)

    修改了Ventoy2Disk.exe中分区配置对话框宽度以适应个别文字较长的语言。(issue #769)

    languages.ini 文件更新

    说明文档: 控制 Ventoy 搜索路径方法总结

下载地址:

    https://github.com/ventoy/Ventoy/releases

    https://gitee.com/longpanda/Ventoy/releases/

---------------------------------------------------------

 U盘启动工具ventoy-1.0.91发布

Ventoy是一个制作可启动U盘的开源工具。有了Ventoy你就无需反复地格式化U盘,你只需要把ISO文件拷贝到U盘里面就可以启动了,无需其他操作。 你可以一次性拷贝很多个不同类型的ISO文件,在启动时Ventoy会显示一个菜单来选择。 无差异支持Legacy BIOS和UEFI模式。目前已经测试了各类超过200+ 个ISO文件,
背景介绍

从相关文档中可以知道,Ventoy在启动时会基于ISO文件创建一个虚拟设备然后启动它。 但是这个虚拟设备仅仅是BIOS层面的(Legacy或者UEFI)。大多数情况下它只在启动阶段存在。 绝大多数现代操作系统的内核在启动之后都是使用它们自身的驱动来访问硬件,因此这个虚拟设备对于内核来说是不可见的。 一般情况下,ISO里面的系统起来之后会遍历所有的硬件设备(CDROM/USB/HD …) 去寻找安装源。 但是在Ventoy启动的环境下是找不到的,因为没有这样一个实际的安装介质,是虚拟的设备嘛。但是系统内核不知道这个情况,它们不知道当前是 Ventoy使用虚拟设备引导起来的,并不是传统的物理光驱或者U盘引导起来的。所以,如果不做特殊处理的话,大部分ISO文件启动以后就会报找不到安装源的错误而停止。 因此,Ventoy必须做很多hook的工作,帮助内核找到、挂载安装源。其实就是告诉内核,当前是Ventoy从一个虚拟的设备引导起来的,你的安装源并不在常规的介质中,而是在XX硬盘的XXX.iso文件, 你把它挂载起来当做安装源就可以啦。。。。。 但是这个hook工作是非常枯燥而且麻烦的,因为系统种类实在太多而且有各种各样的特殊情况。
Ventoy Compatible 概念

实际上,Ventoy在启动之前,把相关的信息都保存在了运行时内存中(保留内存段),同时还提供了一个工具可以在系统下获取这些信息。 这样,操作系统调用一下这个工具就可以知道,当前是Ventoy环境启动的,而且还能详细知道是基于哪个磁盘的哪个ISO文件启动而来的。 这样,系统就可以直接去找到对应的ISO文件,挂载起来作为安装源就可以了。不需要再用常规的方式去寻找。 当然,如果是常规方式启动起来的,系统下调用这个工具是获取不到任何数据的,这种情况下就按照常规的启动步骤往下走就可以了。
因此,如果ISO里面的系统集成了这个工具,并且做了上述处理的话,对于Ventoy就很简单了,只需要做好这个虚拟设备就可以了,不用再费力做那些hook工作了。 另一方面,还有一个问题就是,就算ISO里面的系统做了这些工作,Ventoy怎么知道呢?因此Ventoy提供了几种方式让ISO文件来标识自己。

我把集成了这个工具并且做了上述处理的操作系统或者ISO文件称之为 “Ventoy Compatible” 的。
Ventoy 特点

    100% 开源 (许可证)
    使用简单 (使用说明)
    快速 (拷贝文件有多快就有多快)
    直接从ISO文件启动,无需解开
    无差异支持Legacy + UEFI 模式
    UEFI 模式支持安全启动 (Secure Boot) (1.0.07版本开始) 说明
    支持超过4GB的ISO文件
    保留ISO原始的启动菜单风格(Legacy & UEFI)
    支持大部分常见操作系统, 已测试200+ 个ISO文件
    不仅仅是启动,而是完整的安装过程
    ISO文件支持列表模式或目录树模式显示 说明
    提出 “Ventoy Compatible” 概念
    支持插件扩展
    支持自动安装部署(1.0.09+) 说明
    启动过程中支持U盘设置写保护
    不影响U盘日常普通使用
    版本升级时数据不会丢失
    无需跟随操作系统升级而升级Ventoy

使用说明

    Windows系统安装 Ventoy

下载安装包,例如 ventoy-1.0.00-windows.zip 然后解压开。
直接执行 Ventoy2Disk.exe 如下图所示,选择U盘设备,然后点击 Install 按钮即可。

安装包内 Ventoy 版本:当前安装包中的Ventoy版本号
设备内部 Ventoy 版本:U盘中已安装的Ventoy版本号,如果为空则表示未安装
安装:把Ventoy安装到U盘,只有第一次的时候需要,其他情况就只需要Update升级即可
升级:升级U盘中的Ventoy版本,升级不会影响ISO文件

    Linux系统安装 Ventoy

下载安装包,例如 ventoy-1.0.00-linux.tar.gz, 然后解压开.
在终端以root权限执行 sh Ventoy2Disk.sh -i /dev/XXX   其中 /dev/XXX 是U盘对应的设备名,比如 /dev/sdb

Ventoy2Disk.sh  选项  /dev/XXX
  选项含义:
    -i   安装ventoy到磁盘中 (如果对应磁盘已经安装了ventoy则会返回失败)
    -I   强制安装ventoy到磁盘中,(不管原来有没有安装过)
    -u   升级磁盘中的ventoy版本

针对Linux系统有几点需要特殊说明一下:
1. 执行脚本时需要有root权限, 对一些系统比如ubuntu/deepin 执行的时候需要在前面加 sudo 比如 sudo sh Ventoy2Disk.sh -i /dev/sdb
2. 必须cd到ventoy解压之后的目录下执行此脚本
3. 请务必输入正确的设备名称,ventoy不会检查你输入的设备是U盘还是本地硬盘,如果输错了有可能会把你的系统盘格式化掉哦!

请注意:选择安装的时候,U盘将会被格式化,里面所有的数据都会丢失!
你只需要安装一次Ventoy即可,剩下的就只需要把各种ISO文件拷贝到U盘中就可以了.
你也可以把它当成普通U盘使用,保存普通文件,不会影响Ventoy的功能。

    拷贝ISO文件

安装完成之后,U盘会被分成两个区。第一个分区将会被格式化为exFAT文件系统,你只需要把ISO文件拷贝到这里面即可。你可以把ISO文件放在任意目录以及子目录下。 Ventoy会遍历所有的目录和子目录,找出所有的ISO文件,并按照字母排序之后显示在菜单中。
请注意:ISO文件的全路径中(包括目录、子目录和文件名)不能包含中文或者空格

    升级 Ventoy

如果Ventoy发布了新版本之后,你可以点击 Update 按钮进行升级,或者Linux系统中使用 -u 选项进行升级。
需要说明的是,升级操作是安全的,不会影响原有的ISO文件
更新日志

    2023/04/05 --- 1.0.91 发布

    新增支持 FreeBSD 14-CURRENT。
    修复了启动 Bliss OS 15.x 时的BUG。(#2329)
    修复了当Ventoy为NTFS格式时,启动 Fedora 时的一个BUG。(#2333)
    新增对簇大小超过64KB的NTFS文件系统的识别。
    改进 Legacy BIOS 下 grub2 启动模式的处理流程。
    languages.json 更新

 


No comments:

Post a Comment