今年春节回家期间,我需要将家里的一台安装了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-dev、libwxgtk3.0-dev、wx-common、wx3.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. Springboot集成ECharts

    ECharts 是中国的,也是世界的! ECharts官网: ECharts,一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前 绝大部分浏览器(IE8 ...

  2. ES6.3.2 副本失败处理

    ES6.3.2 副本失败处理 副本的失败处理对理解ES的数据副本模型很有帮助.在ES6.3.2 index操作源码流程的总结中提到:ES的写操作会先写主分片,然后主分片再将操作同步到副本分片.本文给出 ...

  3. SQL SERVER服务器登录名、角色、数据库用户、角色、架构的关系

    原创链接:https://www.cnblogs.com/junfly/articles/2798023.html SQL SERVER 基础教程中关于服务器登录名.服务器角色.数据库用户.数据库角色 ...

  4. 六十、linux 编程—— I/O 多路复用 select

    60.1 介绍 60.2 例子 echo_tcp_server_select.c #include <netdb.h> #include <netinet/in.h> #inc ...

  5. mysql—常用查询语句总结

    关于MySQL常用的查询语句 一查询数值型数据: ; 查询谓词:>,=,<,<>,!=,!>,!<,=>,=< 二查询字符串 SELECT * FROM ...

  6. request.getParameterValues 出现 [Ljava.lang.String;@ 错误

    在实现简单的本地登录系统时,需要把page1.jsp的表单显示在page2.jsp中. 其中获取page1.jsp表单的办法就是在页面1的<form>中加入action="pag ...

  7. 20175306 MyCP博客总结

    课后必做题:MyCP总结 cp命令了解: · 作用:cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中.若同 ...

  8. 通过scrollTop,使子元素滚动至指定位置

    想实现这样的一个功能,点击子元素,让元素滚动至指定位置,怎么实现呢? 在代码实现之前,先了解下相关关键点. 1.scrollHeight 属性 通过 scrollHeight 属性可获得子元素的滚动高 ...

  9. JustSoso笔记

    当时想了大半天,想着到底要怎么绕过MD5呢,结果还是没做出来,即使问了学长,自己还是漏了一个步骤,file=hint.php,特此笔记,又学到了个引用变量的知识 学习自 https://www.ctf ...

  10. CentOS7中启动Chrome报错ERROR:zygote_host_impl_linux.cc

    网上查的解决了问题 1. 需要安装libexif 说明我已经安装了libexif 2. 从安全角度考虑,Chrome不应在root环境下运行,如果某些原因必须以root身份运行Chrome,可以运行下 ...