记录一次在安装双系统的过程(先有debian, 后加windows 8.1)
突破的难题: 如何在一整个根目录的分区中切出来一半用于安装windows8.1呢?
当初安装debian系统时, 由于脑残,直接把整个500G的硬盘分给了根目录 / ,所以整个磁盘就TMD的一个主分区; 现在想再安装一个window 8.1系统,太让我为难了,几乎找了所有资料,就是没有找到一个在linux下如何把一个分区减少的方法(前提,没有使用LVM机制进行分区)。怎么办??
我想,由于我的整个500G硬盘已经用了不到50个G,我干脆直接把MBR里面的分区表修改一下应该就可以吧!! 但是,没有找到修改分区表的工具, 使用 fdisk 命令也没有修改分区大小的选项。 我灵机一动,我干脆把主分区1删了,然后再重新添加一个200G的分区就等于把原来的500G分区修改为了200G吧,反正硬盘的第一主分区开始的扇区都是一样的,保证好扇区起始相同就OK了!!修改之前需要做的一个件事:我们需要把文件系统由500G调整为200G的文件系统;
由于需要把该主分区 umount 下以后才能操作,所以需要借助一个U盘里的另一个 linux 系统完成该操作,操作如下:
1. 使用 resize2fs 命令,把文件系统由原来的500G 缩小至200G; resize2fs 命令并不改变分区的大小;
- 使用 e2fsck 命令检查文件系统, e2fsck /dev/sda1
- 使用resize2fs命令,调整sda1上面的文件系统至200G, resize2fs /dev/sda1 200G
2. 使用 fdisk 命令把sda1分区删除,再添加一个210G的分区,为了安全起见,使分区比文件系统多了10G;
- sudo fdisk /dev/sda
- d #删除sda1分区,因为整个硬盘就一个分区,所以不用标记分区号;
- Partition 1 has been deleted.
- Command (m for help): n #新建分区
- Partition type
- p primary (2 primary, 1 extended, 1 free)
- l logical (numbered from 5)
- Select (default p): p #建立主分区
- Selected partition 1
- First sector (2048-976773167, default 2048): #开始值选择默认就OK;
- Last sector, +sectors or +size{K,M,G,T,P} (2048-524290047, default 524290047): +210G #大小为210G
- Created a new partition 1 of type 'Linux' and of size 210 GiB.
- #最后按 w 保存退出就可以了;
安装window8.1系统:
现在已经扩展出了一半的磁盘,我们就可以在这部分安装 window8.1了,具体步骤就不说了,说几个重要的注意事项:
1. 安装时,别重新安装 主引导记录, 否则原来的linux系统都启动不起来了,后面使用grub2进行引导;
2. 安装时,如果弹出如下窗口时,解决办法:按下shift+f10 会打开命令窗口,进入到C:\windows\system32\oobe文件夹,输入msoobe回车然后输入msoobe即可进入下一步操作,但错误提示框仍然在,不用理会。
3. 安装完成进入了window8.1 桌面以后, 记得关闭 window8.1的 快速启动选项,否则会无法关机, 即使强制关机以后,再启动时,就会出现下面无法启动的问题。 如果真的出现了这个问题的话,反正吧,借助硬盘上的MBR引导它是启动不起来的,你再怎么修复系统所在分区的分区引导记录也不管用, 或许你可以使用老毛桃制作一个U盘启动盘可以启动起来;
在linux系统下,使用grub2 对 window8.1进行分区引导:
(更多参考 grub2.02的文档:https://www.gnu.org/software/grub/manual/grub/grub.html)
在我的电脑上, 使用的是 grub2.02版本, 进入 /etc/grub.d/目录下,我们会发现有如下文件(版本不一样,会不相同的,我只说我的版本):
其实呢, 30_os_prober文件就是一个操作系统的嗅探配置文件,它可以自动地去探测硬盘上支持的操作系统, 所以,安装完了windows以后,只需要执行 sudo update-grub 命令,它就会自己搜索并配置相应的操作系统的引导文件;
当然,我们也可以自己写 window8.1的引导配置文件,打开40_custom文件,里面内容如下:
所以,我们只需要在下面写上window8.1的引导配置文件就好,然后执行 sudo update-grub 命令更新:
其中, insmod chain 表示链式引导, insmod ntfs 表示引导的操作系统的文件系统类型为nfts, (hd0,3) 表示我的window8.1系统在第一块硬盘第3个分区上, chainloader +1 表示从所在分区的第一个扇区开始;
最后安装完成的启动界面:
记录一次在安装双系统的过程(先有debian, 后加windows 8.1)的更多相关文章
- Win7下安装双系统Centos,并修复Centos引导加载程序安装在U盘上的问题
1.使用U盘安装Centos时,磁盘分区划分要注意:系统(包含Win7)只能4个主分区,所以只能在删除一个主分区或者在扩展分区的空闲分区内建立目录. 2.Centos在安装步骤的最后,引导加载程序的选 ...
- U盘启动盘 安装双系统 详细教程
U盘启动盘 安装win7+linux双系统 最近在看鸟哥的linux 私房菜 ,看到多重系统那部分,自然的安装多重系统的激情由此而燃.在网上看了很多资料,感觉都不全.经过艰辛的摸索,终于被我发现了一个 ...
- Windows 10+Ubuntu 16.04在MBR分区上安装双系统之后启动菜单的System Setup选项提示:can't find command "fwsetup"
背景: 硬盘分区方式:MBR 硬盘容量256,Windows 100,Ubuntu 156,其中主分区安装的是Windows,Ubuntu安装在逻辑分区上,文件系统为Ext4,整个Ubuntu就挂载在 ...
- win7+centos6.5安装双系统
前言:之前在琢磨怎么安装双系统 倒腾了两天终于给装上了 使用软件 镜像:CentOS-6.5-x86_64-bin-DVD1.iso 开机引导软件 easybcd2.2 u盘制作软件 USBWrite ...
- 记录一下l联想Y7000安装双系统(win10+ubuntu16.04)
单位新配的联想拯救者Y7000,感觉很不错哈,先上一张图. 说实在的,装这个有些小坑,我最开始是直接在原装win10上去装双系统的,结果死活装不上,还把原装win10给折腾没了,哈哈,好逗,以前装双系 ...
- ubuntu server 14.04 LTS下搭建LAMP环境之最详细笔记之一U盘安装双系统
前言: 一直在WIN上使用PHP,不喜欢用WAMP,每次都是手动在windows配置环境,偶尔有一次装了小红帽玩了两天,感觉不是很习惯就换了回来,过了没几天见讨论LAMP环境,于是安装了ubuntu的 ...
- 安装双系统window +ubuntu
在网上,试过很多种方法,有U盘制作安装,感觉好复杂,这边有一个简便的方法就是使用Ubuntu 的 wubi安装. 一直想安装双Ubuntu 系统很久了,可是以前在大学时期的时候一直努力,好像都不行,这 ...
- MC700 安装双系统
2011年买的MBP MC700给老婆用了一段时间后,老婆还不习惯不了Mac OS或是虚拟机,要求必须给安装windows,无奈时隔四年后,只能重新尝试在MC700上用bootcamp安装Window ...
- 关于笔记本安装双系统windows and linux
ps1.安装完成后,补充下如何设在win7为默认启动系统, 大家也都知道,在linux 运行当软件都是以配置文件来设置参数当,当然grub菜单也不例外, 修改菜单可以进入grub.conf [root ...
随机推荐
- C语言--isspace()函数实现
c语言中有很多处理string类型的函数,今天简单的使用了一下isspace()函数,自我实现调用了一下. Isspace()函数 包含在ctype.h头文件中 函数原型: int isspa ...
- Python 爬取bangumi网页信息
1.数据库连接池 #######db.py########## import time import pymysql import threading from DBUtils.PooledDB im ...
- W3School 学习笔记
网站构建初级教程 1.每个网站开发人员都有必要了解以下几方面的知识: 万维网如何工作 HTML 语言 如何使用层叠样式表 (CSS) JavaScript 编程 XML 标准 服务器脚本技术 使用 S ...
- Python 中的垃圾回收机制--备忘
GC作为现代编程语言的自动内存管理机制,专注于两件事:1. 找到内存中无用的垃圾资源 2. 清除这些垃圾并把内存让出来给其他对象使用.GC彻底把程序员从资源管理的重担中解放出来,让他们有更多的时间放在 ...
- python RandomForest跑feature重要性
其实呢,就是直接调用一个函数的事情... #coding=utf-8 from sklearn.tree import DecisionTreeClassifier from matplotlib.p ...
- db2 codepage
首先分两个层面,DB2 CODEPAGE和OS CODEPAGE(DB2SET DB2CODEPAGE相当于设定了当前实例的OS的CODEPAGE) Linux系统查看CODEPAGE的方法:在终端输 ...
- ToolTip C#
yourToolTip = new ToolTip(); //The below are optional, of course, yourToolTip.ToolTipIcon = ToolTipI ...
- windows环境下面批量新建文件夹
md D:批量新建文件夹\2026 md D:批量新建文件夹\2030 md D:批量新建文件夹\2032 md D:批量新建文件夹\1835 md D:批量新建文件夹\1832 电脑桌面新建文档 - ...
- 一篇文章让你学透Linux系统中的more命令
Linux 下有很多实用工具可以让你在终端界面查看文本文件.其中一个就是 more. more 跟我之前另一篇文章里写到的工具 —— less 很相似.它们之间的主要不同点在于 more 只允许你向前 ...
- RPC简述
在某种意义上,WebService.REST均是RPC的实现,那么RPC的发展过程如何呢?本文参考了wikipedia,对RPC做一下简要摘记. RPC(RemoteProcedureCall),是进 ...