zoukankan      html  css  js  c++  java
  • 揭秘 Win8 电脑 OEM 分区创建

    现在预装 Win8 的电脑大多是采用新版 UEFI 固件 + GPT 格式磁盘,不再像以前的 BIOS + MBR。采用 UEFI 和 GPT 的好处多多,例如可实现安全启动等更多新特性,和支持更多的硬盘分区、更大的分区容量。

    像戴尔等品牌笔记本会有一些系统启动前就可以运行的诊断工具,其实这些工具往往是存放在硬盘的一个隐藏的OEM分区里的。如果自行重装系统时不小心将其删除,那么即便从别处拷贝到了其中的程序文件,又该怎么恢复分区的 OEM 隐藏属性呢?

    对于 MBR 格式的硬盘,通过百度搜素,我们就可以得到其解决方法;而对于 GPT 格式的硬盘,网络上尚未出现有效的解决方案,在下文中,我将揭秘如何对 GPT 硬盘应用 OEM 分区属性。

    先来快速回顾一下如何在 MBR 磁盘上设置 OEM 分区吧:在 Diskpart 命令中,对选中的分区执行"create partition primary id=xx size=xx"即可,其中 id 标识了 OEM 厂商,例如 id=DE 就是向 Windows 声明它是戴尔的 OEM 分区。关于更多的厂商代码说明,可以执行命令"help create par pri"来了解:

    那么对于 GPT 格式的磁盘呢?

    上面那条命令当然不再适用了。是不是像网上说的那样,只能用 OEM 送的一些"一键恢复"软件彻底格式化并还原磁盘分区,或者用 Ghost 重载以前的硬盘备份才能设置了呢?国外的论坛的一些回答也指明了得联系 OEM 去恢复。其实答案是我们自己也可以设置,而且一样是用 Diskpart 这个系统自带的工具,只不过它很容易被大家忽略了。

    新版的 Diskpart 里面有一个命令是"gpt"。利用这个命令和对应的分区属性代码,就可以轻松设置其属性。例如我们需要设置 OEM 分区属性,让 Windows 自动隐藏该分区,那么我们可以在创建一个主分区 (create par pri size=xxx) 之后,执行"Gpt attributes=0x0000000000000001"即可将其设置为 OEM 分区。

    这里的 0x0000000000000001是啥意思呢?我们可以通过执行"help gpt"来查看:

    这里,除了利用0x0000000000000001属性将某个主分区设置为 OEM 分区外,我们还可以通过其他代码对分区应用其他属性:

    64位的ID

    效果

    0x0000000000000001

    将该分区标记为必需分区 / 设置 OEM

    0x8000000000000000

    设置为默认不为其分配盘符

    0x4000000000000000

    隐藏卷上分区(挂载管理器将检测不到)

    0x2000000000000000

    申明分区为另一分区的卷影副本

    0x1000000000000000

    设置为只读以阻止数据写入

    要取消某个已应用的属性,只需在 gpt <64位属性ID> 这条命令中的属性ID前加一个减号"-"。不排除微软在下个版本的 Windows 中,会添加更多针对 GPT 磁盘的新属性。

  • 相关阅读:
    BZOJ4896 THUSC2016补退选(trie)
    BZOJ4892 Tjoi2017dna(后缀数组)
    BZOJ4890 Tjoi2017城市
    BZOJ4888 Tjoi2017异或和(树状数组)
    BZOJ4887 Tjoi2017可乐(动态规划+矩阵快速幂)
    BZOJ4883 棋盘上的守卫(环套树+最小生成树)
    BZOJ4881 线段游戏(二分图+树状数组/动态规划+线段树)
    BZOJ4878 挑战NP-Hard(dfs树)
    BZOJ5466 NOIP2018保卫王国(倍增+树形dp)
    BZOJ4873 Shoi2017寿司餐厅(最小割)
  • 原文地址:https://www.cnblogs.com/mvperic/p/2981061.html
Copyright © 2011-2022 走看看