在Linux下制作Linux&windows启动盘

如何在Linux-mint环境下,制作其他Linux发行版的UEFI启动盘,以及Windows10的UEFI模式启动盘。

对于U盘的操作,可以使用命令行的方式,比如sudo fdisk /dev/sdc这样的命令,对于U盘进行设置;

为了直观,也可以使用Gparted这个工具,Ubuntu已自带,其他Debian系安装方式:sudo apt install gparted

制作其他Linux发行版的启动盘

这个比较容易解决,因为Linux的ISO镜像都包含了启动盘所需的引导文件。操作如下:

命令行方式

这个方式比较简单,命令如下:

# 查看盘符等信息
sudo fdisk -l
# 假设U盘对应的盘符为 /dev/sdc # 先卸载U盘
# 加*是因为:U盘存在多个分区,比如sdc1, sdc2
sudo umount /dev/sdc* # 格式U盘为FAT格式
# 常见Linux的ISO文件没有超过的4G的,所以可以选择FAT格式。
# -I:如果U盘存在多个分区,就需要这个参数强行抹除,不加这个参数会失败;
sudo mkfs.vfat /dev/sdc -I # 直接写入镜像
# 上一步使用了-I参数,U盘上已经没有任何分区了,所以of=/dev/sdc,没有数字
# status=progress可以显示进度
sudo dd if=xx.iso of=/dev/sdc bs=4M status=progress

参考链接:https://blog.csdn.net/zeli1511/article/details/79019823

Gparted方式

打开gparted,找到U盘,比如这里U盘为/dev/sdc

先卸载,然后删除所有内容;

新建分区表,格式为GPT

之后保存操作即可,不需要建立新的分区。

然后使用上面那条dd命令写入镜像即可。

制作Windows10启动盘

这个比较麻烦。平时我们在Windows下使用镜像制作工具,比如Rufus,制作Windows启动盘时,这些工具软件自带Windows10进行UEFI引导用的文件,并且在制作镜像的过程中,会自动建立新的分区并写入这些文件。这就是为什么制作Windows10启动盘时,直接使用dd命令会失败的原因。

我们为了能在Linux下完成这个过程,就需要自己手动完成。我们使用Gparted,操作过程如下

U盘分区

首先,U盘的分区表格式为GPT,我们要新建两个分区,我们以/dev/sdc1/dev/sdc2表示;

/dev/sdc1的格式NTFS不要把U盘的所有容量都给这个分区,留下30M左右的空间。比如U盘的空间是15199M,那这个分区的容量是15169M。

其实30M也富余,这空出来的空间是给第二个分区保留的。

/dev/sdc2的格式是FAT32。包含一个EFI文件夹,这个文件夹中的内容就是Windows下镜像制作工具添加的内容。

注意:这两个分区的顺序和格式绝对不能错。也就是说,FAT32这个分区一定要在整个U盘的空间最后。

写入ISO和UEFI文件

我们使用的镜像是Windows10_2004.iso,大小超过了4G,这也是为什么/dev/sdc1分区的格式为NTFS;可以使用dd写入,也可以直接复制ISO镜像的所有文件,粘贴进/dev/sdc1这个分区。不要粘贴错了位置!!

/dev/sdc2要保存EFI文件,那我们从哪里找所需要的文件?Rufus是个开源项目,在GitHub上可以下载到我们需要的内容。

uefi-ntfs.img这里,下载uefi-ntfs.img这个文件。

挂载这个.img文件,下面会有一个文件夹EFI。把.img下所有文件和文件夹,原封不动地复制到第二个分区上。不要只把EFI这个文件夹下面的内容复制过来,破坏了文件结构,这样会失败。

总结

上面的方法来源是:https://www.onetransistor.eu/2015/09/uefi-ntfs-bootable-windows-usb-linux.html。可能图片加载不全,需要代理一下。

在Linux下制作Linux&windows启动盘的更多相关文章

  1. 如何在linux下制作一个windows的可启动u盘?

    如何在linux下制作一个windows的可启动u盘? 情景是这样的,有一个windows10的iso,现在想通过U盘安装,要求即支持UEFI(启动引导器),又支持Legacy(启动引导器),因为有一 ...

  2. linux下制作linux系统盘(光盘、U盘)

    cdrecord制作启动光盘 首先cdrecord -scanbus输出设备列表和标识,(我的此次为5,0,0)  [ˈrekərd] 然后用cdrecord -v dev=5,0,0 -eject ...

  3. win7下制作ubuntu系统安装启动盘和U盘安装ubuntu全过程

    在我搞坏了两个系统之后,一切都得从头开始了,这回好了,电脑就是一台裸机了.没办法,重新下win7吧.这个要先做一个win7的启动盘,然后再安装,只能说我技术不行,没能把win7搞定.让大神给装的win ...

  4. TransMac Win系统下制作 OS X启动盘图文教程超详细小白版

    1软件安装好后把准备好的8G或者8G以上U盘插到电脑上:右键以管理员身份运行如                     <ignore_js_op> 2打开软件后右键先格式化U盘操作如下图 ...

  5. windows下制作linux U盘启动盘或者安装优盘(转)

    windows下制作linux U盘启动盘或者安装优盘(转) Linux发行版排行榜:http://iso.linuxquestions.org/ [方案一]:UltraISO(不推荐,在Window ...

  6. Linux下制作Windows启动U盘的工具

    Linux下制作Windows启动U盘的工具 很多人说Linux下制作Windwos启动盘要用GRUB4DOS建立引导,其实不用,有专门的工具的,就像Windows下有Rufus制作Linux启动U盘 ...

  7. Windows环境下制作Ubuntu的U盘启动工具

    Windows用户想要尝试一下Ubuntu或其他Linux系统?最简单的方法就是使用VMware Workstation,只是虚拟机会真实占用内存,如果你的电脑内存8G及以上可以试试.内存偏小,或者觉 ...

  8. linux系统创建windows启动盘

    平时工作中用到linux的操作命令较多,因此为了方便,就给电脑装了双系统,一般工作的时候,都选择进入linux系统.但是今天有件工作之外的事情需要解决下:创建一个windows启动盘.如果按照往常来说 ...

  9. centos clamav杀毒软件安装配置及查杀,没想到linux下病毒比windows还多!

    centos clamav杀毒软件安装配置及查杀,没想到linux下病毒比windows还多! 一.手动安装 1.下载(官网)    cd /soft     wget http://www.clam ...

随机推荐

  1. MySQL(3)— 数据管理

    三.MySQL数据管理(DML) 3-1.外键(了解即可) ALTER TABLE `aa表名` ADD CONSTRAINT `约束名` FOREIGN KEY (字段名) REFERENCES ` ...

  2. Gym100548F Color

    题目链接:https://vjudge.net/problem/Gym-100548F 题目大意: n 朵花,按顺序排成一排.从 m 种颜色中选出 k 种颜色,给这 n 朵花染色,要求相邻的花颜色不同 ...

  3. C语言基础知识(三)——指针

    指针定义 1.指针的值表示的是它所指向对象的地址,指针+1表示的是下一元素的地址,按**字节**编址,而不是下一字节的地址. 2.依照数据类型而定,short占用两字节.int占用4字节.double ...

  4. pyenv,轻松切换各种python版本

    pyenv,轻松切换各种python版本 解决什么问题 mac自带python2,md又不能删掉他 linux也自带python2,这玩意都过时了,也不赶紧换掉 安装pyenv git 安装 git ...

  5. golang如何优雅的编写事务代码

    目录 前言 需求 烂代码示例 重构套路 一.提前返回去除if嵌套 二.goto+label提取重复代码 三.封装try-catch统一捕获panic 前言 新手程序员概有如下特点 if嵌套特别多.重复 ...

  6. oracle计算两日期相差多少秒,分钟,小时,天,周,月,年

    --计算两个时间差相差多少秒select ceil((sysdate-t.transdate)* 24 * 60 * 60),t.transdate,sysdate from esc_trans_lo ...

  7. 巧用 display: contents 增强页面语义

    display: contents 是一个比较陌生的属性,虽然属于 display 这个基本上是最常见的 CSS 属性,但是 contents 这个取值基本不会用到.但是它早在 2016 年就已经得到 ...

  8. 用python编写测试脚本

    def f(n): """ >>>f(1) 1用例 >>>f(2) 2用例 ...... >>>f(n) n用例 & ...

  9. 使用 fileupload 组件完成文件的上传应用

    1. 使用 fileupload 组件完成文件的上传应用 commons-dbutils-1.3.jarcommons-fileupload-1.2.1.jar 1). 需求: > 在 uplo ...

  10. STM32读取匿名光流数据——与Guidance的光流和超声波做对比测试

    使用两个串口同时读取匿名光流和Guidance数据:用以比较两个光流的效果 Github链接:https://github.com/W-yt/YuTian_Pro/tree/master/Guidan ...