1. 简述
    vmware可以指定一个外部文件作为其虚拟机的BIOS,那么就可以通过把品牌机的SLIC2.1的信息写到这个BIOS文件中来激活Windows 7. 只要能够生成这个BIOS文件,其余的步骤就和兼容机刷BIOS永久激活Windows 7的方法一样了,网上教程到处可见,比如这篇就是个不错的教程。
  2. 基本环境
    1. 主机操作系统:Ubuntu 13.04 64bit
    2. 虚拟机软件:vmware player for linux 64bit
    3. 目标虚拟机:Windows 7 64bit旗舰版
  3. 所需工具
    1. SLIC Toolkit V3.2 (用来验证SLIC是否成功写入)
      下载地址:http://www.bios.net.cn/down/BIOSsggj/2009-12-04/448.html
    2. rw-everything
      下载地址:http://rweverything.com/
    3. PhoenixTool (需要.Net Framework 2.0)
      下载地址:http://www.sendspace.com/file/178p30
  4. 流程
    1. 第一步:提取vmware的bios
      在Ubuntu中, vmware的bios在/usr/lib/vmware/bin/vmware-vmx中。用objcopy提取bios440section。
      objcopy vmware-vmx -O binary -j bios440 --set-section-flags bios440=a bios440.rom.z

      注:这里我先把/usr/lib/vmware/bin/vmware-vmx拷贝到里临时目录下。

      如果不能提取,可以用objdump命令:
      objdump -h vmware-vmx | grep bios440

      确认下bios440 section是否存在或名称是否正确(有些版本的vmware section名字是.bios440)。得到结果如下:
      28bios440 00033d47 0000000000000000 0000000000000000 00d6c0d0 2**0
      另外也可以根据objdump的信息用dd命令把bios440 section dump出来。
      dd skip=14074064 bs=1 count=212295 ibs=1 obs=1 if=vmware-vmx of=bios440.rom.z


      其中14074064对应与objdump中00d6c0d0,即bios440 seciton在vmware-vmx中起始位置,而212295是大小,对应objdump的00033d47段。
      用下面的命令对刚才提出的bios440.room.z解压:
      <div class="dp-highlighter bg_plain" style="font-family: Consolas, 'Courier New', Courier, mono, serif; font-size: 12px; width: 621.713px; overflow: auto; padding-top: 1px; margin: 18px 0px !important; background-color: rgb(231, 229, 220);"><div class="bar" style="padding-left: 45px;"><div class="tools" style="padding: 3px 8px 10px 10px; font-stretch: normal; font-size: 9px; line-height: normal; font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; color: silver; border-left-width: 3px; border-left-style: solid; border-left-color: rgb(108, 226, 108); background-color: rgb(248, 248, 248);"><strong>[plain]</strong> <a target=_blank href="http://blog.csdn.net/royer/article/details/11313611#" class="ViewSource" title="view plain" style="color: rgb(160, 160, 160); text-decoration: none; border: none; padding: 1px; margin: 0px 10px 0px 0px; display: inline-block; width: 16px; height: 16px; text-indent: -2000px; background-image: url(http://static.blog.csdn.net/scripts/SyntaxHighlighter/styles/images/default/ico_plain.gif); background-attachment: initial; background-color: inherit; background-size: initial; background-origin: initial; background-clip: initial; background-position: 0% 0%; background-repeat: no-repeat;">view plain</a><span class="tracking-ad" data-mod="popu_168"> <a target=_blank href="http://blog.csdn.net/royer/article/details/11313611#" class="CopyToClipboard" title="copy" style="color: rgb(160, 160, 160); text-decoration: none; border: none; padding: 1px; margin: 0px 10px 0px 0px; display: inline-block; width: 16px; height: 16px; text-indent: -2000px; background-image: url(http://static.blog.csdn.net/scripts/SyntaxHighlighter/styles/images/default/ico_copy.gif); background-attachment: initial; background-color: inherit; background-size: initial; background-origin: initial; background-clip: initial; background-position: 0% 0%; background-repeat: no-repeat;">copy</a></span><div style="position: absolute; left: 557px; top: 1906px; width: 18px; height: 18px; z-index: 99;"></div><span class="tracking-ad" data-mod="popu_169"> </span></div></div><ol start="1" style="padding: 0px; border: none; color: rgb(92, 92, 92); margin: 0px 0px 1px 45px !important; background-color: rgb(255, 255, 255);"><li class="alt" style="border-style: none none none solid; border-left-width: 3px; border-left-color: rgb(108, 226, 108); list-style: decimal-leading-zero outside; color: inherit; line-height: 18px; margin: 0px !important; padding: 0px 3px 0px 10px !important;"><span style="margin: 0px; padding: 0px; border: none; color: black; background-color: inherit;"><span style="margin: 0px; padding: 0px; border: none; background-color: inherit;">perl -e 'use Compress::Zlib; my $v; read STDIN, $v, 212295; $v = uncompress($v); print $v;' < bios440.rom.z > bios440.rom  </span></span></li></ol></div>

      这里212295就是bios440.rom.z的文件大小,vmware版本不同,大小可能略有不同。
      这样的的bios440.rom就是vmware的 512K 的虚拟机BIOS了。
    2. 第二步:用rw-everything提取ACPI Tables
      启动虚拟机,运行rw.exe .选Access菜单->ACPI Tables,从ACPI Tables的子窗口上选Save All按钮(或Ctrl+F2),保存文件名就用缺省的即可AcpiTbls.rw 。如图:
    3. 第三步:用PhoenixTool合并SLIC生成bios
      vmware 虚拟机的BIOS是属于Phoenix类的。感谢PhoenixTool的作者,有了这个工具,就不必再用Phoenix BIOS Editor和 WinHex繁琐无比的操作来生成Phoenix的bios了。
      1. 在Original里输入从vmware-vmx里抽出的bios440.rom。 等待PhoenixTool完成分析。
      2. 在Manufacturer里选择厂商,这个取决于你准备好的SLIC2.1和OEM证书文件是那个厂商的。
      3. 在SLIC File里输入你的SLIC2.1的文件。
      4. 在RW File里输入刚才rw-everything生成的AcpiTbls.rw .

      5. 点击Advanced按钮,出现可能会刷砖的警告,点“是”,出现advanced option对话框,确保”Only alter RSDT and XSDT tables”选中,点Done按钮退出设置。

      6. 点Go按钮开始生成。
        成功生成的话,新的BIOS文件会在bios440.rom所在的目录里,文件名是bios440_SLIC.rom。
    4. 第四步:修改.vmx文件
      虚拟机关机。用文本编辑软件打开要修改的虚拟机对应的.vmx文件,在文件尾加上:
      bios440.filename = “bios440_SLIC.rom”
      理论上bios440_SLIC.rom可以放在任何目录,只要配置文件写上绝对路径即可。
      重新启动虚拟机。运行SLIC Toolkit V3.2检查SLIC2.1是否成功加入BIOS。如下图红框中字样表示成功提取到SLIC,厂商是LENOVO,型号TC-5K,版本2.1.
最后提供一个各品牌SLIC和证书的下载地址。http://www.360doc.com/content/12/0229/14/1309227_190545700.shtml。
另外,如果需要序列号的话,请注意序列号要和你的windows版本匹配,比如你的BIOS烧的是联想的SLIC,Windows7是旗舰版,则需要找个联想OEM版Windows 7旗舰版的序列号,否则可能还是不能成功激活Windows。
原文地址: http://blog.csdn.net/royer/article/details/11313611

Linux下vmware虚拟机中永久激活Windows7相关推荐

  1. Linux下 Vmware虚拟机根目录空间疒充

    文章目录 `扩容很繁琐,请耐心使用哟!` Linux下 Vmware虚拟机根目录空间疒充 第一步.扩容分配的硬盘空间 第二步.使用 Linux下的 fdisk工具进行分区 第三步.格式化该新添加的分区 ...

  2. 解决4K屏下VMware虚拟机中界面太小问题

    文章目录 前言 一.电脑环境 二.打开虚拟机下的Kali-Linux 二.解决办法 前言 VMware虚拟机中,kali-linux系统显示字体.图标很小如何解决: 一.电脑环境 笔者的电脑是惠普星1 ...

  3. Linux下VMware虚拟机报Could not open /dev/vmmon: No such file or directory. Please make sure that the kern

    sudo vmware-modconfig --console --install-all

  4. 为VMware虚拟机中的Linux系统设置固定IP的方法

    这篇文章主要介绍了为VMware虚拟机中的Linux系统设置固定IP的方法,包括以nat方式固定ip上网的方法,需要的朋友可以参考下 1.配置DNS: 修改 /etc/resolv.conf 文件,添 ...

  5. linux把虚拟机上的文件共享,[转]windows中vmware虚拟机中的Linux如何进行文件的共享...

    http://www.osedu.net/article/linux/2011-07-13/254.html 目前,有很多用户使用Windows操作系统进行日常办公,服务器系统采用Linux操作系统, ...

  6. vmware虚拟机中的Linux桥接模式上网

    CentOS下VMware用桥接模式,静态ip上外网 15年的时候,写过一篇博客:VMware中网络设置之Bridged  也是关于linux下vmware桥接模式.静态ip上外网的配置,不过当时更多 ...

  7. 利用ZooKeeper框架在Vmware虚拟机中搭建3台Linux分布式集群

    利用ZooKeeper框架在Vmware虚拟机中搭建3台Linux分布式集群 概述 配置 具体步骤 node1虚拟机制作 安装及固定IP 关闭防火墙 JDK安装 关闭SELinux 虚拟机克隆 固定I ...

  8. VMware虚拟机中安装Linux系统

    文章目录 VMware虚拟机中安装Linux系统 一.系统镜像 二.安装系统 VMware虚拟机中安装Linux系统 一.系统镜像 阿里镜像地址: https://developer.aliyun.c ...

  9. Linux(二):VMware虚拟机中Ubuntu安装详细过程

    Linux(二):VMware虚拟机中Ubuntu安装详细过程 文章目录 1 准备 2 安装 2.1 虚拟机的建立 2.2 虚拟机安装Ubuntu系统 2.3 虚拟机设置 3 完成 1 准备 1.操作 ...

最新文章

  1. Spring Cloud剖析--云平台技术栈17
  2. 算法解密:电梯是如何实现上下调度的?
  3. SQL Server 磁盘空间告急(磁盘扩容)转载
  4. java 获取打印机缺纸_第三章软件
  5. Focal Loss论文阅读笔记
  6. 303. 区域和检索 - 数组不可变
  7. 10 个最佳的 Node.js 的 MVC 框架
  8. PHP 小数点保留两位【转】
  9. SQL SERVER备份脚本
  10. RSTP原理和新增特性
  11. Node.js 教程第十四篇——Socket.io
  12. python适用于什么系统_Python适合在什么系统
  13. 基于遥感图像的船舶目标识别技术
  14. 国科大学习资料--机器人学导论(张正涛)--2014年期末考试试卷(含答案)
  15. java pdf 水印 加密_Java生成PDF 加密 水印
  16. ldap根据dn值查找objectClass
  17. 教学向|如何快速入门maya制作动画,萌新也能冲
  18. 蓝桥杯,基础练习 Fibonacci数列(斐波那契数列) C++
  19. 最新全国姓名报告出炉!
  20. UnityShader学习教程之<详解uv坐标,c#类似uv坐标的值以及贴图操作>

热门文章

  1. 通过USB链接组态王6.55和三菱Q12HPLC
  2. 用Excel仿华尔街日报图表-面积图
  3. foxmail如何下载全部邮件以及常用知识
  4. 计算机应用基础851,最新2020秋广东开放大学计算机应用基础本科上传资料作业2文档(2页)-原创力文档...
  5. RocketMQ学习笔记二之【DefaultMQPushConsumer使用与流程原理分析】
  6. wallhaven 基于scrapy框架的爬虫
  7. a 标签的 href 属性的获取与拼接
  8. 在element dialog中使用天地图报错Error in v-on handler: “TypeError: Cannot read property ‘_tdt_events‘ of null
  9. Vue PC商城项目开发笔记与问题汇总
  10. 网站建设之域名选购与解析