`
wutheringsea
  • 浏览: 262506 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

ubuntu10.04下安装window7

阅读更多

一直是xp与Ubuntu10.04的双系统,最近xp出奇的慢,遂想把xp换成win7。在网上一查,大多装win7的都是在装好win7的情况下再装Ubuntu,如果直接在Ubuntu下装win7就比较复杂了。

经过几个小时的折腾和在网上的搜索,终于搞定了,把整个过程记下来:

1.首先得准备win7的iso文件。

2.下载grub4dos和easybcd两个软件,详细说明及下载Google之。

3.在Ubuntu下备份MBR,输入命令如下:
$ sudo dd if=/dev/sda of=/<选择保存的路径>/mbr.img bs=512 count=1

这个步骤至关重要。需要把这个备份文件复制到Windows文件系统下,或用U盘备份。

4.挂载Win 7 ISO
$ sudo mount /xxxx.iso /mnt -o loop

   打开/mnt目录,把里边的所有文件复制到一个NTFS分区的根目录下——不能是将用于安装Windows 7的分区,我这里放在了E盘下建好的名为win7的文件夹里面。

   从这个名为win7的文件夹中把bootmgr文件和boot文件夹复制出来,放到E盘的根目录下,在分区的根目录下新建一个文件夹名为sources, 然后从win7文件夹中的sources文件夹复制一个名为boot.wim的文件,把这个文件放到根分区下的sources文件夹内.
这样,根目录下的bootmgr文件和boot文件夹还有sources文件夹下的boot.wim文件,其实就构成了一个完整的winpe.

5.添加启动菜单。

   因为Ubuntu10.4用的是Grub2引导,所以和以前Grub修改设置稍有不同:

   修改/boot/grub/grub.cfg文件,输入命令sudo gedit /boot/grub/grub.cfg;

   在文件末尾加上启动项如下

  menuentry "Grub for Dos" {
  insmod ntfs
  set root=(hd0,5)   ##(hdx,x)是Ubuntu安装的那个分区,按实际情况修改##
  linux /home/grub.exe      ## /home/grub.exe是解压grub4dos后得到的程序路径##
  }

 

6.在存放win7安装程序的那个分区,也就是上面的E盘,新建一个空白文件(其实也可以在任意分区),把它重命名为:menu.lst
在这个文件里面写入:
title win7
find --set-root /bootmgr
chainloader /bootmgr
boot

 

保存。

 

7.重启电脑,选择Grub for Dos进入,再选择win7后,回车即可启动win7安装程序。

 

8.开始安装
等待win7安装程序启动完毕。然后按下shift+f10键,调出cmd命令提示符。
首先查找win7安装程序所在的分区。
先输入:
c:
回车。
然后输入命令:
dir /a
这个命令是显示这个分区根目录下的全部文件。根据文件以确认这个分区是哪个分区。
如果不是,再输入e:

找到E盘,也就是我们放入menu.lst的那个盘
然后输入命令:
cd win7
这个命令进入win7文件夹。
再输入:
cd sources
进入sources文件夹。
再输入:
setup.exe
回车。启动win7正式的安装程序。前面我们所启动的其实只是一个预安装环境,也就是所谓的winpe而已。

 

9.改写mbr
win7正式安装程序启动后,我们先不要急着点下一步。首先还是按下shift+f10键,调出cmd命令提示符,然后在cmd命令提示符下输入:
bootrec /fixmbr
回车。这个命令改写mbr。
然后在驱动器高级选项中,对要安装win7的分区进行格式化。之所以要格式化,是为了让分区与win7更加兼容。
如果不格式化,至少也要改写pbr
命令:
bootrec /fixboot

 

后面的安装与光盘安装就没有区别了。按提示一路进行下去就是了。

 

10.安装完成
成功进入win7了,但引导菜单不见了,所以这时的ubuntu也进不了了。这是最早下的软件easybcd派上用场了:

安装好easybcd之后运行,添加LINUX启动项。C盘下会生成c:\nst\nst_linux.mbr文件,删除之,把此前步骤3备份的mbr.img复制到这个 位置,重命名为nst_linux.mbr。

重启在多系统选单选择linux选项,即可看见原来的Ubuntu的多系统选单。进入Ubuntu之后,再彻底还原MBR。命令:
$ sudo dd if=/backup/mbr.img of=/dev/sda bs=446 count=1

 

11.清理

恢复好Grub2好后,当然要把/boot/grub/grub.cfg做些修改,比如把xp启动项名称现在可以换成win7了。

最后进入win7,继续用easybcd可以把步骤10建好linux那个启动项删除,再把等待时间调成0s。

 

至此,大功告成,xp换成了win7。

 

 

参考地址: http://blog.sina.com.cn/s/blog_49f914ab0100hcd7.html;

              http://wenku.baidu.com/view/a13f5f27a5e9856a56126005.html

分享到:
评论

相关推荐

    神奇宝贝(PokemonGo)基于Jetpack+MVVM+Repository设计模式+Data.zip

    神奇宝贝(PokemonGo)基于Jetpack+MVVM+Repository设计模式+Data

    用于试用 Dev Containers 的 Python 示例项目.zip

    用于试用 Dev Containers 的 Python 示例项目试用开发容器Python开发容器是一个具有明确定义的工具/运行时堆栈及其先决条件的运行容器。您可以使用GitHub Codespaces或Visual Studio Code Dev Containers试用开发容器。这是一个示例项目,您可以通过几个简单的步骤尝试任一选项。我们还有各种其他vscode-remote-try-*示例项目。注意如果您已经有代码空间或开发容器,则可以跳至“要尝试的事情”部分。设置开发容器GitHub Codespaces请按照以下步骤在 Codespace 中打开此示例单击代码下拉菜单。单击Codespaces选项卡。单击主屏幕上的“创建代码空间”。有关创建代码空间的更多信息,请访问GitHub 文档。VS Code 开发容器如果您已安装 VS Code 和 Docker,则可以单击上方或此处的徽章开始使用。单击这些链接将导致 VS Code 根据需要自动安装 Dev Containers 扩展,将源代码克隆到容器卷中,并启动开发容器以供使用。按

    springboot vue3前后端分离.zip

    springboot vue3前后端分离

    数学建模-神经网络算法 lecture 11 线性随机系统辨识示例 共9页.pptx

    数学建模-神经网络算法 lecture 11 线性随机系统辨识示例 共9页.pptx

    优质粳稻生产技术规程.docx

    优质粳稻生产技术规程.docx

    所有算法均在 Python 3 中实现,是 hacktoberfest2020 的一个项目 - 没有针对 hacktoberfest 2021 的问题或 PR.zip

    算法 - Python 目录灵感与动力贡献指南从这里开始所有算法均用 Python 3 实现(用于教育)这些实现仅用于学习目的。如果您想贡献更有效的解决方案,请随时打开问题并提交您的解决方案。灵感你可以在LeetCode 算法中寻找要实现的算法若要贡献,请确保算法尚未提交!请确保在您的 PR 中添加问题编号。贡献指南文件夹和文件请确保你的文件位于 -Folder 中LeetCode,并且命名如下 0001_TwoSum.py-> LeetCode 问题的 4 位数字、下划线、LeetCodeName开放问题当您打开问题时,请确保问题尚未实现(查看代码/Leetcode 以获取问题编号)。现有问题打开的问题将被关闭,并且对此问题的 PR 被标记为垃圾邮件 。打开问题的贡献者将被优先分配到该问题。如果大约 7 天内没有 PR,则问题将分配给另一个贡献者。拉取请求只有与问题相结合并符合命名约定(参见文件夹和文件)的 Pull 请求才会被合并!如果 PR 中没有加入问题,您的 PR 将被标记为垃圾邮件并关闭。如果您的代码未通

    用于接收和交互来自 Slack 的 RTM API 的事件的框架.zip

    用于接收和交互来自 Slack 的 RTM API 的事件的框架python-rtmbot此项目不再处于积极开发阶段。如果您刚刚开始,我们建议您先查看Python SDK。如果您一直在使用此项目,我们只会解决关键问题(例如安全问题),但我们建议您计划迁移到 Python SDK。您仍然可以提交问题并向我们寻求帮助! 如果您有兴趣在未来维护此软件包,请联系我们 一个用 Python 编写的 Slack 机器人,通过 RTM API 连接。Python-rtmbot 是一个机器人引擎。任何了解Slack API和 Python的人都应该熟悉插件架构。配置文件格式为 YAML。该项目目前处于 1.0 之前的版本。因此,您应该计划不时进行重大更改。对于任何重大更改,我们将在 1.0 之前的版本中调整次要版本。(例如 0.2.4 -> 0.3.0 意味着重大更改)。如果稳定性很重要,您可能希望锁定特定的次要版本)与 webhook 的一些区别不需要网络服务器来接收消息可以回复用户的直接消息以 Slack 用户(或机器人)身份登录机器人用户必须被邀请加入频道

    基于django的音乐推荐系统.zip

    基于django的音乐推荐系统.zip

    北京理工大学<Python机器学习应用>超详细学习笔记和代码注释(未完待续).zip

    北京理工大学<Python机器学习应用>超详细学习笔记和代码注释(未完待续)

    kernel-5.15-rc7.zip

    kernel-5.15-rc7.zip

    神经网络-DenseNet网络结构

    神经网络-DenseNet网络结构

    rbac组件(基于角色的权限控制).zip

    rbac组件(基于角色的权限控制)

    C++ Vigenère 密码(解密代码)

    C++ Vigenère 密码(解密代码)

    数学建模培训资料 数学建模实战题目真题答案解析解题过程&论文报告 杭州消防设置-对杭州市消防局设置的研究 共8页.pdf

    数学建模培训资料 数学建模实战题目真题答案解析解题过程&论文报告 杭州消防设置-对杭州市消防局设置的研究 共8页.pdf

    老年用品产品推广目录分类表.docx

    老年用品产品推广目录分类表.docx

    毕设源码-基于Python的期货程序化交易系统的设计与实现_jhypi-期末大作业+说明文档.rar

    本项目是基于Python的期货程序化交易系统的设计与实现,旨在为计算机相关专业学生提供一个实践性强、贴近实际应用场景的项目案例。通过这一项目,学生们能够深入了解程序化交易的基本原理和实现方法,同时锻炼自身的编程技能、数据分析能力以及金融市场的洞察力。 项目的主要功能包括:自动收集和处理市场数据、基于预设策略进行交易决策、实时执行交易指令、监控交易风险以及生成详细的交易报告。系统采用模块化设计,主要包括数据采集模块、策略执行模块、交易执行模块和风险管理模块,各个模块之间通过明确的接口进行交互。项目采用的编程语言为Python,利用其强大的数据处理库和机器学习库,保证了系统的灵活性和扩展性。开发这一项目的目的是让学生们在实践中学习和掌握程序化交易的核心技术,提升其在金融科技领域的就业竞争力。

    基于java的校园失物招领平台设计与实现.docx

    基于java的校园失物招领平台设计与实现.docx

    Javascript Ninja 课程.zip

    Javascript Ninja 课程JavaScript Ninja 课程Inscreva-se agora mesmo e ganhe 10% de desconto!Como tirar dúvidas sobre 或 conteúdo do curso访问问题页面Pesquise nas发出abertas e fechadas, se a mesma dúvida já foi postadaSe não foi, crie uma nova issues , coloque um titulo que tenha a ver com a sua dúvida, e descreva-a com o maior nível detalhes possíveis, para que possamos te ajudar:)摘要Veja o sumário completo do curso aqui。赞同!:D

    通过示例在 Python 中解释 SOLID 原则 .zip

    solid.python通过示例在 Python 中解释SOLID 原则。单一职责原则开放/封闭原则里氏替换原则接口隔离原则依赖倒置原则

    公交信息在线查询系统 微信小程序+SSM毕业设计 源码+数据库+论文+启动教程.zip

    公交信息在线查询系统 微信小程序+SSM毕业设计 源码+数据库+论文+启动教程 项目启动教程:https://www.bilibili.com/video/BV1BfB2YYEnS

Global site tag (gtag.js) - Google Analytics