数据作为用户的核心资产,尤其是很多用户在阿里云ECS上构建网站、自建数据库(MYSQL/MongoDB/Redis),这些数据在日常使用中难免会出现被误删的情况,在这个时候该如何快速、有效地恢复数据呢?
其实在阿里云上恢复数据有多种方式:
1、通过阿里云控制台回滚备份好的快照,自定义镜像恢复等方式;
2、购买多台ECS,实现业务的负载均衡,高可用;
3、利用对象存储 OSS(Object Storage Service),存储静态网页和海量图片、视频等重要数据
小编今天主要以CentOS7操作系统为例,教大家如何使用开源工具Extundelete快速恢复被误删除掉的数据。
首先在Linux下,基于开源的数据恢复工具有很多,比较常见的有debugfs、R-Linux、ext3grep、extundelete等,而常用的是ext3grep和extundelete,这两个工具的恢复原理基本一样,只是extundelete功能更加强大。
Extundelete是基于linux的开源数据恢复软件。在使用阿里云的云服务器ECS时,如果不小心误删数据,并且Linux系统也没有与Windows系统下回收站类似的功能,那么就可以方便快速安装此工具。
Extundelete能够利用inode信息结合日志去查询该inode所在的block位置,以此来查找和恢复所需的数据,该工具最给力的一点就是支持ext3/ext4双格式分区恢复,基于整个磁盘的恢复功能较为强大。
此外需要注意的是在数据被误删后,第一时间要做的是卸载被删除数据所在的磁盘或磁盘分区。因为将文件删除后,仅仅是将文件的inode结点中的扇区指针清零,实际文件还存储在磁盘上,如果磁盘以读写模式挂载,这些已删除文件的数据块就可能被操作系统重新分配出去,当这些数据块被新的数据覆盖后,这些数据就真的丢失了,哪怕恢复工具也回力无天。所以,以只读模式挂载磁盘可以尽量降低数据块中数据被覆盖的风险,以提高恢复数据成功的几率。
还有就是在实际线上恢复过程中,切勿将extundelete安装到被误删的文件所在硬盘,这样会有一定几率将需要恢复的数据彻底覆盖,切记操作前一定要做好快照备份。
当然,也不是所有被误删的数据都能使用此方法恢复,其适用对象主要针对于:
1、磁盘中文件被误删除的用户,且未对磁盘进行过写入等操作
2、网站访问量小、少量 ECS 实例的用户
如今数据已经成为企业的重要资产,甚至是核心资产。数据资产在未来很长时间内会越来越受到重视,这就要求我们不仅要重视收集数据,更要注重存储和保护数据,否则当数据一旦丢失,后果将非常严重。
更多关于阿里云服务及数据相关问题详情请咨询阿里云河南服务中心