206
云计算
负载均衡
产品简介
产品价格
快速入门
用户指南
实践操作
常见问题
购买指南
云服务器
产品简介
计费规则
购买指导
控制台使用指南
常见问题
云数据库
产品简介
计费规则
购买指导
快速入门
连接实例
控制台使用指南
对象存储
产品简介
控制台使用指南
程序员百科
Python
Linux系统数据盘分区丢失的问题及其处理方法-阿里云服务器ECS使用教程

产品推荐:

1、安全稳定的云服务器租用,2核/2G/5M仅37元,点击抢购>>>

2、高防物理服务器20核/16G/50M/500G防御仅350元,点击抢购>>>

3、百度智能建站(五合一网站)仅880元/年,点击抢购>>> 模板建站(PC+手机站)仅480元/年,点击抢购>>>

4、阿里云服务器2核2G3M仅99元/年、2核4G5M仅199元/年,新老同享,点击抢购>>> 

5、腾讯云服务器2核2G4M仅99元/年、新老同享,点击抢购>>>   


点击这里点击这里进入阿里云ECS官方页面,立体验云服务器ECS>>>

在处理磁盘相关问题时,您可能会碰到操作系统中数据盘分区丢失的情况。本文介绍了Linux系统下常见的数据盘分区丢失的问题以及对应的处理方法,同时提供了使用云盘的常见误区以及最佳实践,避免可能的数据丢失风险。

前提条件

  • 在修复数据前,您必须先对分区丢失的数据盘创建快照,在快照创建完成后再尝试修复。如果在修复过程中出现问题,您可以通过快照回滚将数据盘还原到修复之前的状态。具体操作,请参见创建一个云盘快照和使用快照回滚云盘。

  • 已注册阿里云账号。如还未注册,请先完成账号注册。

背景信息

在Linux实例里,您可以选择以下任一种工具修复磁盘分区并恢复数据:

  • fdisk:Linux系统默认安装的分区工具。

  • testdisk:主要用于恢复Linux系统的磁盘分区或者数据。Linux系统默认不安装,您需要自行安装这个软件。例如,在CentOS系统里,您可以运行yum install -y testdisk在线安装。

  • partprobe:Linux系统默认安装的工具。主要用于不重启系统时让kernel重新读取分区。

数据恢复方法

在Linux实例里,您重启系统后,可能会出现数据盘分区丢失或者数据丢失的问题。这可能是因为您未在/etc/fstab文件里设置自动挂载。此时,您可以先手动挂载数据盘分区。如果手动挂载时报分区表丢失,您可以尝试如下三种办法进行处理:

  • 通过fdisk恢复分区

  • 通过testdisk恢复分区

  • 通过testdisk直接恢复数据

通过fdisk恢复分区

对数据盘分区时,分区磁盘的起止扇区一般使用默认的值,所以可以先尝试直接使用fdisk命令新建分区进行恢复。具体操作,请参见初始化小于等于2 TiB数据盘(Linux)。通过fdisk恢复分区

如果上述操作无效,您可以使用testdisk工具尝试修复。

通过testdisk恢复分区

这里假设云盘的设备名为/dev/xvdb。按以下步骤使用testdisk工具恢复分区:

  1. 运行testdisk /dev/xvdb(根据实际情况替换设备名),再选择Proceed(默认值)后按回车键。

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

    扫描分区
  3. 选择Analyse后按回车键。

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

    选择Quick Seach

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

  5. 选中分区后,按回车键。

  6. 选择Write保存分区。

    说明

    如果不是您需要的分区,可以选择Deeper Search继续搜索。

    选择Write
  7. Y键确认保存分区。

    按Y
  8. 运行partprobe /dev/xvdb(根据实际情况替换设备名)手动刷新分区表。

  9. 重新挂载分区,查看数据盘里的数据情况。

    重新挂载分区

通过testdisk直接恢复数据

在某些情况下,您可以用testdisk扫描出磁盘分区,但是无法保存分区,此时,您可以尝试直接恢复文件。具体操作步骤如下所示:

  1. 用testdisk扫描出磁盘分区。具体操作,请参见通过testdisk恢复分区的第1步到第4步。

  2. P键列出文件。

    返回结果如下图。按P键

  3. 选中要恢复的文件,再按C键。

  4. 选择目标目录。本示例中以恢复到/home为例。

    选择目标目录

    如果您看到Copy done! 1 ok, 0 failed,表示复制成功,如下图所示。复制成功

  5. 切换到/home目录查看。

    如果您能看到文件,说明文件恢复成功。文件恢复成功

常见误区与最佳实践

数据是用户的核心资产,很多用户在ECS实例上构建网站、自建数据库(MySQL/MongoDB/Redis)。数据丢失会给用户的业务带来巨大的风险。本节介绍了数据安全方面的常见误区和最佳实践。

  • 常见误区

    阿里云的底层存储基于三副本,因此有些用户认为操作系统内数据没有任何丢失风险。实际上这是误解。底层存储的三副本提供对数据磁盘的物理层保护,但是,如果系统内部使用云盘逻辑上出现问题,例如中毒、误删数据、文件系统损坏等情况,还是可能出现数据丢失。此时,您需要通过快照、异地备份等相关技术最大保证数据的安全性。关于三副本的介绍,请参见云盘三副本技术。

  • 最佳实践

    数据盘分区恢复以及数据恢复是处理数据丢失问题最后的一道防线,但未必一定能够恢复数据。强烈建议您参考如下最佳实践,通过对数据创建快照(自动或手动)以及各类备份方案,最大程度地保证数据的安全性。

    • 启用自动快照

      根据实际业务,对系统盘、数据盘创建自动快照。注意,在更换系统盘、实例到期后或手动释放磁盘时,自动快照可能会被释放。

      您可以在ECS控制台上通过修改磁盘属性选择自动快照随磁盘释放。如果想保留自动快照,您可以手动去掉该选项。

      详情请参见快照FAQ和创建自动快照策略。

    • 创建手动快照

      在做下列重要或有风险的操作前,请手动为磁盘创建快照。例如:

      • 系统升级内核

      • 应用升级变更

      • 磁盘数据恢复

      在恢复磁盘时,一定要先对磁盘创建快照,快照完成后做相应的操作。

    • OSS、线下、异地备份

      您可酌情使用OSS、线下、异地等方式备份重要数据。


这条帮助是否解决了您的问题? 已解决 未解决

提交成功!非常感谢您的反馈,我们会继续努力做到更好! 很抱歉未能解决您的疑问。我们已收到您的反馈意见,同时会及时作出反馈处理!