误删文件的经验之谈

简介: 一、引言  曾经在运维hadoop集群的时候,出过这么一回事:当时集群因为需要维修机器所以进行停机维护,但是当启动集群的时候发现集群怎么也起不了,在没有问别的同事的情况下,自己百度了一下问题,发现format操作能解决问题,当时的我对于format是一知半解,后来执行format以后集群是起来了,但是数据没有了。追悔莫及已经没有用了,只能对自己说吃一见长一智;这明显就是误操作导致数据被删。今天就来聊一下怎么能防止误删文件!二、防止误删数据技巧:  1、修改或删除数据前请务必备份,最好有异机备份,修改配置等先提交版本管理系统在发布到线上环境。  2、可以使用mv命令替代rm命令,

一、引言

  曾经在运维hadoop集群的时候,出过这么一回事:当时集群因为需要维修机器所以进行停机维护,但是当启动集群的时候发现集群怎么也起不了,在没有问别的同事的情况下,自己百度了一下问题,发现format操作能解决问题,当时的我对于format是一知半解,后来执行format以后集群是起来了,但是数据没有了。追悔莫及已经没有用了,只能对自己说吃一见长一智;这明显就是误操作导致数据被删。今天就来聊一下怎么能防止误删文件!

二、防止误删数据技巧:

  1、修改或删除数据前请务必备份,最好有异机备份,修改配置等先提交版本管理系统在发布到线上环境。

  2、可以使用mv命令替代rm命令,无用的文件不要着急删除,而是移动到回收站/tmp里面观察一段时间;可以通过设置别名等手段屏蔽rm。

  例如:

alias rm='mv -f --target-directory=/tmp/.trash/'

  3、如果非要删除数据,还可用find结合rm替代单纯的rm,包括设定定时任务等动作执行清理。

  4、如果非要使用rm删除,请尽量先切换目录在删目录下的数据,能不用通配符就不用通配符。

  例如:

[root@Richard /]# cd /jdtest/[root@Richard /]# rm -f test1 test2

  5、如果非要使用rm删除并且要采用通配符,请按下面方法:

[root@Richard /]# cd /jdtest/[root@Richard jdtest]# rm -fr * #目标中不要带有“/”。

  6、应禁止使用类似rm -rf /jdtest/*命令删除:

这个命令中,目标路径中的任意斜线前后如果多了空格可能会带来灾难。

[root@Richard /]# rm -fr /jdtest/例如:rm -fr /oldboy/ ,*的前不小心多了空格,会删除当前目录下的所有内容。

[root@Richard /]# rm -fr /jdtest/ #会把当前目录根下全删了。[root@Richard /]# rm -fr /jdtest/

  7、如果必须要rm -rf /jdtest/*命令删除,最后的避免错误方法就是要用tab键去补全,不要手敲任何字符,防止误删。

  8、如果删除的不是目录,就不要用rm -rf,采用rm -f 即可,甚至重要的买域名少量文件,可以不用-f,以获得确认删除提示信息。

  9、额外补充,慎用rsync --delete。

三、总结:

  1、删除数据后,多数情况是可以恢复的,但会影响业务的;

  2、例如:需要停机恢复,且数据丢了,较长时间用户访问不了对应数据了;

  3、恢复工具诸如ext3grep等;

  4、事情发生前未雨绸缪永远比发生了再解决好得多;

  5、养成规范、专业科学的运维习惯、运维流程是避免当黑锅侠的关键!

目录
相关文章
|
弹性计算 Ubuntu Linux
AMD实例使用|AMD实例规格与操作系统兼容性说明
不同的AMD实例可能需要特定版本的驱动程序和内核来运行。购买AMD实例规格时,建议您使用官方支持的操作系统版本,以确保其包含适用于您的AMD实例的必要驱动程序和内核版本。本文主要说明不同代系的AMD实例与不同版本的操作系统镜像之间的兼容性。
[ros] --- 配置ros主从机
[ros] --- 配置ros主从机
985 0
|
安全 项目管理
一文搞懂需求流程规范的制定方法和落地技巧
随着业务和产品的发展、团队的不断扩大,很多团队都不可避免的会遇到需求流程混乱的问题。虽然有的团队也编写了一些“需求流程规范”的文档,但最终却流于纸面,难以在团队真正落地。如何科学制定并有效落实需求管理规范呢?对此,云效产品经理陈逊进行了非常详细的直播分享,本文是他经验的文字总结。
103823 19
|
存储 关系型数据库 数据库
不直接使用文件存储?浅谈数据库的三级模式及重要概念
【5月更文挑战第21天】本文介绍数据库用于解决传统文件系统如Excel的数据冗余、不一致性和访问困难等问题。关系型数据库通过DBMS实现数据管理,包括外模式(用户视图)、概念模式(全局逻辑结构)和内模式(物理存储)。
438 1
不直接使用文件存储?浅谈数据库的三级模式及重要概念
|
存储 编译器 C语言
C learning_2
C learning_2
130 2
|
存储 编解码 Java
VOD
VOD 是阿里云视频点播服务(ApsaraVideo for VOD)的简称,是一种基于云计算和分布式存储技术的视频点播服务,提供了视频上传、转码、加密、存储、分发、播放等一系列功能,可以满足用户的多种视频应用需求。
1163 0
|
iOS开发
完整版在xcode打测试专用ipa包流程​
前言:有时候,想要把自己的程序运行在别人的iphone手机上,但又不能通过本地真机调试的方法安装,这个时候我们就要打一个测试专用的ipa包给远方的测试小伙伴们测试。​
|
5天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。