在已有 Ubuntu 的基础上硬盘安装 Win7 实现双系统
.
.
.
.
.
LZ 的笔记本电脑一直安装的是 Ubuntu 系统,最近由于工作需要,要安装一个 Win7 系统。大家都知道,Linux 和 Windows 装双系统的时候要先装 Win 再装 Linux,并且要把 Win 安装在第一硬盘第一分区才行,可是 LZ 这 Ubuntu 已经使用了很久了,并不想把所有的配置都舍弃掉完全重装,于是经过了一天一夜的折腾,LZ 终于搞定了,并把这个过程记录下来。
由于折腾的时候没有截图,也没有把一些命令的输出给拷贝下来,所以现在也只能描绘场景和命令了,并不能给出命令执行的结果了。
先来看看 LZ 硬盘的情况:共有两块硬盘,暂且称之为 hd0 和 hd1 吧。hd0 是固态硬盘,有两个主分区,一个挂载在 /boot,一个挂载在 / 上。hd1 也有两个分区,一个是主分区挂载在 /home 上,另一个是逻辑卷,挂载着 swap。
硬盘的情况就是这样,由于 SSD 容量比较小,出于对使用寿命和 win 使用场景的性价比等考虑,决定不动 SSD,而是把 /home 缩小,腾出一部分空间分两个区给 win 用。
一开始 LZ 是把 /home 向前缩小,在 /home 与 swap 之间腾出 200GB 左右的空白空间来。可是安装 win 的时候出现了“安装程序无法创建新的系统分区,也无法定位现有系统分区”的错误提示,死活装不上,不知道是不是由于前面提到的“win 必须安装在第一硬盘第一分区”的原因,既然失败了,那就暂且不表了。
无奈之下 LZ 只好把整个 /home 分区向后移动,使这 200GB 的空间处于 hd1 的最前边,把 /home 和 swap 放在 hd1 的后面区域。
调整分区大小和创建分区的工具是 gparted,在 LiveCD 上可以直接使用,图形化界面,用起来比较简单,具体用法这里就不介绍了。
说说如何硬盘安装 win7:
先在空白空间上分两个区出来,一个作为 win 的 C 盘,一个作为安装盘(安装完系统之后可以把这个盘格式化掉,作为 D 盘用),暂且称它们为 p1 和 p2 吧。这个步骤可以在 LiveCD 上做,也可以在现有的 Ubuntu 上直接做,但是调整分区大小的动作一定要在 LiveCD 上做,因为被调整的分区(/home)在运行着的系统上是已经挂载的,除非先卸载掉它,不然不能直接调整它的大小。
先把 p2 分区挂载上来,然后把 win7 的安装盘里所有的文件和目录都拷贝到 p2 分区上。如果 win7 是 iso 镜像,可以直接挂载到某个目录上进行拷贝,如果是光盘则插入后系统会自动挂载,使用 cp -rv 即可全部复制。
现在可以重启系统用 grub2 来引导 p2 分区里面的 win 安装向导了。
重启后来到 grub 的引导菜单,按 c 键进入命令行模式:
grub> set root=(hd1,)
grub> insmod ntfs
grub> ntldr /bootmgr
grub> boot
执行以上命令后,系统应该就启动 win 的安装向导了,接下来一步一步按照提示安装 win7 就行了。
可是就在此时意外又出现了,选择安装分区的时候依然提示“安装程序无法创建新的系统分区,也无法定位现有系统分区”,LZ 折腾了好久后发现,要把 hd0 拔掉,只用 hd1 进行安装才行。可是由于 grub 安装在 hd0 上了,拔掉 hd0 后 hd1,2 便无法启动了。于是只好用老毛桃 PE 启动,使用里面的小工具来将 d: 下的镜像安装到 c: 里,直至部署完成都没有出现问题 。
win 安装完毕周后,把 hd0 再插回去,用上面的命令进入 win7,没有出现任何问题。于是把 D: 格式化掉,重启进入 ubuntu,执行 update-grub 命令,使 grub 的菜单可以引导 win7,大功告成。
在已有 Ubuntu 的基础上硬盘安装 Win7 实现双系统的更多相关文章
- win7下硬盘安装win7+CentOS双系统方法
原文:win7下硬盘安装win7+CentOS双系统方法 LinuxCentOS安装大致介绍: win7下硬盘安装win7+CentOS双系统方法 原则: 所有的看完在装,请仔细看 一 条件: 1. ...
- win7下硬盘安装win7+linuxUbuntu双系统方法
Linux安装大致介绍: win7下硬盘安装win7+linuxUbuntu双系统方法 原则: 所有的看完在装,请仔细看 一 条件: 1. 系统选择 linux unbuntu12.04.2-desk ...
- win8.1硬盘安装ubuntu14.04双系统
在网上找了很多方法都失败了,原因是大多数方法都是用mbr方式安装的,如grub4dos,easybcd.以至于连自己都怀疑win8能不能用硬盘安装,差点就去买个u盘来安装了,就在打算放弃的时候在ubu ...
- Windows8.1硬盘安装Ubuntu14.04双系统参考教程和多硬盘的注意事项[画画]
硬盘安装.无需光盘.U盘:Win8.1为主,Ubuntu14.04为辅,可将Windows或Ubuntu设置为开机默认启动项.在Ubuntu下可查看.操作Windows系统下的文件:适用于安装和14. ...
- Windows 8.1 硬盘安装 Ubuntu14.04 双系统参考教程及注意事项
硬盘安装,无需光盘.U盘:Win8.1为主,Ubuntu14.04为辅,可将Windows或Ubuntu设置为开机默认启动项:在Ubuntu下可查看.操作Windows系统下的文件:适用于安装和14. ...
- win8硬盘安装Ubuntu14.04双系统參考教程
硬盘安装,无需光盘.U盘.win8为主.Ubuntu14.04为辅.可将Windows或Ubuntu设置为开机默认启动项.在Ubuntu下可查看.操作Windows系统下的文件:适用于安装和14.04 ...
- win8下硬盘安装Ubuntu12.04双系统成功记录
一开始是在windows下VirtualBox虚拟机中搞了一个Ubuntu玩,时间一长,感觉卡的厉害,浪费时间,那就装个双系统! 在win8下磁盘管理中的最后一个盘中压缩出20G左右的空闲硬盘分区: ...
- win8.1环境下硬盘安装centos6.5双系统
作为一名软件工程师或是相关行业的从业人员,经常会用到linux系统,这里为大家介绍的安装linux的方案是在原有win环境下安装linux双系统,两个系统选择分别为win8.1 和centos6.5. ...
- 在ubuntu上搭建开发环境1---在windows7的基础上在安装ubuntu(双系统)
转载:http://jingyan.baidu.com/article/60ccbceb18624464cab197ea.html 当需要频繁使用ubuntu时,vmware虚拟机下运行ubuntu, ...
随机推荐
- robocopy 命令小结
robocopy "C:\dira" "J:\dira" /E /COPYALL /XJ /XD "C:\dira\dir1" " ...
- 在 Typescript 2.0 中使用 @types 类型定义
在 Typescript 2.0 中使用 @type 类型定义 基于 Typescript 开发的时候,很麻烦的一个问题就是类型定义.导致在编译的时候,经常会看到一连串的找不到类型的提示.解决的方式经 ...
- 【MySQL】pt-query-digest数据处理并关联业务
参考:www.percona.com/doc/percona-toolkit/2.1/pt-query-digest.htm 通过pt-query-digest将慢日志导入数据库后在表global_q ...
- tcp协议头窗口,滑动窗口,流控制,拥塞控制关系
参考文章 TCP 的那些事儿(下) http://coolshell.cn/articles/11609.html tcp/ip详解--拥塞控制 & 慢启动 快恢复 拥塞避免 http://b ...
- C# 调用Adodb对Access数据库执行批量插入
public void BatchInsertIntoAccess(DataTable dt) { ADODB.Connection cn; ADODB.Recordset rs; string st ...
- Jenkins 插件开发笔记
笔记云盘下载链接: https://pan.baidu.com/s/1gfohF1p 密码: v759
- vim显示行号、语法高亮、自动缩进的设置
转载自:http://blog.csdn.net/chuanj1985/article/details/6873830 在UBUNTU中vim的配置文件存放在/etc/vim目录中,配置文件名为v ...
- begin-end语句块在mysql中的使用问题
在最近在通过navicate连接mysql数据库时,进行查询操作: delimiter $$BEGIN SET @a=1; if (@a > 0) THEN SELECT COUNT(*) fr ...
- Win8.1无法安装.NET Framework 3.5的解决办法
这个问题纠结了我很多天,恢复系统也没用,差点儿就重装Win8,现在终于解决了,你也来试试吧! 机型:台电X89 系统:Win8.1 with bing 故障:在未安装.NET Framework 3. ...
- MySQL_监控用户下单地址没有就近仓库配送情况_20161215
如果用户所在的地址位于A市场,A市场所就近的仓库应该为a,通过监控发现用户下单后配送仓库的不是a而是b仓库发货,这就会引起物流成本的增加. 因此对客户下单挑选最近的仓库进行监控是很有必要的 #C041 ...