今年春节回家期间,我需要将家里的一台安装了Debian Stretch的ZaReason笔记本电脑更换为Windows 10系统,好让爸妈从老台式机上的XP系统升级到新的平台上来。回家前,小仙女已在微软官网帮我买好了正版软件,我也利用微软提供的Media Creation Tool创建了安装U盘。然而,等拿回家后安装的时候才发现,安装密码无效。联系客服后得知,我购买的是Windows 10家庭版,而安装U盘的版本则是家庭中文版。前者支持多种界面语言,而后者仅支持中文。由于Media Creation Tool不能在XP上运行,可家里除了安装XP系统的台式机就是我的Linux笔记本,并且微软客服也仅提供傻瓜式的初级指导而对于Linux平台用户不予考虑,因此只能自己从Linux上制作Windows 10的安装U盘了。

经过搜索,有些文章介绍了如何使用dd命令将操作系统的iso镜像文件直接拷贝到U盘分区。也有文章提到,需要手动编写grub.cfg文件,才能够实现从U盘引导系统。但这些方法都比较麻烦,而且我之前也没有经过测试,不知道究竟能否成功。最后在这里发现,Linux下有一个图形界面工具WoeUSB用来做这个事情,而不需要手动运行那些底层的命令。因此,我便参考该文的介绍按步就班,成功地安装了新系统。具体步骤如下。

  1. 使用apt-get安装WoeUSB依赖的软件包:

    sudo apt-get install devscripts equivs gdebi-core

    其中,

    • devscripts包含了一堆方便维护与管理Debian软件包的脚本。
    • equivs用于创建最小Debian软件包,即只包含软件包依赖关系信息而没有实际的软件。
    • gdebi-core用于对本地deb软件包解决依赖性问题并自动安装相关的包。
  2. 使用git下载WoeUSB

    git clone https://github.com/slacka/WoeUSB.git
  3. 进入下载的WoeUSB文件夹并执行setup-development-environment.bash

    cd WoeUSB
    ./setup-development-environment.bash
  4. 使用mk-build-deps命令创建描述依赖关系的deb包:

    mk-build-deps

    执行后,会在当前目录下生成woeusb-build-deps_3.2.12_all.deb

  5. 使用gdebi命令安装woeusb-build-deps_3.2.12_all.deb

    sudo gdebi woeusb-build-deps_3.2.12_all.deb

    安装的过程中会自动下载依赖的软件包libwxbase3.0-devlibwxgtk3.0-devwx-commonwx3.0-headers

  6. 执行命令dpkg-buildpackage生成WoeUSB的Debian二进制包:

    dpkg-buildpackage -uc -b

    运行过程中,会对源码进行编译。其中,

    • -uc选项表示不对.buildinfo.changes文件作签名。
    • -b选项表示进行二进制编译。

    运行结束后,会在上一层目录生成如下文件:

    • woeusb_3.2.12_amd64.buildinfo
    • woeusb_3.2.12_amd64.changes
    • woeusb_3.2.12_amd64.deb
    • woeusb-dbgsym_3.2.12_amd64.deb
  7. 使用gdebi命令安装上述两个deb包:

    sudo gdebi woeusb_3.2.12_amd64.deb woeusb-dbgsym_3.2.12_amd64.deb

    至此,WoeUSB软件已经编译成功并安装完毕。

  8. 插入容量至少为8GB的空白U盘,启动woeusbgui。如下图所示,在打开的窗口中选择已下载好的Windows 10镜象文件,并选中与U盘对应的目标设备。之后点击“Install”,等待直至启动盘制作完成。

  9. 从U盘启动,安装Windows 10,大功告成。

在GNU/Linux下制作Windows 10安装U盘的更多相关文章

  1. 在Ubuntu Linux下制作Windows 启动安装 USB盘

    最近想 ,在Ubuntu上刻录个windows的安装U盘,在网上看了些资料,不过好多都说的很模糊,于是乎,我走了不少弯路.这里记录下来,希望了帮到大家. 首先你的有个USB吧,这里我们假定USB在ub ...

  2. 纯windows下制作变色龙引导安装U盘教程

    原创教程:纯windows下制作变色龙引导安装U盘教程 支持Mavericks和Yosemite 支持白苹果 目标:windows下制作带 Chamelon变色龙引导的黑苹果安装U盘,支持PC机引导安 ...

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

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

  4. Linux下Memcached-1.4.10安装

    memcache是一款流行的缓存产品,它分为两个部分:一个是运行在服务器端的memcached进程,一个是在客户端进行调用获取缓存中数据客户端,例如比较常用的PHP客户端.这里,记录一下安装服务器端的 ...

  5. 使用UltraISO制作Windows 10启动U盘

    1.从官方网站下载制作工具UltraISO:http://cn.ultraiso.net/uiso9_cn.exe 这是个试用版,但也足够用一次了. 2.在电脑上插入一块U盘,容量最好不少于8GB,接 ...

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

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

  7. 如何在Windows 10安装和使用Linux的Bash shell

    转载自:百度经验 Windwos 10 的周年更新为开发人员提供一个大的新功能:一个完整的,基于Ubuntu的Bash shell中,可以直接在Windows上运行Linux软件. 这使得“Linux ...

  8. 在Linux下制作Linux&windows启动盘

    在Linux下制作Linux&windows启动盘 如何在Linux-mint环境下,制作其他Linux发行版的UEFI启动盘,以及Windows10的UEFI模式启动盘. 对于U盘的操作,可 ...

  9. VMware,win7与linux centos6.4文件互传,linux下挂载windows共享文件夹,vmware tools安装方法

    本方法是以win7,VMware9.0.1 ,centos6.4为基础实验的. 对于linux的初级使用阶段,都会Windows中使用linux虚拟机VMWare或者其它的.在Windows与linu ...

随机推荐

  1. LOJ#2087 国王饮水记

    解:这个题一脸不可做... 比1小的怎么办啊,好像没用,扔了吧. 先看部分分,n = 2简单,我会分类讨论!n = 4简单,我会搜索!n = 10,我会剪枝! k = 1怎么办,好像选的那些越大越好啊 ...

  2. Numpy的学习

    Numpy numpy(Numerical Python extensions)是一个第三方的Python包,用于科学计算.这个库的前身是1995年就开始开发的一个用于数组运算的库.经过了长时间的发展 ...

  3. 数据库基础——跟着【克里斯学SQL】哈哈。

    前言: 很多同学呀,对数据库的操作仅仅只能在于Navicat 等第三方可视化的工具上面!!!! 这是可怕的,数据库的操作十分的重要,甚至,他是程序最重要的部分. 面试经常问题, 了解那个数据? 写一个 ...

  4. 2018-2019-2 20165232《网络对抗技术》Exp1 缓冲区溢出实验

    2018-2019-2 20165232<网络对抗技术>Exp1 缓冲区溢出实验 实验点1:逆向及Bof基础实践 实践任务 用一个pwn1文件. 该程序正常执行流程是:main调用foo函 ...

  5. Linux性能优化实战:系统的swap变高(09)

    一.实验环境 1.操作系统 root@openstack:~# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu ...

  6. Linux记录-sftp上传大文件

    1.Alt +P 进入sftp会话 2.pwd显示linux目录 lpwd显示windows目录 3.lcd切换windows目录 cd切换linux目录 4.put上传 5.get下载 6.help ...

  7. vue md5

    安装 cnpm install js-md5 --save 使用 import md5 from 'js-md5' md5('要加密的内容')

  8. Optimal Marks SPOJ 839

    这题远超其他题非常靠近最小割的实际意义: 割边<=>付出代价<=>决定让两个点的值不相同,边权增加 最小割<=>点的值与s一个阵营的与s相同,与t一个阵营的与t相同 ...

  9. Storage 002 电商数据库设计

    [用户模块] 账户登录:邮箱/用户名/已验证手机 密码 如果将所有字段都放到一张表里存储? 数据插入异常        只想插入一个值的  由于需要主键信息,插入的一行变成新的一行,和原来的记录无关. ...

  10. day12 函数对象,名称空间与作用域

    """ 今日内容: 1.函数参数传值细节 2.三元表达式 3.列表及字典推导式 4.函数对象 5.名称空间与作用域 6.函数的嵌套定义初识 ""&qu ...