linux下恢复硬盘分区数据

2024-03-15 05:58

本文主要是介绍linux下恢复硬盘分区数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今天下午在linux 下删除操作,想安装oracle 数据库,整理硬盘的时候用fdisk 重新划分分区,我的硬盘分区表是这样的:
QUOTE
# fdisk -l /dev/hda
Disk /dev/hda
82.3 GB 82348277760 bytes 255 heads 63 sectors/track 10011 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
Device
 Boot  Start   End    Blocks   Id  System /dev/hda1  *    1    1044   8385898+   7  HPFS/NTFS  C/dev/hda2    1045    1057   104422+   83  Linux  /boot /dev/hda3    1058    1249  1542240   82  Linux swap /dev/hda4    1250    10011 70380765   f  W95 Extd LBA
/dev/hda8
   1250    2032   6289384+   83  Linux  /usr /dev/hda9    2033    2293   2096451   83  Linux  /tmp /dev/hda10    2294    2554   2096451   83  Linux  /var /dev/hda11    2555    2746   1542208+   83  Linux  / /dev/hda12    2747    3046   2409718+   83  Linux  /home /dev/hda5    3047    3189   1025860+   83  Linux not used /dev/hda6    3190    3380   2048108+   83  Linux not used /dev/hda7    3381    3670   2048108+   83  Linux not used /dev/hda13    3671   6287    21021021   b  W95 FAT32 D/dev/hda14    6288   10011   29912998+   b  W95 FAT32 E :我想把第567 分区删除然后重新建立两个分区,分别安装oracle 数据库程序文件和数据库文件,我用fdisk 是这样操作的:
QUOTE
# fdisk /dev/hda
The number of cylinders for this disk is set to 10011. There is nothing wrong with that
but this is larger than 1024and could in certain setups cause problems with1 software that runs at boot time e.g. old versions of LILO
2
booting and partitioning software from other OSse.g. DOS FDISK OS/2 FDISK
Command
m for help ): d Partition number 1-13 ): 5
Command
m for help ): d Partition number 1-12 ): 6
Command
m for help ): d Partition number 1-11 ): 7
Command
m for help ): w 退出fdisk 后才发现删错了,竟然把第579 分区删除了!其中hda928G ,里面存了好多有价值的东西,难受死我了!这才想起来fdisk 在每一次删除分区后都会自动把后面的分区重新排序,即:删除第5 分区时,第6 分区变成5 ,第7 分区成为6……
郁闷!……
天无绝人之路:我想到今天早上刚刚把hda 的分区表备份了,并且放到了其它分区!也没有细想,把那个备份拿过来就开始恢复硬盘分区(别笑话我啊):
QUOTE
#dd if=hda-2006-03-21.mbr of=/dev/hda bs=512 count=1 #reboot 重启电脑用fdisk 再看分区表—— 没有效果!
怎么回事?从分区表开始想—— 太简单了—— 分区表只有512 字节,其中只有64 字节存储分区信息,开始的时候硬盘容量很小,64 字节够用了,后来随着硬盘空间增大显得不够了,因此开始有了扩展分区,而我删除的分区正好都在扩展分区内!恢复mbr 肯定是不行的了!
怎么办啊!!!从硬件管理器盯着我的hda 看了半天!发现我删除的分区都是几个独立的空间,就想能不能重新建立我的逻辑分区表来恢复分区内容呢???一不做二不休,反正没有别的办法了,试试吧!
QUOTE
# fdisk /dev/hda
The number of cylinders for this disk is set to 10011. There is nothing wrong with that
but this is larger than 1024and could in certain setups cause problems with1 software that runs at boot time e.g. old versions of LILO
2
booting and partitioning software from other OSse.g. DOS FDISK OS/2 FDISK
Command
m for help ): n First cylinder 3047-10011 default 3047 ):Using default value 3047 Last cylinder or +size or +sizeM or +sizeK 3047-3189default 3047 ):Using default value 3047
Command
m for help ): n First cylinder 3381-10011 default 3670 ):Using default value 3670 Last cylinder or +size or +sizeM or +sizeK 3381-3670 default 3670 ):Using default value 3670
Command
m for help ): n First cylinder 6288-10011 default 628Using default value 6288 Last cylinder or +size or +sizeM or +sizeK 6288-10011 default 10011 ):Using default value 10011
Command
m for help ): t Partition number 1-14 ): 14 Hex code type L to list codes ): b
Command
m for help ): w 接下来该干什么呢?按照常规应该是mkfs.vfat 啦!可是为什么呢?如果只是建立分区表来恢复数据,那么这么做不就是重新建立文件分配表了吗?!绝对不行

这篇关于linux下恢复硬盘分区数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/811008

相关文章

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

Linux如何查看文件权限的命令

《Linux如何查看文件权限的命令》Linux中使用ls-R命令递归查看指定目录及子目录下所有文件和文件夹的权限信息,以列表形式展示权限位、所有者、组等详细内容... 目录linux China编程查看文件权限命令输出结果示例这里是查看tomcat文件夹总结Linux 查看文件权限命令ls -l 文件或文件夹

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

idea的终端(Terminal)cmd的命令换成linux的命令详解

《idea的终端(Terminal)cmd的命令换成linux的命令详解》本文介绍IDEA配置Git的步骤:安装Git、修改终端设置并重启IDEA,强调顺序,作为个人经验分享,希望提供参考并支持脚本之... 目录一编程、设置前二、前置条件三、android设置四、设置后总结一、php设置前二、前置条件

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

Linux下在线安装启动VNC教程

《Linux下在线安装启动VNC教程》本文指导在CentOS7上在线安装VNC,包含安装、配置密码、启动/停止、清理重启步骤及注意事项,强调需安装VNC桌面以避免黑屏,并解决端口冲突和目录权限问题... 目录描述安装VNC安装 VNC 桌面可能遇到的问题总结描js述linux中的VNC就类似于Window

linux下shell脚本启动jar包实现过程

《linux下shell脚本启动jar包实现过程》确保APP_NAME和LOG_FILE位于目录内,首次启动前需手动创建log文件夹,否则报错,此为个人经验,供参考,欢迎支持脚本之家... 目录linux下shell脚本启动jar包样例1样例2总结linux下shell脚本启动jar包样例1#!/bin

C#监听txt文档获取新数据方式

《C#监听txt文档获取新数据方式》文章介绍通过监听txt文件获取最新数据,并实现开机自启动、禁用窗口关闭按钮、阻止Ctrl+C中断及防止程序退出等功能,代码整合于主函数中,供参考学习... 目录前言一、监听txt文档增加数据二、其他功能1. 设置开机自启动2. 禁止控制台窗口关闭按钮3. 阻止Ctrl +