在不格式化原有系统盘的情况下,利用grub4dos+firadisk制作RamOS VHD Win7总结
在不格式化原有系统盘的情况下,利用grub4dos+firadisk制作RamOS VHD Win7总结
在不格式化原有系统盘的情况下,用grub4dos+firadisk安装WIN7到VHD,内存大的可以启动RamOS,步骤如下:
1、工具:grub4dos,firadisk驱动包,bootice,苏博论坛prosen精简的32位WIN7_7658,WIN7或WIN7PE,WinContig软件,Ghost32.11.0。推荐内存大小≥8G。
2、进入WIN7或WIN7PE,右击我的电脑→管理→磁盘管理,创建一个固定容量VHD虚拟硬盘文件,以E:\RAMOS\win77658.vhd为例,在虚拟磁盘上选初始化,并创建简单卷,格式化为ntfs默认格式,【启用NTFS压缩】,同时设为活动分区。一般地vhd容量要足够大,确保大于gho解压后体积+临时解压文件+物理内存*1.5(虚拟页面文件),有的系统会根据内存大小自动取消虚拟页面文件,这里以4G为例,以后可以关闭虚拟内存采用NTFS压缩减小vhd体积。给vhd虚拟磁盘重新指定一个盘符,以A:盘为例。
3、运行WIN7LITE7658EX.exe,目标盘选择A:盘,如果是ghostWIN7,用ghost32.11.0把WIN7.gho镜像文件灌入虚拟磁盘A:盘。必要时用wincontig整理下E:\RAMOS\win77658.vhd确保里面的文件连续存放。
4、因为bootmgr原生支持VHD启动,为了方便,把原有的操作系统改成bootmgr引导,用bootice把MBR和PBR改成windows NT6.X,把bootmgr拷贝到C:\根目录,编辑C:\BOOT\BCD,添加两项:①添加VHD启动项Boot from VHD,选择好启动磁盘和启动分区,设备文件填写\RAMOS\win77658.vhd,注意不要带盘符,因为盘符在前面已经选择过了,勾上禁用数字签名认证。②添加grub4dos启动项Boot from grub4dos,启动磁盘选择真实硬盘,分区选择C:,设备文件手工输入\grldr或者\grldr.mbr都可以,timeout设置为2秒。再把glrdr和grldr.mbr拷贝到C:\根目录下。
5、重启电脑,选择Boot from VHD,E:\RAMOS\win77658.vhd第一次启动,顺利启动后,打开设备管理器,单击本机,然后单击【操作】下拉菜单→添加过时硬件→从磁盘安装,选择firadisk.ini安装好firadisk驱动,根据提示禁用驱动签名,然后安装好主板网卡声卡显卡驱动,根据需要重启,然后安装必要的软件。安装好prosen精简的32位WIN7_7658后C盘占用780MB,装了驱动和几个软件后占用1.3GB。
6、在grldr.mbr同目录建立menu.lst菜单文件,选择RamOS(win7)就可以启动RAMOS VHD WIN7,选择WIN7VHD+firadisk Modify可以进入修改模式,当然从bootmgr启动→BCD选择Boot from VHD也能修改VHD系统。
menu.lst菜单如下:
#font (bd)/boot/grub/unifont.hex
color border=0xEEFFEE
#graphicsmode -1
color white/blue blue/yellow light-red/blue 10
#color white/black light-gray /black white/magenta white/magenta
#color black/cyan yellow/cyan
#color dark-gray/blue black/light-gray white/black green/black
foreground FFFFFF
background 0000AD
timeout 3
default 0
title boot Windows by zhaohj
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
map () (hd0)
map (hd0) ()
map --rehook
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
#rootnoverify (hd0,0)
chainloader /ntldr || chainloader /bootmgr
title RamOS(win7)
find --set-root /RAMOS/win77658.vhd
map --mem --top /RAMOS/win77658.vhd (hd0) || map --top /RAMOS/win77658.vhd (hd0)
map (hd0) (hd1)
map --hook
chainloader (hd0,0)/bootmgr
title WIN7VHD+firadisk Modify
password=123
find --set-root /RAMOS/WIN7LITE.vhd
map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)
map /RAMOS/WIN7LITE.vhd (hd0)
map (hd0) (hd1)
map --e820cycles=-1
#进入grub4dos后按e键按要求修改为1-4防止蓝屏。
map --harddrives=1
map --hook
write (99) [FiraDisk]\nStartOptions=disk,vmem=find:/RAMOS/WIN7LITE.vhd;\n\0
chainloader (hd0,0)/bootmgr
7、第一次启动RAMOS VHD WIN7,系统会提示找到firadisk内存盘,提示需要重启,这时候先不要重启,在运行里输入regedit,打开注册表编辑器,导出HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\FIRADISKA项另存为一个注册表文件,如:f1.reg,查看FIRADISKA项下的ClassGUID项的值,按ClassGUID项的值找到HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class项下的对应FIRADISKA的ClassGUID值,并导出其主键,另存为f2.reg。关闭注册表,分别编辑f1.reg及f2.reg,把其中的"\SYSTEM\”替换为"\ttt\",搜索注意加上前后的"\"。
8、重启电脑进win7pe,附加虚拟硬盘文件E:\RAMOS\win77658.vhd为A:盘。打开注册表编辑器,鼠标选中HKEY_LOCAL_MACHINE项,选上面的文件-加载配置单元,浏览虚拟的A:\WINDOWS\SYSTEM32\CONFIG里的SYSTEM文件,加载为"ttt",然后导入f1.reg及f2.reg,再选中注册表中的ttt项,选文件-卸载配置单元。就可把firadisk驱动虚拟的ram盘信息保存到E:\RAMOS\win77658.vhd了,再从系统磁盘管理中分离vhd文件,重启再从grub4dos进ramwin7就ok了。
参考:以VHD方式制作Win7-RAMOS - VHD系统区 - 无忧启动论坛 - Powered by Discuz!
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=310280&extra=page%3D7
在不格式化原有系统盘的情况下,利用grub4dos+firadisk制作RamOS VHD Win7总结的更多相关文章
- 平板不能设置代理的情况下利用随身wifi进行http代理访问
需求来源:平板或手机是个封闭系统无法给wifi设置代理,需要利用filllder进行抓包,内容篡改等实验 拥有硬件资源:PC机器 + 小米随身wifi 方案1: NtBind Dns + Nginx ...
- Windows8.1 安装SQL Server2012——部分组件安装不成功!(提示安装.NET 3.5时出错,无Internet情况下利用win8.1安装镜像安装.NET 3.5)
虽然从事着与开发毫无关系的工作,但却也断断续续维持了近6年的WEB开发,有时因为其它工作原因,可能每做一个项目的时间间隔比较大,有时甚至在做的一个项目因为其他事情而停滞几个月之久(有些项目是自己兴趣或 ...
- Centos文本方式安装情况下lvm分区的创建
作者:马 岩(Furzoom) (http://www.cnblogs.com/furzoom/)版权声明:本文的版权归作者与博客园共同所有.转载时请在明显地方注明本文的详细链接,未经作者同意请不要删 ...
- 迁移/home目录至新硬盘分区总结--无备份情况下
搞了一天,终于成功迁移.由于一开始就没备份过程实在很曲折. 希望本篇对那些没有备份习惯的朋友们有所帮助. 准备工作: sudo vim /etc/fstab 在文件中加入: /dev/sdb8 ...
- 在高并发、高负载的情况下,如何给表添加字段并设置DEFAULT值?
在高并发.高负载的情况下,如何给表添加字段并设置DEFAULT值? 在Oracle 12c之前,当Oracle表数据量上亿时,对表执行“ALTER TABLE XXX ADD COLUMN_XX VA ...
- 在不重装系统的情况下创建Linux的Swap分区
本文由荒原之梦原创,原文链接:http://zhaokaifeng.com/?p=649 操作环境: CentOS 7 操作背景: 本文中使用的CentOS Linux系统在安装的时候没有创建Swap ...
- Linux,在不使用U盘的情况下使用wubi.exe程序在Win7上安装ubuntu-14.04.3版系统
本文介绍如何在不使用U盘的情况下使用wubi.exe程序在Win7上安装ubuntu-14.04.3版系统. 花了一天的时间终于安装上了Ubuntu14.04,过程坎坷,是血泪史,开始报“cannot ...
- Solaris10镜像情况下如何修复boot archive
在某些情况下(比如:异常宕机)solaris10的boot archive可能会损坏,导致solaris无法启动,此时需要手工修复boot archive. 本文通过模拟boot archive损坏, ...
- Linux 在不重启的情况下识别新挂载的磁盘
在使用 Linux 时,有时候会因为初始时磁盘空间分配估计不足,使用中需要将挂载点扩容的情况,这就需要我们挂载新的磁盘.但是如果我们在 Linux 运行过程中挂载磁盘, Linux 又不能在不重启的情 ...
随机推荐
- M1卡修改各区块控制位值和数据
(一),以常用设置"08 77 8F 69"控制条件为例,先搞清楚它――具有的访问权限. 1.对"08 77 8F 69"值进行计算,该值定位于各区块3的6,7 ...
- DOM based XSS Prevention Cheat Sheet(DOM Based XSS防御检查单)
本文为翻译版本,原文请查看 https://www.owasp.org/index.php/DOM_based_XSS_Prevention_Cheat_Sheet 介绍 谈到XSS攻击,有三种公认的 ...
- Java Servlet(八):EL自定义函数
EL自定义函数:在EL表达式中调用的某个java类的静态方法,这个静态方法需在web应用程序中进行配置才可以被EL表达式调用. EL自定义函数可以扩展EL表达式的功能,让EL表达式完成普通java程序 ...
- 20151208_使用windows2012配置weblogic节点管理器
经过实践,weblogic节点管理器的作用主要有两点: 1.可通过weblogic控制台远程控制被管server启停. 2.可以自动重启被管server的进程,并且对spring框架提供比直接启动更快 ...
- c++ socket编程步骤
sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),原始套接字(SOCK_RAW):基于TCP的socket编程是采用的流式套接字. 服务器 ...
- RuntimeWarning: invalid value encountered in divide
import numpy as np olderr = np.seterr(all='ignore') 在程序的开头加上如上代码 https://docs.scipy.org/doc/numpy/re ...
- React高级特性
目录: 容器组件 JSX可展开属性 动画 : CSS3 Transition 默认属性 复用代码:mixin 容器组件 React元素也可以包含其他的子元素,这意味着响应的React组件是一个 容器组 ...
- mui记录
事件addEventListener()绑定事件的对象方法.addEventListener()含有三个参数,一个是事件名称,另一个是事件执行的函数,最后一个是事件捕获.obj.addEventLis ...
- Dynamics AX 2012 R2 报表部署权限错误
今天,Reinhard在 Deploy AX Reporting时,发生权限错误. 配置 ID: HOSTMSSQLSERVER 描述: HOST@MSSQLSERVER 默认值: True 报表服务 ...
- Python基础第三篇
一.collections系列 Counter是对字典类型的补充,用于追踪值的出现次数,具备字典的所有功能 + 自己的功能 1.计数器Counter import collections a='aba ...