Windows To Go入坑记录
什么是Windows To Go?
https://en.wikipedia.org/wiki/Windows_To_Go
微软为了解决企业用户的需求而推出,可以在u盘或者移动硬盘启动window系统,顾名思义,移动的windows。
那这个东西有啥用呢?
1.移动办公
比如程序员,有时候公司pc开发,有时候家里pc开发,有了win to go,不需要再部署两套系统、两套开发环境,即插即用。
提供除了笔记本之外的另一种选择。
2.多系统
比如MacBookPro,用来开发没话说,搞两把游戏就要死人了,解决方案就是装windows双系统。
如果用parallels desktop之类的虚拟机,性能不足;
如果用macos自带的bootcamp,
(1).装到本机,太浪费了,mbp的ssd太贵。。。
(2).装到移动硬盘,可以用,但是没有通用性,插到别的pc上用不了
win to go,可以实现:公司pc+家里pc+mbp通用
硬件准备
win to go的性能依赖于硬盘介质、传输接口协议。
最佳情况,当然是雷电3接口以及支持雷电3的ssd,然而太贵,非普通群众考虑范围。
差一档次,就是usb3.1gen2接口,全速10gbps,也就是大约1000MB/s:
不建议买现成的ssd移动硬盘,比如三星t5,速度也就不到500m每秒,价格太浮夸;
还是自己买硬盘盒和ssd组装性价比更高,想达到usb3.1gen2的满速,只能上NVMe协议的ssd(sata3协议的ssd最高6gbps);
不过略尴尬的是,大多数NVMe协议的ssd实际速度是超过10gbps的,所以不要买太好的,浪费性能用不上。
最近ssd一直降价,正是入手时机,
奥睿科(ORICO)外置NVME M.2转Type-c移动硬盘盒 PCM2-C3,182块
阿斯加特 Asgard AN1024NVMe-M.2/80 1TB SSD固态硬盘,899块
加起来一千冒点儿头。
硬盘盒附送c2c,c2a两条数据线,如果自己买数据线,一定要买支持usb3.1gen2的。
软件安装
系统镜像选择cn_windows_10_enterprise_ltsc_2019_x64_dvd_d17070a8.iso,下载地址:
企业版的好处是去掉了商店、小娜这些乱七八糟的东西,而且系统更新极少,不像专业版,隔三差五更新重启了。。。
安装工具:https://bbs.luobotou.org/thread-761-1-1.html
萝卜头专业解决win to go的问题,他们家的工具还是很好用的。

左侧:
指定加载的镜像,指定要写入的设备
右侧:
1.建议选择vhd或者vhdx,也就是虚拟磁盘的格式,据说软件兼容性更好;
而且传统模式的系统,可能无法更新;
另外vhd模式,容易做备份还原;
至于硬盘读写性能方面,三者几乎没有差距。
2.启动模式选择UEFI+GPT,有兴趣的自行百度
3.虚拟磁盘大小建议自己设定,自动设定是40g

4.分区

默认分区格式为ntfs,也可以不分,以后再用其他分区工具自行分区
我这里分了3块,系统区、数据区,还有一块留给mbp的timemachine
点击创建,等着就好。

win to go已经制作完毕,重启你的机器,修改启动顺序,从移动硬盘引导,就ok了。
windows自带常用硬件驱动,联网后还可以自己下载驱动,所以除了mbp这样的变态之外,大部分pc或者笔记本,应该是插上就能用了。
mbp的bootcamp驱动
1.需要在mac下打开启动转换助理

把下载内容拷贝到移动硬盘里边,
mac只能读不能写入ntfs,可以使用tuxera或者paragon写入
如果手头没有,也可以把数据分区格式化成win/mac都支持的exfat格式,然后再拷贝进去
2.mbp2018的t2安全选项
重启,按cmd+r,进入macos实用工具界面
菜单处选择


3.进入win10
再次重启,按住option

选择efi boot,进入win10
因为没有驱动,触摸板、键盘都是用不了的,需要使用外接键盘或者鼠标,
找到拷贝好的驱动程序目录,执行WindowsSupport/BootCamp/Setup.exe
装好以后,重启。
后面不需要再按住option启动,插入usb的时候,就会进入win10,不插则是mac。
4.cpu太热
mbp跑win to go的时候,额头烫的能煮鸡蛋
可以在电源选项里边,把最大处理器状态调整为70%~80%
5.Win10任务栏托盘上会出现Boot Camp图标,在这可以配置键盘或者触控板,还可以指定重启到macos
当把win to go带到其他pc上,这个图标依然健在,只是不能用而已
mbp的timemachine
1.分区的时候说了,单独留了一块给时间机器用,
在mac下,系统偏好设置->timemachine,指定备份磁盘,会自动格式化对应分区,然后执行备份即可。
2.备份完成以后,这块移动硬盘,实际上有了两个引导,一个是win10,一个时间机器的备份mac
都可以通过efi boot进入
调整vhd的大小




改大没啥问题,只要你的硬件容量够;改小要注意数据安全
vhd的备份与还原
vhd有一个差分机制,很有意思
https://bbs.luobotou.org/thread-7644-1-1.html
提炼一下就是,如果怕系统损坏,那么在制作好的vhd启动盘基础上,差分一个子盘出来,平常使用这个子盘。
假设win to go在G:\wtg.vhdx,改名成G:\wtg.base.vhdx,然后使用bootice差分一个新的vhd:G:\wtg.vhdx;
那么引导进入的实际就是这个子盘,刚创建的子盘体积很小,就像一个链接,实际内容都是读取的母盘;
一旦系统有改变,改变的部分就存储在了子盘,母盘是不会改动的。
使用一段时间后,如果系统搞挂了或者不可收拾,那么就丢弃当前的子盘,从母盘重新差分出来一个即可,
所以这种还原方式代价很小,可以说是秒还原了;
如果觉得这段时间的改动可以接受,那么可以把子盘合并到母盘里边去,也可以在子盘的基础上再次差分出一个孙子盘来使用,
据说最多可以差分7个层级,并且性能几乎不受影响。
我认为一般情况下,搞个母盘和子盘,每隔一段时间,去丢弃或者合并就可以了,不需要搞那么多层。
另外,如果怕移动硬盘也挂掉的话,可以把母盘拷贝到其他设备上,再做个备份,这样就更安全了。
win to go 注意事项
1.可以睡眠,但不能休眠
默认并不启用休眠功能,虽然可以通过组策略进行配置,启用休眠,但不建议这样做。
使用一个 USB 设备在不同硬件配置的电脑上运行,硬件差异可能会非常大,因此默认并不启用休眠功能。就算启用,也只能在同一台电脑上使用该功能。如果在一台电脑上休眠,随后再另一台电脑上启动,休眠状态会被自动删除。这将导致所有未保存的会话状态全部丢失。
2.关于拔出冻结
使用过程中如果拔出usb,理想情况会系统冻结,把设备插回,系统继续运行
但是很多情况下会蓝屏死机,可以按照这个讨论解决
https://bbs.luobotou.org/forum.php?mod=viewthread&tid=12453
Windows To Go入坑记录的更多相关文章
- c#调用c++ dll 入坑记录
1.DLL引用坑 [DllImport("NetDLL.dll", CharSet = CharSet.Ansi, CallingConvention = CallingConve ...
- 【学习笔记】windows安装jhipster踏坑记录
序: 入职新公司第二天了,本来第一天是配置环境来着,配了一下午也没搞成那个jhipster的安装,每次以为应该正常的时候都是不对,yo是yeoman的指令,但是我是使用yarn管理的yeoman 纠结 ...
- IDEA+maven+javafx(java 1.8)入坑记录
序 好久没写博客了,主要是因为懒,写博客真的是个难坚持的事.但今天登上来看了看,之前记录ctf写的wp竟然点击量这么多了,突然让我有了继续写下去的动力. 这段时间遇到了好多事,中间也有想过写几篇文章记 ...
- React Native入坑记录
1.render中如果使用props,直接用this.props.xxx,如果是在JSX中,用{this.props.xxx} 2.警告each child in an array or iterat ...
- windows 安装 python 踩坑记录
官方不建议使用 64 bit python,容易出各种问题 Unable to find vcvarsall.bat 凡是安装与操作系统底层相关的 python 扩展都会遇到这个问题,如 PIL,Pi ...
- vue element InfiniteScroll 无限滚动 入坑记录
select_law_by_tag() { this.laws_loading.is_loading = true; this.laws_loading.no_more = false; this.e ...
- Angular 从入坑到挖坑 - Angular 使用入门
一.Overview angular 入坑记录的笔记第一篇,完成开发环境的搭建,以及如何通过 angular cli 来创建第一个 angular 应用.入坑一个多星期,通过学习官方文档以及手摸手的按 ...
- Angular 从入坑到挖坑 - 组件食用指南
一.Overview angular 入坑记录的笔记第二篇,介绍组件中的相关概念,以及如何在 angular 中通过使用组件来完成系统功能的实现 对应官方文档地址: 显示数据 模板语法 用户输入 组件 ...
- Angular 从入坑到挖坑 - 表单控件概览
一.Overview angular 入坑记录的笔记第三篇,介绍 angular 中表单控件的相关概念,了解如何在 angular 中创建一个表单,以及如何针对表单控件进行数据校验. 对应官方文档地址 ...
随机推荐
- Eclipse插件:mybatis generator的使用步骤
一.首先,安装eclipse插件 Help--Eclipser Marketplace中查找:Mybatis Generator 1.3.5安装 二.新建project New--other--查找如 ...
- Spring 数据处理框架的演变
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 定量分析的成败在很大程度上取决于采集,存储和处理数据的能力.若能及时地向业务决策者提供深刻并可靠的数据解读,大数据项目就会有更多机会取得成功 ...
- Mongo 专题
什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB 旨在为WEB应用提供 ...
- DOM元素的Attribute(特性)和Property(属性) 【转载】
1.介绍: 上篇js便签笔记http://www.cnblogs.com/wangfupeng1988/p/3626300.html最后提到了dom元素的Attribute和Property,本文简单 ...
- Linux下快速比较两个目录的不同
曾多次想要在Linux下比较目录a和目录b中文件列表的差别,然后对目录a比目录b中多出的文件.少掉的文件分别做处理.但是,在网上搜索了多次也都没找到能直接处理好的工具. 所以想了很多不少方法,自我感觉 ...
- watch.go
package: } ,) ), ), ) ) , ];]]] :] ].Err()]:] ].Kv.ModRevision w.resuming = append(w.resumin ...
- Java基础-常用的String方法
先从String的new的方式 说起 这是面试题里面经常出现的 算是老套路之一 就是 比较下列两个的变化 两种实例化的区别 第一种String name1 = "好人";Strin ...
- [日志分析] Access Log 日志分析
0x00.前言: 如何知道自己所在的公司或单位是否被入侵了?是没人来“黑”,还是因自身感知能力不足,暂时还没发现?入侵检测是每个安全运维人员都要面临的严峻挑战.安全无小事,一旦入侵成功,后果不堪设想. ...
- C语言sprintf和sscanf函数用法
以前刚用C语言的时候,觉得字符串很难处理,后来用多了,发现其实并非如此,C语言也提供了许多函数给程序员使用.今天记录一下两个常用的两个字符串处理函数:sprintf和sscanf 1. sprintf ...
- com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server 报错问题
com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known serve ...