我主机本来安装了windows xp 和unbuntu15.04,由于在ubuntu下不小心卸载某依赖后,无法登入桌面,网上查了好多资料,原因各种,解决途径也各种,最终是还没有解决问题。各种更新,各种补丁,各种命令都尝试,然后还是水平有限,折腾了2天,不想无奈之下,只能选择重装了。具体的解决登入桌面的过程我这遍就不详细写了,太凌乱,太多了,我已经记不清楚用了多少方法了,都无效,所以有需要的朋友,还是自己上baidu看看吧,这里就不再献丑了。

  本以为重装是一件非常无脑和省事的事,谁知道这次遇到了点小麻烦,于是诞生了这篇小博。

  遇到的问题:

  下载并制作完Ubuntu14.04 USB启动盘后(关于怎么下载和制作Ubuntu USB 安装盘百度很多,请各位自行查找),进入安装界面无后,却无法找到我原先安装好的XP和Ubuntu系统。我之前用fdisk -l命令并没发现什么问题,而且对fdisk参数也不熟,就并没有深入研究,但是网上有人提示可能是磁盘分区表出现了问题,于是我决定进入windows系统用diskgenius软件检测,果然检测结果显示最后个Ubuntu的/home(/dev/sda9)分区超出硬盘边际,那么怎么解决呢,我企图用该软件自带的修复工具修复,但是它会把最后个分区自动格式化成NTFS格式,大家都知道NTFS是xp的格式,而ubuntu需要ext格式,所以此办法不行。

  然后继续搜索ubuntu下修复磁盘的工具,搜到2个比较靠谱的工具,一个是testdisk,另一个就是我之前用的fdisk(因为我之前没对其参数进行研究,后来才发现fdisk是如此强大)。我首先用testdisk,因为名字易懂嘛,感觉也很专业,用起来确实也很专业,各种选项,不过很容易懂,其中有一页显示/dev/sda2, /dev/sda9都是属于extend分区,而sda2的system type是 Win95 Ext'd (LBA), sda9的system type是Linux,说明sda2包含了sda9,这一点也显示出来,最关键一句是说sda9的编辑范围已经超出了sda2得最大范围,由此可以肯定也是硬盘分区出现了问题,可能是硬盘使用太长,空间进一步萎缩引起的。然后它建议我进行重新建立分配硬盘分区表,不巧的是它的修复过程几乎与diskgenius换汤不换药,也是将最后Ubuntu分区直接分为NTFS,于是回退。

  最后开始研究fdisk,正戏来了,当然要详细点,只可惜没图配合:

  1st,sudo fdisk -l,显示硬盘分区表信息,显示有2块硬盘,分别是,sda, sdb,自然我们关心的是我们的本地磁盘sda,而sdb只是USB安装盘

  2nd,sudo fdisk /dev/sda,这个时候,命令行会提示你选择m来显示所有参数信息,照着做,输入m

  3rd, 输入m后,显示一排信息,我们可以使用p命令显示当然这块硬盘的分区表,你不会发现问题。

  4th, 显示分区表后,我尝试用v来进行verify 分区表,结果悲喜交加,悲是因为显示sda9分区不完全在sda2分区之内,喜是因为我们进一步验证了问题的所在。

  5th, 然后再按m,发现有2个添加(n)和删除命令(d),就试图自己手动调整分区表,首先先删除了swap 分区,然后再增加一个小swap分区。(注意删除分区的时候,我是先将/etc/fstab下的相关分区配置行都注释了,增加完后再恢复,这步操作有没有必要,没验证,读者可以自行尝试)。结果并不如愿,再次执行v的时候还是报同样的错误,说明/dev/sda9(/home分区)的地址没有改变,还是越界。

  6th, 再次尝试删除/home分区(反正需要重装,也会被格式化的),然后重新添加/home分区,这次操作后,执行v命令终于没报越界错误,看到曙光啦

  重启,进入usb引导模式,果然,ubuntu安装系统可以识别原有的xp系统和ubuntu15.04系统了。

  本篇完结(唯一遗憾,无图佐证)。

  

  

安装XP和Ubuntu双系统问题——Ubuntu安装时无法识别原有系统的更多相关文章

  1. VirtualBox虚拟机中安装XP系统

    Windows XP是一款经典的操作系统,同时也是一款很老的操作系统,不过尽管如此,还是有一批用户在使用XP系统,所以发行一些软件的时候还是要测试在XP系统中能否运行,这时候我们就可以借助Virtua ...

  2. 如何在VirtualBox虚拟机中安装XP系统? 转

    关闭VM (windows 7 )的方法, 使用 退出 保持状态 开启VM (windows 7 )的方法, 选择启动 ######Iissue 1 网络连接不上,可以重新初始化 网络连接. #### ...

  3. Windows 7硬盘安装CentOS 6.4 双系统 (WIN7硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04))

     WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2.Ubuntu 12.04) 近期在看<鸟哥私房菜:基础学习篇>.认为非常不错,想要用U盘装个windows 7 和 ...

  4. Windows 7硬盘安装CentOS 6.4 双系统 (WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04))

     WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04) 最近在看<鸟哥私房菜:基础学习篇>,觉得很不错,想要用U盘装个windows 7 和 ...

  5. 双系统中ubuntu的安装方法

    双系统中ubuntu的安装方法 注意:给电脑安装双系统时,一定要先装Windows系统,再安装Linux系统! 原因是电脑开机后,要先执行一段bootloader引导程序:再由引导程序启动操作系统.W ...

  6. Windows 10下使用U盘安装Ubuntu双系统

    问题描述:在Windows10下安装Ubuntu. 使用工具:Windows10.Ubuntu16.04 LTS安装包.UltraISO.easyBCD. 操作步骤: 1.安装之前要给Ubuntu分出 ...

  7. mac上安装ubuntu双系统

    mac和ubuntu双系统 mac系统安装ubuntu双系统的方法, mac系统要安装ubuntu, 必须使用u盘作为启动盘, 在mac启动的时候引导mac安装ubuntu, 下面为详细的安装方法: ...

  8. 安装Windows10,Ubuntu双系统14.04LTS记录

    参考链接:http://www.jianshu.com/p/2eebd6ad284d(推荐直接看这个链接,我也是看这篇博客装的)然后自己记录一下,防止以后找不到了 本记录是在Windows10 上安装 ...

  9. WIN7系统下U盘安装Ubuntu双系统

    1. 准备工作 1. 官网下载Ubantu镜像,我下载的是Ubantu14.04.3 LTS版本: 2. 下载 Universal USB Installer (UUI)用于制作U盘启动盘: 3. 下 ...

随机推荐

  1. linux 目录说明

    1./bin /usr/bin  /usr/local/bin   都是放置用户可执行二进制文件. 2./boot 主要是放置liunx系统启动时用到的文件. 2./dev   文件夹内主要是西东外设 ...

  2. 一些 CSS 框架

    利用 CSS 框架,可以简化你的工作,提高工作效率.CSS 框架是一系列 CSS 文件的集合体,包含了基本的元素重置,页面排版.网格布局.表单样式.通用规则等代码块.下面给你推荐了27款优秀的CSS框 ...

  3. 文成小盆友python-num17 - django基础

    一.首先了解web应用的本质 对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. 下面利用socket实现一个简单的web框架: #!/usr/b ...

  4. == 与 is

    Python中的对象包含三要素:id.type.valueid:用来唯一标识一个对象: type:标识对象的类型: value是对象的值. ==是判断对象的值是否相等,也就是value,is是判断对象 ...

  5. linux“批处理”脚本

    依次执行A B C3条语句 最简单的 写如下代码 #!/bin/sh A B C 保存为test.sh然后添加执行权限chmod +x test.sh然后执行该脚本./test.sh

  6. MBProgressHUD的基本使用

    MBProgressHUD的基本使用 分类: IOS2012-10-30 11:19 12047人阅读 评论(2) 收藏 举报 和gitHub上的Demo其实差不多,就是小整理了下,当备忘,想做复杂的 ...

  7. 05 - 替换vtkDataObject中的Update方法 VTK 6.0 迁移

    VTK6 引入了许多不兼容的变.其中之一是删除vtkDataObject中所有有关管道的方法.下面讨论update方法并提供迁移现有代码的建议. Update() vtkDataObject::Upd ...

  8. Android的理解

    从组件的角度来考虑 Activity------------------Service-----------------Broadcast Receiver---------------------- ...

  9. Keil C51 中的函数指针和再入函数

    函数指针是C语言中几个难点之一.由于8051的C编译器的独特要求,函数指针和再入函数有更多的挑战需要克服.主要由于函数变量的传递.典型的(绝大部分8051芯片)函数变量通过堆栈的入栈和出栈命令来传递. ...

  10. HDU5140---Hun Gui Wei Company (主席树)

    主席树太强大了,,如果仅仅用来求第k大就太屈才了..貌似和HDU4605差不多,那个是在图上根据点的顺序建立主席树,这个是根据年龄大小 或者等级高低建立主席树. 题意 大致就是一个二维区间的求和,但是 ...