windows+ubuntu双系统不用重装系统的磁盘分区

来源:互联网 发布:导入mac的照片在哪里 编辑:程序博客网 时间:2024/05/08 09:39


先说一下我电脑基本情况。分区前电脑上装好了win7+ubuntu双系统,且win7装了matlab,vs等软件,linux也配置好了操作环境。分区前的磁盘使用情况,如图:

这时的电脑已经连WannaCry病毒的补丁都打不了了,于是我决定冒着重装系统重新配置各种环境的风险,给磁盘分区。

全程没有重装系统,没有重装任何软件。分区后磁盘如图:


我的E、F、G盘基本大小不变,只有C盘增大了的原因是我的硬盘中有两块NTFS类型的未使用分区,是电脑以前的主人留下的,我通过分区助手把未使用分区合并到了附近的磁盘,然后又把磁盘大小重新分配了。

磁盘分区并不麻烦,麻烦的是可能遇到的问题。我在本文的最后说我遇到的问题。


一、工具。我用的是分区助手6.2,简易轻便,可以无损分区。建议使用一款分区软件,比自己琢磨省心~

二、怎么调整磁盘分区的大小。如下操作步骤来自分区助手教程http://www.disktool.cn/jiaocheng/resize-partition.html 。其余类似问题也可以在这个网站上找,常见的我就不说了。

操作步骤

注意:
在分区前,对于一些重要的数据,您可以使用免费的备份软件:轻松备份来备份, 它支持备份系统、磁盘、分区、文件、定时备份等等。

1、下载免费的分区助手,并安装到电脑中,然后启动它,您将看到下面的主界面,同时也可以看到C分区是15.01GB,F分区是20.89GB,如图1所示。 

 
图1

2、现在来缩小(即压缩)F盘到15.90GB,在F盘上右击在弹出的菜单中选择“调整/移动分区”选项,然后您将看到如图2所示的窗口,向右拖动左边的手柄以缩小F盘15.90GB。 

 
图2

3、在点击上图2的确定之后将返回到主界面,同时您将看到C盘后面多出一块大小为4.99GB的未分配空间,如图3。 


 
图3

4、右击C盘在弹出的菜单中选择“调整/移动分区”选项如下图4所示。 

 
图4

5、然后将出现一个弹出的窗口,向右拖动右边的手柄直到C盘被调整到20GB,如下图5所示所示。 

 
图5

6、点击确定后,返回到主界面。看列表框中,这时C盘的大小为20GB,同时F盘的大小调整为15.90GB了。在主界面的左侧的“等待执行的操作”中您可以看到有两个需要执行的操作:一是调整并移动(F:)分区,二是调整(C:)分区的大小。如下图6所示。 

 
图6

7、在上图6的工具栏上有一个“提交”按钮,请点击它,然后,您将看到下面图7的对话框。将点击“执行”按钮来应用这两个操作到真实的磁盘上。 

 
图7

8、在点击执行后,分区助手可能会提示您重启电脑在重启模式(PreOS Mode)下执行这些操作,这时点击“是”以在重启模式下执行,但重启模式是英文的界面,下图8是分区助手在重启模式下的执行状态: 


图8

在重启下执行完成后,C盘的大小已经被调整到20GB了。并不是所有操作都需要在重启模式下执行,只有个别操作需要。分区助手的调整分区大小操作比较的灵活,同时它的其它功能如复制磁盘、复制分区等等都能帮助您更轻松的管理您电脑中的磁盘。如果您想为NTFS分区添加容量,您可以使用扩展分区向导来这个实现,详细使用步骤请看“怎么使用扩展分区向导”。


三、可能出现的问题。问题大部分都源自于双系统。这个博客真正有用的地方就在这里,网上的不太清楚,我就整理了一下。

问题1:合并未使用分区的时候可能会提示是双系统公用区域。

win7下,ubuntu分区不可见,但是打开分区助手后,所有的分区都可见。ubuntu下,使用sudo fdisk -l命令,所有分区可见。

磁盘类型:windows分区一般为NTFS,LINUX分区一般为EXT4类型。

这里我建议只调整NTFS类型的分区大小,但是尽管这样,还是会遇到问题2。


问题:2:分区调整后,开机黑屏,显示error:unknow filesystem

是由于操作者不知道grub2分为两部分,一部分(一般情况下)写在了mbr上,另一部分写在了某个分区的/boot/grub目录(如果/boot单独分区,则直接写在对应分区的/grub目录)里面。由于上述操作,致使grub2的mbr里面的那一部分找不到/grub目录里面的那一部分了

操作:

1. 先使用ls命令,找到Ubuntu的安装在哪个分区:
在 grub rescue>下输入以下命令:
代码:
ls
会罗列所有的磁盘分区信息,如图
grub error: unknown filesystem的解决办法

2. 然后找出ubuntu所在的分区: X表示各个分区号码,比如msdos8,msdos7。
如果/boot没有单独分区,用以下命令(如果/boot单独分区,就把以下所有命令的/boot/grub改成/grub即可。我用的都是
/boot/grub):

代码:
ls (hd0,X)/boot/grub
如果/boot单独分区,则用下列命令:
代码:
ls (hd0,X)/grub
正常情况下,会列出来几百个文件,很多文件的扩展名是.mod和.lst和.img,还有一个文件是grub.cfg。假设找到(hd0,msdos5)时,显示了文件夹中的文件,则表示Linux安装在这个分区。

3,如果找到了正确的grub目录,则设法临时性将grub的两部分关联起来,方法如下:
以下是/boot没有单独分区的命令:
引用:
grub rescue>set root=(hd0,msdos5)
grub rescue>set prefix=(hd0,msdos5)/boot/grub
grub rescue>insmod /boot/grub/normal.mod(这句不能用的话,就输入insmod normal 回车)
以下是/boot 单独分区的命令:
引用:
grub rescue>set root=(hd0,msdos5)
grub rescue>set prefix=(hd0,msdos5)/grub
grub rescue>insmod /grub/normal.mod

4. 然后调用如下命令,就可以显示出丢失的grub菜单,熟悉的紫色页面,可以选择进入ubuntu或者windows系统了。若黑屏,可参考问题3。
grub rescue>normal
不过不要高兴,如果这时重启,问题依旧存在,我们需要进入Linux中,对grub进行修复。

5:选择ubuntu,进入之后启动终端,输入如下命令

 sudo update-grub
sudo grub-install /dev/sda

!!!!!注意install后面的空格!!!!!!
对于大部分人来说,一般我们的电脑都只有一个磁盘,sda后面什么都不要加了。第一块硬盘是sda,第二块是sdb,诸如此类。硬盘间以sd后的字母来区别。数字是区分一个硬盘上的不同分区的。
问题3:问题2中的操作4之后,黑屏,出现“grub>”,未能进入到熟悉的选择操作系统的紫色菜单。
如果找不到正确的/grub目录,说明前面的步骤有误。解决方法可参考https://zhidao.baidu.com/question/2011441867425456828.html或者http://linux.chinaunix.net/techdoc/beginner/2009/10/26/1141494.shtml
也可以很简单地,关机,重新配置问题2的解决方案。
问题4:调整分区的时候提示虚拟内存更改。但是更改后再分区还是这样提示,好像刚才更改的虚拟内存是无效的。
比如你想减小D盘,来扩大C盘,但是D盘上有虚拟内存,这个时候分区助手就会提示你更改虚拟内存。可以按照这个链接中的方法把虚拟内存转移到别的盘。https://jingyan.baidu.com/article/f3e34a1281caabf5eb6535d9.html。这里需要注意的一点就是,注意D盘的分页文件大小。如果是“托管的系统”,就说明虚拟类存还在D盘,由系统自动分配大小。需要把D盘的分页文件大小调整为“无”,才是真正把虚拟内存从D盘移出去了。
以上都是根据我自己的分区经历来写的,希望能对遇到相似情况的同学有帮助。如有不足,还请留言告知。多谢!