deepin使用ventoy制作u盘启动盘

背景介绍

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” 的。

deepin使用ventoy制作u盘启动盘

Ventoy是一个制作可启动U盘的开源工具。有了Ventoy你就无需反复地格式化U盘,你只需要把ISO/WIM/IMG/EFI文件拷贝到U盘里面就可以启动了,无需其他操作。 你可以一次性拷贝很多个不同类型的ISO文件,在启动时Ventoy会显示一个菜单来选择(截图)。 无差异支持Legacy BIOS和UEFI模式。目前已经测试了各类超过470+ 个ISO文件(列表). 同时提出了"Ventoy Compatible"的概念,若被支持则理论上可以启动任何ISO文件.

在这里插入图片描述

查看系统硬盘信息

使用df -hl命令查看硬盘信息

~/Downloads/haha/ventoy-1.0.19$ df -hl
文件系统        容量  已用  可用 已用% 挂载点
...
/dev/nvme0n1p5  115G   75G   40G   66% /media/zzyy/423423
/dev/nvme0n1p4  187G  137G   51G   74% /media/zzyy/Data
/dev/nvme0n1p3  100G   84G   17G   84% /media/zzyy/4234324
/dev/sda1        29G  3.9M   29G    1% /media/zzyy/exfat

这里,我们看到了那个32G的u盘(实际29G,不要问我为什么,硬盘厂商的鬼把戏)。
所以,我们要格式化的U盘为/dve/sda,注意,没有1,那个数字是分区。
一定要清楚需要格式化的是哪个磁盘,一旦格式化,里面所有的数据都会丢失!

选项相关

Ventoy2Disk.sh  命令  [选项]  /dev/XXX
  命令含义:
    -i   安装ventoy到磁盘中 (如果对应磁盘已经安装了ventoy则会返回失败)
    -I   强制安装ventoy到磁盘中,(不管原来有没有安装过)
    -u   升级磁盘中的ventoy版本
    
  选项含义: (可选)
    -r SIZE_MB  在磁盘最后保留部分空间,单位 MB (只在安装时有效)
    -s          启用安全启动支持 (默认是关闭的)
    -g          使用GPT分区格式,默认是MBR格式 (只在安装时有效)

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

操作步骤

下载,解压。

tar -zxf ventoy-1.0.19-linux.tar.gz

给脚本添加可执行权限

chmod +x Ventoy2Disk.sh

执行sudo sh Ventoy2Disk.sh -i /dev/sda -g -r 500,注意,中间要输入两次y来确认。
这里-r 500是留500空间的意思,你也可以不留。那就是sudo sh Ventoy2Disk.sh -i /dev/sda -g

看清楚你的磁盘是哪个,是sda还是sdb,不同的电脑,命令不一样。不要照搬!!!不懂的话请切换到windows下面操作。

$ sudo sh Ventoy2Disk.sh -i /dev/sda -g -r 500

***********************************************************
*                Ventoy2Disk Script                       *
*             longpanda  admin@ventoy.net                 *
***********************************************************

Disk : /dev/sda
Model: SanDisk Ultra (scsi)
Size : 28 GB
Style: GPT

You will reserve 500 MB disk space 

Attention:
You will install Ventoy to /dev/sda.
All the data on the disk /dev/sda will be lost!!!

Continue? (y/n)y

All the data on the disk /dev/sda will be lost!!!
Double-check. Continue? (y/n)y

Create partitions on /dev/sda by parted in GPT style ...
Done
mkfs on disk partitions ...
create efi fat fs /dev/sda2 ...
mkfs.fat 4.1 (2017-01-24)
success
mkexfatfs 1.3.0
Creating... done.
Flushing... done.
File system created successfully.
writing data to disk ...
sync data ...
esp partition processing ...

Install Ventoy to /dev/sda successfully finished.

$ 

拷贝ISO文件

安装完成之后,U盘会被分成两个区。第一个分区将会被格式化为exFAT文件系统(你也可以再手动重新格式化成其他支持的文件系统,比如 NTFS/FAT32/UDF/XFS/Ext2/3/4 等,参考 说明), 你只需要把ISO文件拷贝到这里面即可。你可以把ISO文件放在任意目录以及子目录下。 Ventoy默认会遍历所有的目录和子目录,找出所有的ISO文件,并按照字母排序之后显示在菜单中。 你也可以通过插件配置让Ventoy只搜索某一个固定的目录及其子目录。
请注意:ISO文件的全路径中(包括目录、子目录和文件名)不能包含中文或者空格

升级 Ventoy

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

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值