Linux系统下常见的数据盘分区丢失的问题以及对应的处理方法
在修复数据前,您必须先对分区丢失的数据盘创建快照,在快照创建完成后再尝试修复。如果在修复过程中出现问题,您可以通过快照回滚将数据盘还原到修复之前的状态。
前提条件
在修复数据前,您必须先对分区丢失的数据盘创建快照,在快照创建完成后再尝试修复。如果在修复过程中出现问题,您可以通过快照回滚将数据盘还原到修复之前的状态。
工具说明
在Linux实例里,您可以选择以下任一种工具修复磁盘分区并恢复数据:
- fdisk:Linux系统默认安装的分区工具。
- testdisk:主要用恢复Linux系统的磁盘分区或者数据。Linux系统默认不安装,您需要自行安装这个软件,比如,在CentOS系统里,您可以运行 yum install -y testdisk 在线安装。
- partprobe:Linux系统默认安装的工具。主要用于不重启系统时让kernel重新读取分区。
Linux系统下数据盘分区丢失和数据恢复处理办法
在Linux实例里,您重启系统后,可能会出现数据盘分区丢失或者数据丢失的问题。这可能是因为您未在 etc/fstab 文件里设置自动挂载。此时,您可以先手动挂载数据盘分区。如果手动挂载时报分区表丢失,您可以通过如下三种办法尝试进行处理:通过fdisk恢复分区、通过testdisk恢复分区 或者 通过testdisk直接恢复数据。
通过fdisk恢复分区
对数据盘分区时,分区磁盘的起止扇区一般使用默认的值,所以可以先尝试直接使用 fdisk 新建分区进行恢复。具体操作,请参考 Linux 格式化和挂载数据盘。

如果上述操作无效,您可以使用 testdisk 工具尝试修复。
通过 testdisk 恢复分区
这里假设云盘的设备名为 /dev/xvdb。按以下步骤使用 testdisk 恢复分区:
- 运行 testdisk /dev/xvdb(根据实际情况替换设备名),再选择 Proceed(默认值)后按回车键。

- 选择分区表类型进行扫描:一般选择 Intel(默认)。如果您的数据盘采用GPT分区,选择 EFI GPT。

- 选择 Analyse 后按回车键。

- 如果您没有看到没有任何分区信息,选择 Quick Search 后按回车键快速搜索。

在返回结果中会显示分区信息,如下图所示。

- 选中分区后,按回车键。
- 选择 Write 保存分区。
说明 如果不是您需要的分区,可以选择 Deeper Search 继续搜索。

- 按 Y 键确认保存分区。

- 运行 partprobe /dev/xvdb(根据实际情况替换设备名)手动刷新分区表。
- 重新挂载分区,查看数据盘里的数据情况。

- 运行 testdisk /dev/xvdb(根据实际情况替换设备名),再选择 Proceed(默认值)后按回车键。
通过testdisk直接恢复数据
在某些情况下,您可以用testdisk扫描出磁盘分区,但是无法保存分区,此时,您可以尝试直接恢复文件。具体操作步骤如下所示:
- 按 通过testdisk恢复分区 的第1步到第4步描述找到分区。
- 按 P 键列出文件。 返回结果如下图。

- 选中要恢复的文件,再按 C 键。
- 选择目标目录。本示例中以恢复到 /home 为例。

如果您看到
Copy done! 1 ok, 0 failed说明复制成功。如下图所示。
- 切换到 /home 目录查看。如果您能看到文件,说明文件恢复成功。

Linux系统下常见的数据盘分区丢失的问题以及对应的处理方法的更多相关文章
- Linux 系统挂载阿里云数据盘
适用系统:Linux(Redhat , CentOS,Debian,Ubuntu) * Linux的云服务器数据盘未做分区和格式化,可以根据以下步骤进行分区以及格式化操作. 下面的操作将会把数据盘划 ...
- 【Linux】扩展阿里云数据盘分区和文件系统
扩容云盘只是扩大存储容量,不会扩容文件系统 一.准备工作 在扩展数据盘扩展分区和文件系统前,请提前完成以下工作. 创建快照以备份数据,防止操作失误导致数据丢失. 通过ECS控制台或者API扩容云盘容量 ...
- Linux系统下如何设置IP地址?
Linux系统下如何设置IP地址?我们可以通过命令设定IP的方法,不过此方法的前提条件是用户需root权限.在linux系统的 /etc/sysconfig/network-script/ifcfg- ...
- linux系统下,11款常见远程桌面控制软件(转载)
远程控制能够给人们带来很多便利,本文介绍了11款常见的Linux系统下的远程桌面控制工具,总有一款能适合您. 一. Grdc 它是一个用GTK+编写的,适用于gnome桌面环境的远程桌面访问软件.看图 ...
- linux系统下,11款常见远程桌面控制软件
linux系统下,11款常见远程桌面控制软件 一. Grdc 它是一个用GTK+编写的,适用于gnome桌面环境的远程桌面访问软件.看图: 常见功能: 1.提供全屏,窗口化的远程控制.支持高分辨率下的 ...
- linux数据盘分区以及格式化
首先切换到root账户下 sudo -i 手动格式化 请根据以下步骤对数据盘进行分区以及格式化,并挂载分区使数据盘可用. 注:执行以下命令时,请注意修改数据盘符,可以使用”fdisk -l”查看盘符 ...
- 05 Linux系统下的用户以及用户权限管理(权限管理介绍、用户管理、常见命令介绍)
这一节我们介绍Linux的用户以及权限管理的前半段,包括:1.权限管理介绍: 2.用户管理: 3.常见命令 权限管理介绍 权限管理: 为了访问计算机资源,我们需要对其进行授权才能访问,根据什么东西来进 ...
- rsync Linux系统下的数据镜像备份工具
rsync是Linux系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync.rsync支持大多数的类Unix系统,无论是Linux.Solaris还是BSD上都经过了良好的 ...
- 在Linux系统下制作系统启动盘(Ubuntu Linux)
在Linux系统下制作系统启动盘有两种方法: 1.用dd命令 2.用Linux自带的图形界面工具 Startup Disk Creator 本教程使用第2种方式,用Linux自带的图形界面工具制作系统 ...
随机推荐
- js强制限制输入允许两位小数
<input type="text" value="@item.CostCash.Value.ToString("#0.00")" c ...
- 通过VS2019使用Web部署发布.net core程序
服务器:Windows Server2012R2 服务器已安装好IIS 需要启用Web Management Service 与 Web部署代理服务 服务器默认是没有Web部署代理服务的 需要安装 ...
- Linux 编程题
1. 产生一个进程树,父进程有2个子进程,这2个子进程分别又有2个子进程,每个进程休眠5秒后退出,并在退出前打印自己的进程id号. # include<stdio.h> # include ...
- JMeter——分布式压测
一.Jmeter4.0分布式压测准备工作 压测注意事项 the firewalls on the systems are turned off or correct ports ...
- Django redis 应用
一.自定义连接池 与python中使用连接池一样(使用单例对象) 注意:每个视图函数都要有 conn = redis.Redis(connection_pool=POOL) 二.使用第三方模块(dja ...
- 【Flink】Flink作业调度流程分析
1. 概述 当向Flink集群提交用户作业时,从用户角度看,只需要作业处理逻辑正确,输出正确的结果即可:而不用关心作业何时被调度的,作业申请的资源又是如何被分配的以及作业何时会结束:但是了解作业在运行 ...
- springboot中的那些连接池
hello~各位读者新年好! 回想起前几天在部署springboot项目到正线时,线上环境要求jdk7,可项目是基于jdk8开发的,springboot也是用的springboot2以上的版本,可以说 ...
- servlet 深入了解
servlet 作用 在Java web b/s架构中,servlet扮演了重要的角色,作为一个中转处理的容器,他连接了客户端和服务器端的信息交互和处理.简单来说,客户端发送请求,传递到servle ...
- Idea | Load error: undefined path variables
Load error: undefined path variables 案例 今天打开idea项目,突然间出现如下异常: Load error: undefined path variables 类 ...
- 使用 web3D 技术的风力发电场展示
前言 风能是一种开发中的洁净能源,它取之不尽.用之不竭.当然,建风力发电场首先应考虑气象条件和社会自然条件.近年来,我国海上和陆上风电发展迅猛.海水.陆地为我们的风力发电提供了很好地质保障.正是 ...