0.前提
拥有一个强大的U盘/硬盘(最差情况读取速度至少100mb/s)
1.Ventoy制作
(1)下载Ventoy制作软件
(2)制作Ventoy系统
压缩包解压之后,打开 Ventoy2Disk.exe 程序
左上角配置选项->勾选安全启动支持->分区类型选GPT->分区设置选NTFS
安装之前连续两次提示“安装后将清空U盘所有数据”
(3)美化设置
a.下载主题
打开GRUB主题网站(因为Ventoy基于GRUB)
https://www.gnome-look.org/browse?cat=109&ord=latest
我最喜欢的三个
CyberEXS 1.0.0 📎CyberEXS-1.0.0.tar.gz
https://www.gnome-look.org/p/1968990/
Fallout 📎fallout-grub-theme-master.zip
https://www.gnome-look.org/p/1230882
Dark Eos grub theme 📎dark-eos-grub.tar.gz
https://www.gnome-look.org/p/2138019
将下载好的主题进行解压缩,有的需要解压缩两次
b.复制主题
在Ventoy系统U盘中新建文件夹,命名为 ventoy ,再在此文件夹中新建文件夹,命名为 themes (注意大小写)
将解压缩后含有主题的文件夹一起丢入 themes 文件夹中
c.配置Ventoy
打开Ventoy安装程序文件中的 VentoyPlugson.exe 程序,点击启动,就会弹出web配置Ventoy界面
(a)主题配置插件
主题配置文件——各主题 themes 下各主题的配置文件: theme.txt 的绝对路径
字体文件————各主题 themes 下各主题的字体文件:为 pf2 格式 的绝对路径
(b)菜单类型插件
新增 - 选择第一项
key :搜索到镜像的文件名中的某个关键词 (严格执行大小写)
类型:对应显示 icons 下的图标
(c)菜单别名插件
新增 - 选择第一项
文件路径:选择开机镜像查找时的绝对路径
别名:开机镜像不再显示文件名,而显示别名
(d)全局控制插件
菜单语言:默认英文,可改中文
指定搜索目录:由于Ventoy默认会搜索U盘内所有文件夹,在此设置指定搜索文件夹,不再搜索其他文件夹
默认选中的镜像:与启动倒计时连用,倒计时结束后会默认进入此镜像
最大搜索目录深度:设置指定搜索目录后就不用设置这个了
(注:在文件下添加 .ventoyignore 的空文件,Ventoy就不再搜索该文件的所有文件)
2.PE制作
(1)选择喜欢的 PE
我最喜欢的三个PE
FirPE
微PE
HotPE
下载安装程序后,直接制作 ISO 的 PE 镜像,直接丢入 Ventoy 中就会自动识别
(2)拓展自己喜欢的工具
在这里指的是 便携版软件 和 单文件软件,特点就是直接解压缩就能使用,并不需要安装而影响注册表和需 C 盘使用
3.Linux To Go
(0)Linux vDisk 文件启动插件
https://www.ventoy.net/cn/plugin_vtoyboot.html
Ventoy 使用此插件来支持在物理机上直接启动安装了 Linux系统的 vdisk 文件 (vhd/vdi/raw 等)。这种模式的优点有:
系统是在真实物理机上运行,并不是在虚拟机里运行,没有性能损失。
同一个 vhd/vdi 文件既可以在 Legacy BIOS 模式下启动,也可以在 UEFI 模式下启动。
Linux系统无需独占一个磁盘或者分区,相当于把一个完整的Linux系统放在一个文件里。 比如,你的主系统是 C 盘里的 Windows 系统,你可以在D盘里放一些 Deepin、UOS、Ubuntu、Arch 等系统的 VHD 文件,想启动哪个选哪个,不用了就把对应的 VHD 文件删除即可。
支持的 vdisk 格式
固定大小的 vhd (注意只能是vhd, 不支持vhdx)
固定大小的 vdi
Raw Disk 镜像格式
理论上,其他使用 dracut/initramfstool/mkinitcpio 作为 initramfs 构建工具的发行版也支持。只是没有实际进行测试。
a.安装 Linux 系统到 vdisk
创建固定大小的 vhd/vdi,注意只支持静态大小的,不支持动态扩展类型的。然后把支持的 Linux 系统安装到 vhd/vdi 中即可。 安装过程和普通安装没有任何差别,可以借助 VirtualBox 来完成(创建硬盘时可以选择 vdi或vhd)。 注意: 1. 虚拟硬盘必须是全新创建的,不能使用之前用过的。 2. 新版本的 VirtualBox 在创建虚拟机时不要选择操作系统ISO文件,等创建完虚拟机之后再添加ISO文件进行安装。
注意,为了最终的 vhd/vdi 文件既能在 Legacy BIOS 模式下启动,也能在 UEFI 模式下启动。 安装系统时,VirtualBox 必须设置为 UEFI 模式! 安装系统时,VirtualBox 必须设置为 UEFI 模式! 安装系统时,VirtualBox 必须设置为 UEFI 模式!
!!! 注意 !!! 有一些系统安装完之后还需要再额外安装一个 grub 的包才可以,否则最终的 vhd/vdi 文件只能在 UEFI 模式下启动,无法在 Legacy BIOS 模式下启动。 对于这种,在前面表格最后的 "备注" 一栏有说明,没有特殊说明的就不需要。比如,对于 Deepin 系统,需要安装 grub-pc-bin_xxxx.deb 包。以 deepin-desktop-community-1010-amd64.iso 为例, 需要安装 grub-pc-bin_2.02.24.3-1+eagle_amd64.deb 这个包,它位于 ISO文件的 /pool/main/g/grub2/ 目录下,可以直接使用 dpkg -i 命令来安装。 另外,如果缺少这个包,在运行下面的 vtoyboot.sh 脚本时也会打印一个提示信息。当然,如果你只需要在 UEFI 模式下启动这个 vdisk 文件,不需要在 Legacy BIOS 模式下启动,那就不需要管它了。 注意,系统安装完之后不能对虚拟机创建快照,否则会导致 vdi/vhd 无法识别。
b.在系统下执行 vtoyboot 脚本
安装完成并启动到 Linux 系统中之后,执行 vtoyboot 脚本。这一步是为了在系统中做一些处理,以支持Ventoy启动。 vtoyboot 是配套 Ventoy 开发的一个项目,单独发布。从 https://github.com/ventoy/vtoyboot/releases 下载压缩包即可。
下载到 Linux 系统中,解压,然后以root权限执行里面的脚本 sudo bash vtoyboot.sh 脚本执行完之后,使用 poweroff 命令关机。 注意 vtoyboot 会经常更新以支持更多的 Linux 版本以及修复 BUG,所以请使用最新版本。
c.拷贝到U盘,改后缀名为 .vtoy 然后用 Ventoy 启动
完成前面2步之后,就可以把 vdi/vhd 文件拷贝到 U盘中,重启电脑,然后通过Ventoy启动它了。 注意,必须把文件后缀名改为 .vtoy 才可以正常启动。 推荐保留原来的后缀名,同时增加一个 .vtoy 后缀。比如: CentOS7.vhd.vtoy ubuntu20.04.vdi.vtoy Manjaro.vhd.vtoy
d.关于启动后的系统升级
vDisk文件在物理机环境下启动之后,普通软件的安装、升级可以正常操作,没有限制。如果是对内核、驱动进行了升级、或者类似于通过 dnf update 命令进行了系统的大升级之后, 建议再重新执行一次 vtoyboot 脚本,防止下次重启之后vDisk文件无法启动。
(1)Oracle VM VirtualBox 制作注意
a.下载 Oracle VM VirtualBox
https://www.virtualbox.org/wiki/Downloads
b.配置安装Linux环境
主页 - > 新建 - > 编辑虚拟机名字和存放虚拟机的位置 - > 设置内存大小和CPU核心数量(配置高安装快) - > 勾选启用UEFI引导(Ubuntu是这样的) - > 设置虚拟硬盘大小(最大磁盘容量为以后只能使用这么多容量,勾选“固定大小”,选择“将虚拟磁盘存储为单个文件”) - > 下一步到完成 - > 开始构建虚拟机
主页 - >设置 - > 左侧系统 - > 取消勾选软驱 - > 左侧存储 - > 点击没有盘片 - > 右侧光盘图标选择虚拟盘 - > 浏览选择 Linux 的镜像 - > OK - > 上方启动开始安装系统
c.安装 Ventoy 支持插件 vtoyboot.iso
( vtoyboot.iso 可在 Ventoy 的 GitHub 仓库的找到)
https://github.com/ventoy/Ventoy/releases
Oracle VM VirtualBox 软件:
保持虚拟机在开机状态 - > 切换到 Oracle VM VirtualBox 程序页面 - > 中间存储 - > 点击没有盘片 - > 选择虚拟盘 - > 浏览选择 vtoyboot.iso - > 切回虚拟机可看到挂载成功
挂载成功后找到挂载的 vtoyboot-1.0.xx.tar.gz 文件 - > 右键提取到桌面 - > 右键在终端中打开 - > 输入命令 sudo bash vtoyboot.sh 并输入登录密码 (报错切换 root 用户)- > 回车跑代码等待完成
(该插件建议每次 Linux 版本大更新之后运行一次)
(增加后缀vtoy后,BIOS启动不了怎么办?Ventoy需要关闭安全启动使用)
d.制作为 Ventoy 支持的镜像
将制作好的 vdi 镜像文件后缀添加 .vtoy
(2)VMware Workstation Pro 制作注意
a.下载 VMware Workstation Pro
https://www.vmware.com/products/workstation-pro/workstation-pro-evaluation.html
下载并安装
b.下载 WinNTSetup
https://winntsetup.en.lo4d.com/windows
下载并安装 - > 右下角点击 VHD - > 创建 - > 设置虚拟硬盘大小和虚拟硬盘格式 - > 分区对齐和分配单位大小 - > 分区格式选择 UEFI - > 虚拟硬盘格式选择“固定大小,即时创建”(固定大小才会被 Ventoy 识别) - > 浏览选择存放 VHD 文件的位置 - > 创建成功
( VHD 被系统占用怎么办?)
右下角点击 VHD - > 选择剥离 VHD - > 选择相应的 VHD 进行剥离
也可以用微软系统自带的磁盘管理(就是速度慢)
Win + X - > 选择磁盘管理 - > 上方操作 - > 创建 VHD - > 浏览选择创建的位置及名称 - > 设置虚拟硬盘格式及其大小 - > 选择虚拟硬盘类型为固定大小
Win + X - > 选择磁盘管理 - > 选中创建的 VHD 指定的磁盘 x - > 右键分离 VHD
c.配置安装Linux环境
主页 - > 创建新的虚拟机 - > 自定义 - > 硬件兼容性17.5x - > 稍后安装系统 - > 选择 Linux 系统及对应的版本 - > 编辑制作镜像的名字及其存放的位置 - > 选择处理器配置(配置高安装快) - > 选择虚拟机内存(配置高安装快) - > 选择网络类型 - > 选择 I/O 控制器类型 - > 选择虚拟磁盘类型 - > 创建新虚拟磁盘 - > 指定磁盘容量 - > 下一步到完成
(可选择典型推荐一直下一步)
主页 - >点击编辑虚拟机设置 - > 点击硬盘 - > 下方点击移除 - > 下方点击添加 - > 硬盘 - > 使用现有的虚拟硬盘 - > 浏览选择创建好的 VHD 虚拟硬盘 - > 完成 - > 转换
主页 - >点击编辑虚拟机设置 - > 点击CD/DVD - > 右界面选择使用 ISO 映像文件 - > 浏览选择 Linux 的镜像 - > 确定 - > 开启此虚拟机后开始安装系统
c.安装 Ventoy 支持插件 vtoyboot.iso
( vtoyboot.iso 可在 Ventoy 的 GitHub 仓库的找到)
https://github.com/ventoy/Ventoy/releases
VMware Workstation Pro 软件:
保持虚拟机在开机状态 - > 右键上面该虚拟机的标签 - > 设置 - > 点击CD/DVD - > 右界面选择使用 ISO 映像文件 - > 浏览选择 vtoyboot.iso - > 设备状态全部勾选 - > 确定好挂载成功
挂载成功后找到挂载的 vtoyboot-1.0.xx.tar.gz 文件 - > 右键提取到桌面 - > 右键在终端中打开 - > 输入命令 sudo bash vtoyboot.sh 并输入登录密码 (报错切换 root 用户)- > 回车跑代码等待完成
(该插件建议每次 Linux 版本大更新之后运行一次)
(增加后缀vtoy后,BIOS启动不了怎么办?Ventoy需要关闭安全启动使用)
(系统安装完之后不能对虚拟机创建快照,否则会导致 vdi/vhd 无法识别)
(3)关于 VHD 和 VDI
a.关于各虚拟硬盘之前的转换
利用 Oracle VM VirtualBox 安装程序下的 VBoxManage.exe 程序
(a)VMDK 转换成 VDI
VBoxManage.exe clonehd "D:\AAA_Data\下载\Ubuntu.vmdk" "D:\AAA_Data\下载\Ubuntu.vdi" --format VDI
(b)VDI 转换成 VMDK
VBoxManage.exe clonehd source.vdi "D:\AAA_Data\下载\Ubuntu.vmdk" --format VMDK
(c)VDI 转换成 VHD
VBoxManage.exe clonehd "D:\AAA_Data\下载\Ubuntu.vdi" "D:\AAA_Data\下载\Ubuntu.vhd" --format VHD
(d)从固定大小转换为动态分配
vboxmanage clonemedium disk "D:\AAA_Data\下载\Ubuntu.vdi" "D:\AAA_Data\下载\Ubuntu.vdi" –variant Standard
(e)从动态分配转换为固定大小
vboxmanage clonemedium disk "D:\AAA_Data\下载\Ubuntu.vdi" "D:\AAA_Data\下载\Ubuntu.vdi" –variant Fixed
(f)VDI 转换成 VHD 为固定大小
vboxmanage clonemedium disk "D:\AAA_Data\下载\Ubuntu.vdi" "D:\AAA_Data\下载\Ubuntu.vhd" --format VHD -variant Fixed
b.关于对已经固定大小的虚拟硬盘进行扩容
(a)VDI
VBoxManage.exe showhdinfo D:\AAA_Data\下载\Ubuntu.vdi #.查看虚拟磁盘空间信息,确认确实是需要扩容的虚拟硬盘
set /a 1024*100 #.计算出要扩容的空间大小
VBoxManage.exe modifyhd D:\AAA_Data\下载\Ubuntu.vdi --resize 30720 (报错)
解决方法:
1.创建新虚拟介质命令
VBoxManage.exe createhd -filename "D:\AAA_Data\下载\0_Ubuntu.vdi" -size 30720 -format VDI -variant Fixed
2.克隆命令
VBoxManage.exe clonehd "D:\AAA_Data\下载\Ubuntu.vdi" "D:\AAA_Data\下载\0_Ubuntu.vdi" --existing
原来的 0_Ubuntu.vdi 已经克隆到 Ubuntu.vdi
(b)VHD
win键+R,输入命令diskpart
输入命令:sel vdisk file="X:\文件夹名\文件名"(注意扩展名是vhd还是vhdx)
输入命令:expand vdisk maximum=扩容后的容量(注意单位是MB)
(c)将新增的虚拟硬盘合并到 Linux 所在的虚拟硬盘空间中
利用专业的分区软件 DiskGenius 或 傲梅分区助手 进行对虚拟硬盘进行扩容
fdisk /dev/sda
命令(输入 m 获取帮助): m #.帮助命令
帮助:
GPT
M 进入 保护/混合 MBR
常规
d 删除分区
F 列出未分区的空闲区
l 列出已知分区类型
n 添加新分区
p 打印分区表
t 更改分区类型
v 检查分区表
i 打印某个分区的相关信息
杂项
m 打印此菜单
x 更多功能(仅限专业人员)
脚本
I 从 sfdisk 脚本文件加载磁盘布局
O 将磁盘布局转储为 sfdisk 脚本文件
保存并退出
w 将分区表写入磁盘并退出
q 退出而不保存更改
新建空磁盘标签
g 新建一份 GPT 分区表
G 新建一份空 GPT (IRIX) 分区表
o 新建一份的空 DOS 分区表
s 新建一份空 Sun 分区表
命令(输入 m 获取帮助): p #.查看分区情况,记住磁盘的Start簇编号
Disk /dev/sda:30 GiB,32212254720 字节,62914560 个扇区
Disk model: VMware Virtual S
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
磁盘标识符:F9794E72-E77F-4F20-A811-253983AB98A5
设备 起点 末尾 扇区 大小 类型
/dev/sda1 2048 1050619 1048572 512M EFI 系统
/dev/sda2 1050624 52426751 51376128 24.5G Linux 文件系统
命令(输入 m 获取帮助): n #.添加新分区
分区号 (3-128, 默认 3): 3 #.分区号往后增
第一个扇区 (52426752-62914526, 默认 52426752): #.回车默认
Last sector, +/-sectors or +/-size{K,M,G,T,P} (52426752-62914526, 默认 62914526): #.回车默认
创建了一个新分区 3,类型为“Linux filesystem”,大小为 5 GiB。
分区 #3 包含一个 ext4 签名。
您想移除该签名吗? 是[Y]/否[N]: n #.是否移除分区标识选择No(重要!)
命令(输入 m 获取帮助): w #.保存退出
分区表已调整。
正在同步磁盘。
sudo apt-get install gparted #.下载GParted
打开程序 GParted -> 右键选择 /dev/sd3 -> 卸载 -> 删除 -> 这时调整 /dev/sd2 的空间显示
解决方法
右键选择下方要调整大小的 /dev/sd2 -> 信息
打开终端,进入root权限,重新挂载文件夹目录的读写权限
sudo -i
mount -o remount -rw /
mount -o remount -rw /var/snap/firefox/common/host-hunspell
左上角GParted中刷新设备就可以直接调整 /dev/sd2 的大小(实在不行关闭软件重新打开)
4.Win To Go
(1)下载 WinNTSetup
https://winntsetup.en.lo4d.com/windows
下载并安装 - > 右下角点击 VHD - > 创建 - > 设置虚拟硬盘大小和虚拟硬盘格式 - > 分区对齐和分配单位大小 - > 分区格式选择 UEFI - > 虚拟硬盘格式选择“固定大小,即时创建”(固定大小才会被 Ventoy 识别) - > 浏览选择存放 VHD 文件的位置 - > 创建成功
( VHD 被系统占用怎么办?)
Win + X - > 选择磁盘管理 - > 选中创建的 VHD 指定的磁盘 x - > 右键分离 VHD
(2)选择镜像直接安装到虚拟硬盘 VHD 中
利用 WinNTSetup 工具或 Dism++ 等工具直接给 VHD 装载系统