在解决磁盘相关问题时,您可能会碰到操作系统中数据盘分区丢失的情况。本文详情了Linux系统下常见的数据盘分区丢失的问题以及对应的解决方法,同时提供了使用云盘的常见误区以及最佳实践,避免可能的数据丢失风险。
前提条件
在修复数据前,您必需先对分区丢失的数据盘创立快照,在快照创立完成后再尝试修复。假如在修复过程中出现问题,您可以通过快照回滚将数据盘复原到修复之前的状态。
工具说明
在Linux实例里,您可以选择以下任一种工具修复磁盘分区并恢复数据:
Linux系统下数据盘分区丢失和数据恢复解决办法
在Linux实例里,您重启系统后,可能会出现数据盘分区丢失或者者数据丢失的问题。这可能是由于您未在 etc/fstab 文件里设置自动挂载。此时,您可以先手动挂载数据盘分区。假如手动挂载时报分区表丢失,您可以通过如下三种办法尝试进行解决:
通过fdisk恢复分区
对数据盘分区时,分区磁盘的起止扇区一般使用默认的值,所以可以先尝试直接使用 fdisk 新建分区进行恢复。
假如上述操作无效,您可以使用 testdisk 工具尝试修复。
通过testdisk恢复分区
这里假设云盘的设施名为 /dev/xvdb。按以下步骤使用testdisk恢复分区:
1.运行 testdisk /dev/xvdb #根据实际情况替换设施名,再选择 Proceed(默认值)后按回车键。
2.选择分区表类型进行扫描:一般选择 Intel(默认)。假如您的数据盘采用GPT分区,选择 EFI GPT。
3.选择 Analyse 后按回车键。
4.假如您没有看到没有任何分区信息,选择 Quick Search 后按回车键快速搜索。
在返回结果中会显示分区信息,如下图所示。
5.选中分区后,按回车键。
6.选择 Write 保存分区。
注意:
假如不是您需要的分区,可以选择 Deeper Search 继续搜索。
7.按 Y 键确认保存分区。
8.运行 partprobe /dev/xvdb #根据实际情况替换设施名 手动刷新分区表。
9.重新挂载分区,查看数据盘里的数据情况。
通过testdisk直接恢复数据
在某些情况下,您可以用testdisk扫描出磁盘分区,但是无法保存分区,此时,您可以尝试直接恢复文件。具体操作步骤如下所示:
1.按通过testdisk恢复分区 的第1步到第4步形容找到分区。
2.按 P 键列出文件。
返回结果如下图。
3.选中要恢复的文件,再按 C 键。
4.选择目标目录。本示例中以恢复到 /home 为例。
假如您看到 Copy done! 1 ok, 0 failed 说明复制成功。如下图所示。
5.切换到 /home 目录查看。假如您能看到文件,说明文件恢复成功。
常见误区与最佳实践
数据是客户的核心资产,很多客户在ECS上构建网站、自建数据库(MYSQL/MongoDB/Redis)。数据丢失会给客户的业务带来巨大的风险。如下是在数据安全方面的常见误区和最佳实践。
常见误区
阿里云的底层存储基于三副本,因而有些客户认为操作系统内数据没有任何丢失风险。实际上这是误会。底层存储的三副本提供对数据磁盘的物理层保护,但是,假如系统内部使用云盘逻辑上出现问题,比方中毒、误删数据、文件系统损坏等情况,还是可能出现数据丢失。此时,您需要通过快照、异地备份等相关技术最大保证数据的安全性。
最佳实践
数据盘分区恢复以及数据恢复是解决数据丢失问题最后的一道防线,但未必肯定能够恢复数据。强烈建议您参考如下最佳实践,通过对数据创立快照(自动或者手动)以及各类备份方案,最大程度地保证数据的安全性。
启用自动快照
根据实际业务,对系统盘、数据盘创立自动快照。注意,在更换系统盘、实例到期后或者手动释放磁盘时,自动快照可能会被释放。
您可以在ECS控制台上通过 修改磁盘属性 选择 自动快照随磁盘释放。假如想保留自动快照,您可以手动去掉该选项。
创立手动快照
在做下列重要或者有风险的操作前,请手动为磁盘创立快照。例如:
在恢复磁盘时,肯定要先对磁盘创立快照,快照完成后做相应的操作。
OSS、线下、异地备份
您可酌情使用OSS、线下、异地等方式备份重要数据。
(复制下面的链接到浏览器打开或者者戳网页链接直达)
一:阿里云服务器234元/年,可转让。
https://promotion.aliyun.com/ntms/act/vmpt/aliyun-group/home.html?spm=5176.11544616.1149178.10.35e93bcevNvrbh&userCode=3ek1oxkw
二:企业级高性能ECS 5折起,最低只需1451元。
https://promotion.aliyun.com/ntms/act/enterprise-discount.html?spm=5176.11544616.1149178.13.35e93bcevNvrbh&userCode=3ek1oxkw
三:关系型数据库首购4折起。
https://promotion.aliyun.com/ntms/act/apsaradbnewpromotion.html?spm=5176.11544616.1149178.14.35e93bcevNvrbh&userCode=3ek1oxkw
四:1000元新购,续费代金券
https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=3ek1oxkw