1. 背景

原硬盘分区:C(NTFS)、D(NTFS)、E(350G, NTFS)

下载Ubuntu-12.04-desktop-i386.iso,硬盘安装ubuntu12.04

安装时,在liveCD中将E盘分区删除,从尾部开始,新建一个100G的ext4分区,挂载到"/",再新建一个2G的SWAP分区,这时候在D盘和SWAP之间剩余250G左右的未分配空间。继续安装,完成后grub装在了ext4分区上,系统通过grub引导,一切正常。

重启后进入windows,用未分配的250G空间新建了一个新的NTFS分区:E盘。(注:由于windows下无法识别linux的ext文件系统,这步操作导致分区表里的ext4分区丢失,从而出现后面的问题)

2. Grub rescue

再次重启系统,出现error: unknown filesystem,进入grub rescue模式

error: unknown filesystem

grub rescue>

输入ls命令查看分区

grub rescue>ls

(hd0) (hd0,msdos7) (hd0,msdos6) (hd0,msdos5) (hd0,msdos1)

对四个分区分别ls,尝试找到grub所在的分区

grub rescue>ls (hd0,msdosX)

但是四个分区都返回error: unknown filesystem(注:这是因为分区表中已经不存在grub所在的ext4分区),直接在grub rescue下修复似乎不可能。好在还有liveCD可以看看硬盘究竟怎么了。

3. 找回丢失的linux分区

由于没有光驱,我优先考虑制作U盘liveCD,尝试了用UNetbootin和UltraISO把ubuntu-12.04-desktop-i386.iso镜像写入U盘,都没法启动(U盘也试过两块,一块1G的,一块16G的,都失败了,1G U盘拿来做win pe启动盘倒是成功了),具体原因我没有深究。为了节省时间,我借了个USB光驱和ubuntu12.04安装光盘。

从liveCD进入ubuntu系统,用fdisk命令查看分区,果然已经看不到ext4分区了。

传说testdisk是修复分区表的神器,apt-get失败后(原因未知),我手动下了个6.14版,运行,选择硬盘,扫描,一段时间后扫出七八个带D标记的分区(Deleted),都是之前折腾分区的产物,找到其中start和end能和已有分区接上的那个Linux ext4分区,按P键查看分区文件列表,确定这就是丢失的那个分区,然后按左右键把这个分区标记从D改成*(Bootable Primary),不过在这之前要先把C盘的*标记改成P(Primary),可能是因为bootable分区只允许有一个。按操作提示把这些改动写入分区表。

退出testdisk后,再次运行fdisk,可以看到ext4分区已经找回来了。

4. 修复grub

重启,仍然进入grub rescue,用第二部分介绍的方法逐个分区ls,直到ls (hd0,msdosX)能列出分区下的文件,对于有多个linux分区的情况,需要进一步查看是否存在/boot/grub。

如果"/boot"没有单独挂载,用如下命令

grub rescue>ls (hd0,msdosX)/boot/grub

如果"/boot"挂载到一个独立的分区,用如下命令

grub rescue>ls (hd0,msdosX)/grub

回车后如果能列出一堆文件,说明找到了grub的位置,

grub rescue>set root=(hd0,msdosX)

grub rescue>set prefix=(hd0,msdosX)/boot/grub

grub rescue>insmod /boot/grub/normal.mod

然后执行

grub rescue>normal

稍候,久违的grub菜单出现了。进入ubuntu,在终端执行

sudo update-grub

sudo grub-install /dev/sda

其中sda是硬盘号,不是分区号

重启后,直接进入了grub菜单,修复成功。

pe下修复linux磁盘分区,找回丢失的Linux分区及Grub修复过程相关推荐

  1. pe下bootice修复Linux引导,pe下修复引导不成功?这种方法才是最有效的解决方法...

    pe下修复引导不成功的话,造成系统进不去就会影响到大家使用电脑,很多人都选择重新安装系统,有些人则会选择另寻方法修复系统,下面快启动小编为大家分享详细的如何使用bootice工具修复引导,大家一起来瞧 ...

  2. linux磁盘第一个扇区分析,Linux磁盘分区

    一.磁盘连接方式与设备文件名的关系 计算机常见的磁盘接口有两种,分别是IDE与SATA接口,目前主流接口已经是SATA接口了. 一个IDE扁平电缆可以连接两个IDE设备,通常主机又都会提供两个IDE接 ...

  3. linux 磁盘监控,9个在Linux中监视Linux磁盘分区和用法的工具

    在这篇文章中,我们将回顾一些Linux的命令行工具 ,你可以使用它来检查磁盘分区在Linux中. 监控存储设备空间使用情况是SysAdmin的最重要的任务之一,这有助于确保存储设备上有足够的可用空间, ...

  4. linux 磁盘头损坏 pv不见了,文件系统损坏的修复过程

    最近碰到两次在作扩卷等操做时整个卷数据损坏丢失的状况,有必要记录下问题的处理过程. 若是你是晚班,遇到这种状况,忽然一个卷不见了,你先作好下面两件事. 1 记录好你以前全部的操做命令,用以判断咱们究竟 ...

  5. linux磁盘混乱,Linux磁盘设备文件混乱源于Linux内核自身

    在Linux下往往会碰到这样的问题,磁盘的设备文件,比如/dev/sda, sdb, sdc等等在某些情况下会混乱掉,比如sda变成了sdb或者sdc变成了sdb等等,这样无形中会导致磁盘设备管理的混 ...

  6. linux磁盘配额步骤详细步骤,Linux磁盘配额命令及步骤.doc

    Linux磁盘配额命令及步骤 实训18 磁盘配额 实训目的 掌握磁盘配额操作方法 掌握磁盘配额的测试命令 编辑:陈可辛老师 操作:叶升辉 更多内容咨询:微博:叶升辉IOT, QQ:11座机电话号码 实 ...

  7. linux磁盘管理的命令行,Linux磁盘管理命令介绍

    fdisk  [options]  device 常用选项有: d删除一个分区 n创建一个分区 p显示分区信息 t修改分区的系统id w保存分区表并推出 q退出不保存 创建分区时,如果分区数目大于4个 ...

  8. linux系统启动项没了,重装Windows后找回丢失的Linux启动项

    众所周知,安装Windows和linux双系统的时候最好是先装Windows,然后安装linux.因为linux可以寻找硬盘下的Windows系统,从而显示引导菜单.而霸道的Windows直接无视其他 ...

  9. Linux磁盘空间管理技术用,Linux下使用quota命令管理磁盘空间的实例教程

    1.通过yum 方式 安装quota 复制代码代码如下: #yum install quota 2.VirtualBox创建硬盘如果你的Linux环境建立在VirtualBox下: (1)关闭虚拟机镜 ...

  10. linux 磁盘数据空 还有读写,Linux入门之磁盘管理(5)dd命令使用

    Linux入门之磁盘管理(5)dd命令使用 在Linux中,经常需要一些数据读写等测试,还有文件以及其它数据的备份迁移,一般使用cp命令可以解决一部分,但是其无法进行控制数据的流向及动作,这时就可以使 ...

最新文章

  1. Webhint开源了一种代码检查工具
  2. [BZOJ1188/Luogu3185][HNOI2007]分裂游戏
  3. Windows Server入门系列之十六 端口、连接与端口扫描
  4. 动态规划思路和Python解决零钱兑换问题和最大乘积子序列的乘积的问题
  5. html css position,[CSS]CSS Position 详解
  6. 什么是OAuth 2.0
  7. Linux中ftp密码输错无响应,psftp登陆输入正确用户名和密码后无响应解决办法
  8. 计算机组成原理输入实验报告,计算机组成原理实验 实验报告.doc
  9. 算法:String to Integer (atoi)(字符串转换整数)
  10. 2005世界五百强排名
  11. [基于kk搭建k8s和kubesphere] 1 概念和文档
  12. 小糊涂家装预算软件 v8.0 怎么用
  13. Odoo Excel报表的设计及实现
  14. F11一键还原精灵使用教程(详细图文步骤)
  15. 使用PyQt5为YoloV5添加界面(一)
  16. 1099: PIPI的油田
  17. python 对角阵_python-Numpy分区对角矩阵
  18. 中国交通物流行业规模预测及未来发展趋势分析报告2021-2027年
  19. bpsk matlab,基于MATLAB的BPSK信号仿真分析
  20. Ledger增加浏览器扩展,将硬件钱包与Web 3应用程序连接起来

热门文章

  1. 超实用的大学网课答案搜题软件及公众号有哪些?
  2. java高级工程师认证考试_Java高级软件工程师人才缺口巨大
  3. 【 BlockChain 】零知识证明
  4. 米家插件平台的技术实践之路
  5. 入行 AI,如何选个脚踏实地的岗位?
  6. 超全——一般照片、图片的尺寸、大小、像素
  7. 1400——507B、1370C、1363B、1324D、1365C、1374D
  8. HTML5网页设计盒子模型-内容+padding+boder+margin
  9. Arduino应用开发——TCP/IP无线传输
  10. 一文极速读懂 KEGG 数据库