开源的全能维护 U 盘工具:Ventoy

开源的全能维护 U 盘工具:Ventoy

本篇文章聊聊迄今为止,我用着最舒服的一款开源 U 盘启动工具,Ventoy。

写在前面

好久不见,接下来计划写一个比较连续的内容,就先从最小的处着手吧。

经过长久的折腾,除非我们是在 ESXi 或者 PVE 这类虚拟机环境中维护操作系统,否则不论是购置新硬件设备,还是计划着手对家里的老设备进行系统翻新,系统安装盘总归是绕不开的一个话题。

折腾使用的 U 盘

但如果你的设备需要安装不同的操作系统,或者不同版本的操作系统,就需要准备多个安装光盘或者安装 U 盘了,即使 U 盘可以重新擦除,反复制作不同操作系统或者不同版本的操作系统的镜像,安装起来也总归是比较麻烦的。

关于安装 U 盘的折腾笔记,你可以参考这篇文章:《硬件笔记:组装“固态 U 盘”的八年,从 100 块到 1000 块》,这里就不再赘述。

为了减少不必要的安装盘的刷写操作,我们可以借助一款开源的优秀工具:Ventoy。

开源项目:Ventoy

使用它来将你的普通 U 盘变成可启动的 U 盘,你只需要将你想要引导的操作系统镜像文件扔到 U 盘中,就能够完成操作系统的启动,而无需重复制作启动盘。如果你有多个不同版本的操作系统,那么只需要把不同的操作系统的镜像都放在 U 盘里就好了,它会自动扫描可引导的镜像文件,生成可供用户选择的启动列表。

兼容性非常棒

同时,作者对他的兼容性做了非常多的工作,从传统的 x86 BIOS 引导到现代的各种 UEFI 引导它都支持,支持上千个系统的引导,覆盖了 distrowatch.com 最流行操作系统中的 90%。

不过,在开始使用前,我们首先要明确哪些场景使用它不会带来效率提升。

不适合的场景

如果你手头的电脑或者接触到的设备,都是最近十年的设备,那么你可以放心使用 Ventoy。

但如果你希望使用它通杀二十年左右的设备,可能需要额外注意一些事情,包括你的 U 盘尺寸过大,或者不支持 USB 3.0 协议,只支持古早的 USB 2.0 ,或者设备供电不足,也可能导致启动失败。

如果你是 Windows 或者 Linux 用户,那么你使用 Ventoy 将会非常顺滑,但如果你是 Mac 全家桶用户,尤其是最近两三年的 M1 / M2 / M3 用户,连 Windows 虚拟机使用都比较麻烦的情况下,想使用 Ventoy 就需要费一些周折啦。

包括,如果你希望快速安装 macOS 操作系统,Ventoy 也并不是最优解,虽然它可以。

如果你使用了比较大的 U 盘或者 SSD 移动硬盘(2TB或以上),可能因为硬盘盒、设备 BIOS 限制,导致无法正常使用。

此外,如果你这块 U 盘或者硬盘还会当作一般的数据盘使用,比如在工作机、打印店的电脑上来回移动,那么其实有一些概率会遇到十年前很流行的 U 盘“病毒”,或者不慎点击到“勒索病毒”程序,我个人并不是十分建议在有这类场景的情况下,做 AIO (All In One)工具盘,因为可能会因为意外导致数据盘中的文件尽失,虽然 Ventoy 并不会被损坏,将引导光盘 ISO 等重新复制到数据盘中即可,但是数据盘中的文件越多,需要重新折腾的时间就会越久。

好了,上面大概是我使用过程中遇到的一些问题,如果你的场景不存在上述问题,或者可以使用其他方式规避一些情况,那么就可以愉快的进行下面的 Ventoy 工具 U 盘制作啦。

最速上手

为了最快的完成 Ventoy 工具盘的制作,建议使用 Windows 操作系统作为折腾环境。我的 Windows 环境是在之前使用老的 Intel MacBook Pro 里的虚拟机制作的放在 U 盘里的 Win11ToGo,插在平时调试本地模型使用的台式机上。

软件最新发布版本 1.0.96

首先,访问项目的程序发布页面,获取最新的程序版本,截止文章发布时候,最新的版本是 1.0.96。

初始化启动盘

下载“ventoy-1.0.96-windows.zip”,然后在本地解压缩后,执行文件夹中的 “Ventoy2Disk” 程序。

Ventoy 默认界面

默认界面十分简单,几乎只有设备列表可以下拉筛选,以及“安装”按钮是可点击的。不过,建议先点击不起眼的“配置选项”菜单,根据自己的情况做一些细节调整。

Ventoy 下拉菜单

如果你之前安装过其他的 PE 操作系统,或者磁盘本身就具备引导功能,为了能够顺利创建启动 U 盘,建议点击这个下拉菜单中的“清除 Ventoy”,先将磁盘完整格式化一遍,并清除所有隐藏分区中的数据。

Ventoy 文件系统支持

在下拉菜单中,我们还可以根据自己的需求,调整启动分区的文件类型:

  • 如果你的 “U 盘” 容量比较大(比如大于等于 2TB)请选择 GPT 分区类型,否则可以保持 MBR 分区;
  • 如果你希望你的 U 盘只在 Windows 下愉快使用,可以考虑在“分区设置”中将文件系统从默认的 exFat 改为 NTFS;
  • 如果你希望你的 U 盘在古早的设备中也能比较好的支持,可以选择 FAT 格式的分区,唯一的代价是不能存放大于 4GB 的光盘文件;
  • 如果你希望完全模拟光盘,可以考虑使用 UDF (通用光盘格式)分区;
  • 除此之外,默认使用虽然可能存在丢失文件的可能性的 exFat 也未尝不可,因为这个 U 盘大概率也就只放安装文件罢了。

Ventoy 启动盘制作完毕

完成调整之后,再次确认要安装 Ventoy 的磁盘设备后,点击安装按钮,即可完成 Ventoy 的安装。

创建一个存放镜像的目录

我个人不太喜欢镜像散落在盘根,所以一般会新建一个名为 iso 的目录,然后将镜像文件复制到目录中。

复制启动镜像文件

在完成 Ventoy 启动盘的安装后,我们将一些系统的安装镜像复制到 U 盘中,等待镜像复制完毕,某一种或几种系统的安装/启动 U 盘就制作完毕了(拷贝即安装,是不是很方便)。你可以也将你喜欢的 PE 系统或者 Linux LiveCD 复制到 U 盘中,制作一个万能 PE 合集,而剩下来的 U 盘空间,作为传统 U 盘使用也未尝不可,但和上文中提到的一样,因为 U 盘的使用场景不确定,存在一些文件被篡改风险,会浪费时间来回重新折腾,所以不建议这样使用。

启动列表

为了演示启动效果,我在 U 盘中拷贝了两个镜像,分享是 Windows 11 和 Ubuntu 的安装镜像,将 U 盘插到目标设备后,重启设备,选择 U 盘启动,我们就能够看到一个简洁的启动界面了,界面中会根据我们 U 盘中的镜像来动态的生成启动列表。选择不同的镜像就能实现不同的操作啦。

其他

聊聊 “U 盘选择”,和这个看起来“十分简单”的项目吧。

U 盘的选择

考虑到前文提到的“设备兼容性”,以及系统安装效率,在常用的安装工具盘的容量上,我选择了 32GB,一块很古早的三星 32GB MLC 硬盘,某宝不到 40 块钱,几乎我常用的所有的设备都能正常使用。

搭配之前文章《硬件笔记:组装“固态 U 盘”的八年,从 100 块到 1000 块》中,我提到的 jiayi 的硬盘盒(相对便宜的版本,69 块),主控是 VLI716 (支持网上的量产工具) ,可以使用 SATA3 和硬盘进行交互,支持 UASP 协议。

硬盘信息

组装完毕,使用Crystal DiskInfo 查看信息如图所示。

简单聊聊项目

这个项目虽然使用起来简单,但其实这个项目里整合了非常多的、实用的、大名鼎鼎的开源项目,除了常见的 Grub 和 BusyBox 外,还有它们:

  • Tiny Core Linux:20MB 左右的能够通过有线连接互联网的 Linux 桌面环境,在项目中,用于做 LiveCD,开源协议为 GPL v3.0。
  • fat_io_lib:FAT16/32 文件操作系统库,纯 C 实现的 FAT16 & FAT 32 操作系统驱动,支持文件读写,使用 GPL v3.0 协议开源。
  • Squashfs:Squashfs 文件操作系统,以及创建和提取 Squashfs 文件系统的工具,使用 GPL v2.0 协议开源。
  • NTFS 3G:安全的 NTFS 文件系统驱动,支持 NTFS 文件的读写,使用 GPL v2.0 协议开源。
  • exFat:免费的 exFat 文件系统实现,使用 GPL v2.0 协议开源。
  • Win Boot:能够加载文件类型为.win 的 WinPE 文件并启动的启动加载器,用于启动能力增强,开源协议为 GPL v2.0。
  • XZ Embedded:XZ 压缩文件解压缩工具,作者使用放任自流的约定。
  • zstd:Facebook 开源的一种实时无损压缩算法,针对 zlib 级别的实时场景压缩提供更好的压缩比,使用 GPL v2.0 协议开源。
  • vblade:简单可靠的,提供 AoE 协议的网络存储功能,让 PXE 功能得以实现,使用 GPL v2.0 协议开源。
  • civetweb:小巧的嵌入式 HTTP 服务器,让用户使用浏览器就能够维护 Ventoy,因为依赖多种开源软件,使用多种开源协议开源。
  • Porteus Kiosk:增强界面功能,使用 GPL v2.0 协议开源。

除此列表中的软件,还有很多软件,可以在编译说明文档中看到,作者在网站文档中也有一些提及。

硬盘分区模式

Ventoy 的分区格式的设计还是非常合理的,以MBR 为例(GPT 类似),在磁盘最前端保存分区表,最后端保存 EFI 启动使用的分区和 Ventoy 相关程序,中间部分作为数据盘,提供给用户使用,让用户存放安装镜像文件或者普通数据。

除此之外,Ventoy 的插件系统的设计,也挺实用的,使用声明配置的方式,允许用户在有限范围对 Ventoy 进行必要调整:包括了赏心悦目的外观配置(主题、字体、菜单界面自定义),能够将 LiveCD 中的数据持久化的插件(Live CD 当普通系统使用)、Windows VHD 启动插件(Win2Go 基础)、用于自动部署使用的自动部署插件等等。

以及,更现代化的 PXE 服务器版本的 Ventoy:iVentoy。

最后

这篇文章就先写到这里吧,接下来的几篇文章,或许,我们会用 Ventoy 来开启一些有趣的硬件。

–EOF


我们有一个小小的折腾群,里面聚集了一些喜欢折腾、彼此坦诚相待的小伙伴。

我们在里面会一起聊聊软硬件、HomeLab、编程上、生活里以及职场中的一些问题,偶尔也在群里不定期的分享一些技术资料。

关于交友的标准,请参考下面的文章:

致新朋友:为生活投票,不断寻找更好的朋友

当然,通过下面这篇文章添加好友时,请备注实名和公司或学校、注明来源和目的,珍惜彼此的时间 😄

关于折腾群入群的那些事


本文使用「署名 4.0 国际 (CC BY 4.0)」许可协议,欢迎转载、或重新修改使用,但需要注明来源。 署名 4.0 国际 (CC BY 4.0)

本文作者: 苏洋

创建时间: 2023年11月08日
统计字数: 5739字
阅读时间: 12分钟阅读
本文链接: https://soulteary.com/2023/11/08/open-source-all-in-one-usb-flash-drive-maintenance-tool-ventoy.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/188049.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

城市内涝积水的原因有哪些?万宾科技内涝积水监测仪工作原理

一旦有暴雨预警出现多地便会立即响应,以防城市内涝问题出现。随着人口迁移,越来越多的人口涌入城市之中,为了完善城市基础设施建设,城市应急管理部门对内涝的监测越来越严格,在信息化时代,城市管理也趋向于…

HarmonyOS应用开发-ArkTS基础知识

作者:杨亮Jerry 作为多年的大前端程序开发工作者,就目前的形式,个人浅见,在未来3-5年,移动端依旧是Android系统和iOS系统的天下。不过基于鸿蒙系统的应用开发还是值得我们去花点时间去了解下的,阅读并实践官…

人工智能基础——Python:Pillow与图像处理

人工智能的学习之路非常漫长,不少人因为学习路线不对或者学习内容不够专业而举步难行。不过别担心,我为大家整理了一份600多G的学习资源,基本上涵盖了人工智能学习的所有内容。点击下方链接,0元进群领取学习资源,让你的学习之路更加顺畅!记得…

【解决问题】---- 解决 avue-crud 表格勾选数据翻页后界面保持选中

1. 错误预览 第一页选择【7、8、9、10】 直接点击第三页未进行选择 直接点击第四页未进行选择 2. 问题总结 通过测试可以看到,页面的选择项会影响到其他页面的选择;点击保存,返回的数据却是真真选择的数据;数据在选择渲染…

2023网络钓鱼状况报告:ChatGPT等工具致网络钓鱼电子邮件数量激增1265%

近日,SlashNext发布了《2023年网络钓鱼状况报告》,报告显示:自ChatGPT于2022年11月推出以来,网络钓鱼电子邮件数量激增1265%,这标志着网络犯罪依托于人工智能进入了一个新的时代。 该报告深入分析了2022年第四季度至2…

jQuery实现二级菜单

jQuery怎么实现二级菜单呢&#xff1f;让我为大家演示一个例子&#xff01; 上代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title></title><style>* {margin: 0;padding: …

css:clip元素裁剪实现Loading加载效果边框

clip 属性定义了元素的哪一部分是可见的。clip 属性只适用于 position:absolute 的元素。 警告&#xff1a; 这个属性已被废弃。建议使用 clip-path 文档 https://developer.mozilla.org/zh-CN/docs/Web/CSS/cliphttps://developer.mozilla.org/zh-CN/docs/Web/CSS/clip-path …

Ribbon 负载均衡原理和策略

目录 一、Ribbon 是什么 二、Ribbon 负载均衡原理 三、Ribbon 负载均衡策略 四、Ribbon的应用场景 一、Ribbon 是什么 Ribbon是一个开源的、基于HTTP和TCP的客户端负载均衡工具&#xff0c;它提供了一个简单的、基于配置的负载均衡策略&#xff0c;可以帮助开发人员更轻松…

【编程语言发展史】Go语言的发展历史

目录 Go的起源 Go语言发展时间轴 logo Go的起源 Go 语言起源 2007 年&#xff0c;并于 2009 年正式对外发布。它从 2009 年 9 月 21 日开始作为谷歌公司 20% 兼职项目&#xff0c;即相关员工利用 20% 的空余时间来参与 Go 语言的研发工作。该项目的三位领导者均是著名的 …

【23-24 秋学期】NNDL 作业7 基于CNN的XO识别

一、用自己的语言解释以下概念 局部感知、权值共享池化&#xff08;子采样、降采样、汇聚&#xff09;。会带来那些好处和坏处&#xff1f;全卷积网络&#xff08;课上讲的这个概念不准确&#xff0c;同学们查资料纠正一下&#xff09;低级特征、中级特征、高级特征多通道。N输…

8086读取键盘-磁盘输入

文章目录 前言1.从键盘读数据2.磁盘读数据 前言 想过一个问题没有&#xff0c; 8086是如何从键盘中接受输入的&#xff1f; 8086如何将字符在显示器上显示的&#xff1f; 8086如何从磁盘中读取数据的&#xff1f; 上面的问题都是没有操作系统的时候&#xff0c;比如bios的那段…

【ES专题】ElasticSearch功能详解与原理剖析

目录 前言要点阅读对象阅读导航前置知识笔记正文一、ES数据预处理1.1 Ingest Node&#xff1a;摄入节点1.2 Ingest Pipeline&#xff1a;摄入管道1.3 Processor&#xff1a;预处理器——简单加工1.4 Painless Script&#xff1a;脚本——复杂加工1.5 简单实用案例 二、文档/数据…

ARMday2(环境创建+工程配置+创建文件+单步调试)

目录 一、汇编环境的创建 二、为工程配置链接脚本&#xff08;map.lds&#xff09; 三、为工程创建汇编文件 start.s 编程调试 接下来我们需要建立一个 start.s 汇编文件添加到我们的工程中去 四、对汇编代码进行单步调试&#xff08;仿真&#xff09; 五、汇编工程的编译 …

淘宝天猫京东苏宁1688等平台关键词监控价格API接口(店铺商品价格监控API接口调用展示)

淘宝天猫京东苏宁1688等平台关键词监控价格API接口&#xff08;店铺商品价格监控API接口调用展示&#xff09;代码对接如下&#xff1a; item_get-获得淘宝商品详情 公共参数 请求地址: https://o0b.cn/anzexi 名称类型必须描述keyString是调用key&#xff08;必须以GET方式…

react组件间通信之context

一般用于【祖组件】与【后代组件】间通信 案例&#xff1a; A,B,C,D四个组件的关系分别为&#xff1a;爷爷&#xff0c;爸爸&#xff0c;儿子&#xff0c;孙子 从A向C传递参数&#xff1a;C组件为类式组件 从A向D传递参数&#xff1a;D组件为函数组件 import React, { Componen…

「Java开发指南」如何用MyEclipse搭建Spring MVC应用程序?(二)

本教程将指导开发者如何生成一个可运行的Spring MVC客户应用程序&#xff0c;该应用程序实现域模型的CRUD应用程序模式。在本教程中&#xff0c;您将学习如何&#xff1a; 从数据库表的Scaffold到现有项目部署搭建的应用程序 使用Spring MVC搭建需要MyEclipse Spring或Bling授…

学习c#的第四天

目录 C# 变量 C# 中的变量定义与初始化 接受来自用户的值 C# 中的 Lvalues 和 Rvalues 不同类型变量进行运算 静态变量 局部变量 C# 常量 整数常量 浮点常量 字符常量 字符串常量 定义常量 扩展知识 Convert.ToDouble 与 Double.Parse 的区别 静态常量和动态常…

基于FANUC工业机器人的坐标系转换、多视角拼接与三维重建

0.简介 总体任务&#xff1a;机械臂末端安装三维相机&#xff0c;绕着工件进行拍摄&#xff0c;并在计算机中将每次拍摄的点云合并在同一个坐标系下&#xff0c;从而获得更加完整全面的点云。机械臂&#xff1a;FANAUC相机&#xff1a;梅卡曼德技术方案&#xff1a;使用相机外…

如何将NetCore Web程序独立发布部署到Linux服务器

简介 在将 .NET Core 应用程序部署到 Linux 服务器上时,可以采用独立发布的方式,以便在目标服务器上运行应用程序而无需安装 .NET Core 运行时。本文介绍如果将NetCore Web程序独立发布部署到Linux服务器。 1、准备一台服务器 服务器配置:2核2G 系统环境:Alibaba Cloud…

小程序发成绩

在这个数字化快速发展的时代&#xff0c;让学生能够方便快捷地获取自己的成绩已经成为一项基本的需求。那么&#xff0c;如何实现这一目标呢&#xff1f;对于许多老师来说&#xff0c;可能首先想到的是使用各种代码或者Excel来发布成绩查询。今天&#xff0c;我们就来探讨一下这…