利用BitLocker和vhdx创建一个有加密的Win10系统
如果电脑不支持TPM加密BitLocker,就无法对系统盘进行全盘加密。
可以采用一个变通的方法:创建一个vhdx,将这个虚拟磁盘进行BitLocker加密,然后在这个盘里安装操作系统,最后把vhdx添加到bootmanager。
这样一个系统是原来的Windows(Vista以上的系统,建议是Win10 1511以上版本),一个是vhdx的Windows。
启动vhdx的Windows时候要求输入BitLocker密码再进入系统。
具体内容如下:
win10.vhdx - BitLocker 加密的 Win10 待部署虚拟磁盘。
注意:所有操作在Windows 10/2016系统下完成,因为BOOTMGR不支持旧的版本,所以XP~Win7不能使用。 使用:
1、备份bcd,在管理员模式下的命令提示符下输入:
C:\> bcdedit /export %userprofile%\desktop\backup1.bcd
这条命令是备份到桌面,建议马上复制到其他安全的地方。
注:可以用bootice来做bcd的备份和恢复,bootice恢复要比bcdedit的import参数好用。
2、复制 win10.vhdx 到某个剩余空间较大的分区里(制作的时候设置是100GB),
可以是某个文件夹下,然后双击 win10.vhdx 载入,输入解锁密码。
3、创建BCD引导项。注意:应该在原Win10系统下做bcdboot命令。
假设 win10.vhdx 成功载入J:盘,在管理员模式下的命令提示符下输入:
C:\> bcdboot j:\windows /d /addlast
如果不加 /d /addlast 参数,将采用vhdx引导,表现为启动电脑时要先bitlocker解锁,才能看见菜单。
添加 /l zh-cn 参数,可设置其引导界面语言为中文;添加 /s c: 参数将vhdx系统的引导安装到c:盘。
4、重启系统,选择进入win10.vhdx所在卷引导项,会出现bitlocker,输入解锁密码。
注意每次出现引导菜单的时候,都要选择进入win10.vhdx所在卷的引导项,直到安装好 Windows。
5、更改引导项名称
进入vhdx的Windows,在管理员的命令提示符下输入:
显示名称
C:\> bcdedit /set {current} description "Windows 10 VHD"
界面语言:喜欢英文可以设置为 en-US
C:\> bcdedit /set {current} locale zh-CN
两个选项:Legacy字符方式界面,Standard会显示Metro图形界面。
C:\> bcdedit /set {current} bootmenupolicy Legacy 制作:
准备:Win10 ISO, imagex
先将Win10 ISO载入虚拟光驱,这里假设为G:盘
1、制作vhdx(假设vhdx分配到J:盘)
C:\> diskpart
create vdisk file="D:\win10.vhdx" maximum=102400 type=expandable
attach vdisk
create partition primary
format fs=ntfs label="win10" quick
active
assign letter=j
exit
2、启用bitlocker
C:\> BitLockerWizard.exe J: T
根据向导完成加密。如果未出现BitLocker加密向导界面,右键J:盘,Turn On BitLocker
3、写入install.wim数据
C:\> dism /get-imageinfo /imagefile:G:\sources\install.wim
C:\> imagex /apply G:\sources\install.wim 1 J:\
4、制作完成
C:\> diskpart
list vdisk
select vdisk file="D:\win10.vhdx"
detach vdisk
exit
完成后弹出虚拟光驱,备份win10.vhdx文件。 删除:
1、从bcd删除引导项
注意:删除前做好bcd备份。
C:\> bcdedit /enum
C:\> bcdedit /delete GUID
2、删除win10.vhdx文件。
--
利用BitLocker和vhdx创建一个有加密的Win10系统的更多相关文章
- Spring MVC 学习笔记2 - 利用Spring Tool Suite创建一个web 项目
Spring MVC 学习笔记2 - 利用Spring Tool Suite创建一个web 项目 Spring Tool Suite 是一个带有全套的Spring相关支持功能的Eclipse插件包. ...
- 【Unity Shaders】Reflecting Your World —— 在Unity3D中创建一个简单的动态Cubemap系统
本系列主要参考<Unity Shaders and Effects Cookbook>一书(感谢原书作者),同时会加上一点个人理解或拓展. 这里是本书所有的插图.这里是本书所需的代码和资源 ...
- 创建一个显示所有预定义系统颜色的ListBox
原文 Creating a ListBox that Shows All Predefined System Colors 该System.Windows.SystemColors类包含了一系列揭露当 ...
- 如何利用Visual studio 2010创建一个ASP网站?
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="UserLogin.aspx.c ...
- iOS之创建一个常驻线程
// 当创建一个线程,并且希望它一直存在时,但往往我们创建的线程都是执行完成之后也就停止了,不能再次利用,那么如何创建一个线程可以让他可以再次工作呢,这个时候就需要使用到RunLoop了.下面的是我写 ...
- Java集合-5. (List)已知有一个Worker 类如下: 完成下面的要求 1) 创建一个List,在List 中增加三个工人,基本信息如下: 姓名 年龄 工资 zhang3 18 3000 li4 25 3500 wang5 22 3200 2) 在li4 之前插入一个工人,信息为:姓名:zhao6,年龄:24,工资3300 3) 删除wang5 的信息 4) 利用for 循
第六题 5. (List)已知有一个Worker 类如下: public class Worker { private int age; private String name; private do ...
- 利用Zynq Soc创建一个嵌入式工程
英文题目:Using the Zynq SoC Processing System,参考自ADI的ug1165文档. 利用Zynq Soc创建一个嵌入式工程,该工程总体上包括五个步骤: 步骤一.新建空 ...
- 利用HTML5与jQuery技术创建一个简单的自动表单完成
来源:GBin1.com 在线演示 在线下载 谷歌快速搜索自带大量自动完成插件——库中甚至还有一个附带的jQuery UI共享选项.然而今天我要寻找一个替代的解决方案.由DevBridge开发的j ...
- 创建一个欢迎 cookie 利用用户在提示框中输入的数据创建一个 JavaScript Cookie,当该用户再次访问该页面时,根据 cookie 中的信息发出欢迎信息。
创建一个欢迎 cookie 利用用户在提示框中输入的数据创建一个 JavaScript Cookie,当该用户再次访问该页面时,根据 cookie 中的信息发出欢迎信息. <html> & ...
随机推荐
- 如何编译Less
什么是LESS LESSCSS是一种动态样式语言,属于CSS预处理语言的一种.它编译后就是CSS了,大名鼎鼎的前端框架BootStrap就是用这个语言写的 下面示范下怎么用LESS编译成CSS,尽量简 ...
- 查找SQL数据表或视图中的字段属性信息
一.只支持表,非常牛逼的 SELECT a.name,(case when (SELECT count(*) FROM sysobjects WHERE (name in (SELECT name F ...
- C# 基础(4)
Ref 按地址传递,引用传递:即可以往外返值,也可以对内传值. Out是用于传出值, Ref是双向的,即可以传入,也可以传出. 在传参过程中,如果参数有out,那么改变方法中参数的值,调用者方法中变量 ...
- bcb安装控件方法汇总
1.BCB 菜单: Project->Options->Packages->Add[喝小酒的网摘]http://blog.const.net.cn/a/8496.htm如果是BCB6 ...
- Form居中显示
(1)居中显示 Form1->Position = poScreenCenter; (2)无边框显示 Form1->BorderStyle = bsNone; (3)显示透明性 Form1 ...
- Digit Root ---- 余九定理
题目:hdu1013, hdu1163, 51nod1116. or dr(n) = (n-1)%9+1. 其中,n-1是为了将结果0-8匹配到1-9. Reference: [1] https:// ...
- Neo4j 2.0 M4 发布
Neo4j 发布了 2.0 的第四个里程碑版本,该版本要求 Java 7 的支持.详细的改进记录请看发行通知. Neo是一个网络——面向网络的数据库——也就是说,它是一个嵌入式的.基于磁盘的.具备完全 ...
- RabbitMQ 连接断开处理-自动恢复
Rabbitmq 官方给的NET consumer示例代码如下,但使用过程,会遇到connection断开的问题,一旦断开,这个代码就会报错,如果你的消费者端是这样的代码的话,就会导致消费者挂掉. u ...
- 用c#开发微信 (18) 多客服
微信官方的多客服接口原理是通过用户发送的信息,开发者服务器返回一条指定类型的响应信息,使用户的对话状态切换到官方的多客服状态(持续一段时间),这段时间内用户发送的所有信息都不会到达开发者的服务器,而是 ...
- Dynamic CRM 2013学习笔记(二十七)无代码 复制/克隆方法
前面介绍过二种复制/克隆方法:<Dynamic CRM 2013学习笔记(十四)复制/克隆记录> 和<Dynamic CRM 2013学习笔记(二十五)JS调用web service ...