惊天大悲剧-Hadoop的rmr和trash

这两天在操作Hadoop集群时,由于一个误操作,制作了一个天大的悲剧

不小心把Hadoop集群上的所有文件全部删除了,具体情况是这样的:

我用hadoop的超级帐户要建立一个目录,结果发现位置错了

也是,想使用rmr删掉那个目录,可是不小心把命令写成了

hadoop fs -rmr /user

于是,悲剧出现了,所有user目录下的所有目录和文件全都没有了

当时我就慌神了,赶紧从web查看50070的服务

眼看着DFS Used空间从100多G不停的减少

后来才反应过来,赶紧停掉namenode节点,然后上网google办法

后来,从secondname节点重新恢复了一个checkpoint

但绝大部分数据都已经丢失了,只恢复了一小部分数据,已经没啥用了

幸好,原始log我们在其它服务器上还保留的有,只能重新分析再入Hadoop了

总结了一下几点教训:

  1. 首先一定要控制好hadoop上各用户的权限,使各user只能操作自己的目录
  2. 尽量少用hadoop的超级用户进行操作,可以减少误操作
  3. hadoop的rm和rmr命令,设计的太BT了,连一个确认提示都没有,直接就删除了。看到有人给官方提了这个建议,但人家回复说:已经有了trash机制了,所以不需要提示,真是无语….
  4. hadoop的trash功能:很遗憾,之前没有配置trash,所以就直接给删除了,经过这次误操作,赶紧配置上trash,并设置保留时间为7天。

在core-site.xml中增加如下配置,表明rm后会在trash中保留多少分钟:

<property>
  <name>fs.trash.interval</name>
  <value>10080</value>
  <description>
      Number of minutes between trash checkpoints. If zero, the trash feature is disabled
  </description>
</property>

很遗憾的是,hadoop的这个默认值是0,就是直接删除了,为什么要这么设计呢?郁闷….

经过简单的测试,这个trash功能还是不错的,当rm后,它会move到当前文件夹下的.Trash目录下

如果你删除一个文件或目录多次,则hadoop会自动在name后加上数字序列号

这样,如果你误删除后,就可以有选择的恢复文件了

hadoop fs -mkdir /user/oplog/test
hadoop fs -put *.txt /user/oplog/test
hadoop fs -rmr /user/oplog/test
hadoop fs -ls /user/oplog/.Trash/Current/user/oplog
    drwxr-xr-x   – oplog oplog          0 2010-11-16 10:44 /user/oplog/.Trash/Current/user/oplog/test
hadoop fs -mv /user/oplog/.Trash/Current/user/oplog/test /user/oplog/
hadoop fs -ls /user/oplog/.Trash/Current/user/oplog
    drwxr-xr-x   – oplog oplog          0 2010-11-16 10:44 /user/oplog/.Trash/Current/user/oplog/test
    drwxr-xr-x   – oplog 

[XJTUSE DATABASE]——第三章 关系数据库标准语言SQL 新年了,来个大的,写了好几天,将近9000字,希望对大家有所帮助 阅读详情

相关推荐

微信小程序利用Echarts加载中国地图的步骤

微信小程序如何利用Echarts加载地图?可按照如下四个步骤进行。(阅读时间大概3分钟)。

成都都成 5273

Hadoop的rmr和trash

这两天在操作Hadoop集群时,由于一个误操作,制作了一个天大的悲剧 不小心把Hadoop集群上的所有文件全部删除了,具体情况是这样的: 我用hadoop的超级帐户要建立一个目录,结果发现位置错了 也是,想使用rmr删掉那个目录,可是不小心把命令写成了 hadoop fs -rmr /user 于是,悲剧出现了,所有user目录下的所有目录和文件全都没有了 当时我就慌神了,赶紧从w...

thomas0988 684

PIDNet实战:如何在Cityscapes数据集上实现93.2 FPS的实时语义分割(附完整训练代码)

本文提供了在Cityscapes数据集上实现实时语义分割模型PIDNet的完整工程实践指南。PIDNet凭借其独特的比例-积分-微分三分支架构,在CVPR 2023上取得了速度与精度的出色平衡。文章详细介绍了从环境配置、数据预处理、模型训练到性能优化与部署的全流程,并分享了实现93.2 FPS高推理速度的关键技巧与代码。

weixin_29047919的博客 373

HDFS系统上使用命令hadoop fs -rm -rf 误删文件补救

1.首先明确一点使用hadoop fs -rm -rf 并不是直接的删除文件而是将文件暂存在了hdfs的垃圾护收站里面,如果删除时间较久了就会被自动清理掉无法恢复建议第一时间去垃圾回收站恢复 2.下面我操作删除一个test.txt文件然后恢复的测试 3.删除之后我们去到.Trash文件夹下查看刚刚删除的文件,我们可以看到离我们最近的时间是11:34,无疑刚刚删除的文件就在它下面我们一级一级的查看下去就可以找到(如下所示) 4.将test.txt文件恢复(其实就是mv出去)....

weixin_45381920的博客 4690

超声波清洗机拆解实录:从电路板到换能器,一文看懂内部构造(附高清图)

本文详细拆解了超声波清洗机的内部构造,从电路板设计到换能器工作原理,揭示了其核心技术。通过高清图片和详细分析,展示了功率放大电路、高频变压器及压电换能器等关键部件,为电子爱好者和维修技术人员提供了实用的故障诊断和元件二次利用指南。

grape的博客 1181

别再浪费主板上的PCIE插槽了!手把手教你用VL805芯片打造高速USB3.0扩展坞

本文详细介绍了如何利用VL805芯片将主板闲置的PCIE插槽改造为高性能USB3.0扩展坞。从芯片选型、电路设计到焊接工艺和系统调试,提供了一套完整的实战指南,帮助用户充分释放硬件潜能,实现高达5Gbps的传输速度。

weixin_27134495的博客 326

Hadoop回收站详解

linux系统没有回收站概念,rm -rf很容易造成极大的损失。而在Hadoop或者说HDFS里面,有trash(回收站)的概念,可以使得数据被误删以后,还可以找回来。 Hadoop里的trash选项默认是关闭的,所以如果要生效,需要提前将trash选项打开,修改conf里的core-site.xml即可。 启用trash的相关配置 # 增加fs.trash参数配置 开启trash(进程不需重启) vi core-site.xml <property> <name&

jiedaodezhuti的博客 676

Qwen 三代进化全景对比:从 Qwen2.5 到 Qwen3 再到 Qwen3.5

本文对比了阿里巴巴通义千问三代大模型(Qwen2.5、Qwen3、Qwen3.5)的技术演进。18个月内,模型在架构、训练数据和能力上实现显著突破:从纯稠密结构(Qwen2.5)发展为混合注意力架构(Qwen3.5),支持语言从29种扩展至201种,并实现原生多模态融合。关键进展包括引入MoE架构、Gated DeltaNet混合注意力机制(计算效率提升10倍)、以及从独立模态到早期视觉语言联合训练的转变。模型阵容从7个通用尺寸发展为8+个混合架构,最大参数量达397B,上下文窗口扩展至256K(托管版1M

m0_47999117的博客 1万+

01-Linux的基本指令

Linux的基本指令 基础指令(重点) 1.ls指令: 含义:ls(list) 用法1:#ls 含义:列出当前工作目录下的所有文件/文件夹的名称 用法2:#ls 路径 含义:列出指定路径下的所有文件/文件夹的名称 用法3:#ls 选项 路径 含义:在列出指定路径下的文件/文件夹的名称,并以指定的格式进行显示。 常见的语法: #ls-l 路径 #ls-la 路...

ailsa1010的博客 759

matlab处理las点云(1)——las/laz格式解析【2024最新版】

matlab中的las/laz格式解析。博客长期更新,本文最近一次更新时间为:2024年11月9日。

点云侠的博客 8459

Python爬虫实战:使用Scrapy+Playwright高效爬取全球石油价格历史数据

python复制下载# 产品信息# 日期信息# 价格数据price = scrapy.Field() # 收盘价open = scrapy.Field() # 开盘价high = scrapy.Field() # 最高价low = scrapy.Field() # 最低价volume = scrapy.Field() # 交易量change_percent = scrapy.Field() # 涨跌幅# 元数据。

2201_76125261的博客 1019

Hadoop 从HDFS中删除文件夹命令

文件夹在HDFS上的位置 执行删除命令 hadoop fs -rm -r /gulivideo_etl 成功删除hdfs上的文件夹

m0_67401920的博客 9395

锐捷-GZ073 网络系统管理赛项赛题第1套A模块-S5配置

锐捷-GZ073 网络系统管理赛项赛题第1套A模块-S5配置

weixin_46183247的博客 767

【转载】惊天大悲剧-Hadoop的rmr和trash

转自:http://java-doom.iteye.com/blog/1898000 这两天在操作Hadoop集群时,由于一个误操作,制作了一个天大的悲剧 不小心把Hadoop集群上的所有文件全部删除了,具体情况是这样的: 我用hadoop的超级帐户要建立一个目录,结果发现位置错了 也是,想使用rmr删掉那个目录,可是不小心把命令写成了 hadoop fs -rmr...

weixin_30488313的博客 89

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Hadoop集群的NameNode的备份

Hadoop集群中,NameNode节点存储着HDFS上所有文件和目录的元数据信息 如果NameNode挂了,也就意味着整个Hadoop集群也就完了 所以,NameNode节点的备份很重要,可以从以下2个方面来备份NameNode节点 1. 在hdfs-site.xml中,配置多个name的dir到不同的磁盘分区上: &lt;property&gt;    &lt;name&gt;...

thomas0988 477

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

【hadoop系列】Hadoop HDFS命令

格式:hadoop fs -命令主要有如下的命令:命令说明hadoop fs -mkdir创建HDFS目录hadoop fs -ls列出HDFS目录hadoop fs -copyFromLocal使用-copyFromLocal复制本地文件(local)到HDFShadoop fs -put使用-put复制本地(local)文件到HDFShadoop fs -copyToLocal将HDFS上的文...

weixin_36250487的博客 1万+

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Hadoop学习5-3:HDFS回收站

1 回收站配置2 启回收站功能参数说明3 删除内容查看4 回收站内容恢复5 删除数据不经过回收站6 回收站清空7 客户端操作 开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用 1 回收站配置 在core-site.xml文件中添加如下内容,数字单位为分钟 <property> <name>fs.trash.interval</name> <value>1</value> </propert.

qq_43967413的博客 2572

Hadoop常用笔记shell命令

esc :wq 保存退出  a 修改  ZZ退出  :q!不保存退出 pwd 查看路径 more 文件名 查看文件 cd xxx/ 进入当前目录的xxx下 shutdown -h now 关机 ifconfig 查看IP等相关信息 Ctrl+Alt+F2 切换图像/命令行 exit 切换用户  su 切换root clear 清屏 chown -R hadoop:hadoop /

余音丶未散的博客 1028

hadoop的rmr命令一定要慎用,rmr删除恢复

早上来到公司,看一下昨天晚上的迁移数据,很欣喜啊,9T的数据已经迁移完并且速度很快,每秒400M左右,就想整理一下目录,一不小心误删除,把所有的数据都删除了,好伤心啊,就在网上查找,看到hadoop有trash功能,但默认是0,即不保留,好伤心当时没配置这个参数。 trash的配置 在core-site.xml里增加如下配置   fs.trash.interval   60*24*2

weipanp的专栏 1万+

Hadoop回收站及fs.trash参数详解

前言: * Linux系统里,个人觉得最大的不方便之一就是没有回收站的概念。rm -rf很容易造成极大的损失。而在Hadoop或者说HDFS里面,有trash(回收站)的概念,可以使得数据被误删以后,还可以找回来。 * Hadoop里的trash选项默认是关闭的,所以如果要生效,需要提前将trash选项打开,修改conf里的core-site.xml即可,下面我们测试下开启前后的区别: ...

MySQL技术 1442

hadoop fs常用命令

hdfs常用命令

weixin_42264992的博客 6436

Hadoop hdfs 常用命令

概述 前言 调用文件系统(FS)Shell命令应使用 bin/hadoop fs 的形式。但也可以用hadoop dfs ,两者效果一样。(hadoop dfs命令已不再建议使用) 常用命令 -help 功能:输出这个命令参数手册 -ls 功能:显示目录信息 示例: hadoop fs -ls hdfs://server:9000/ 备注:这些参数中,所有的hdfs路径都可以简写 -----&gt...

小夏陌的博客 4438

rmr报错解决方案

hadoop dfs -rmr && hdfs dfs -rmr解决方案 报错1: rmr: DEPRECATED: Please use ‘-rm -r’ instead. rmr: Permission denied: user=user, access=ALL, inode=" 报错2: ERROR: JAVA_HOME is not set and could not be found. 错误方式一:hadoop fs -rmr /user/user/.Trash/2106

dbc_zt的博客 1171

Hadoop hdfs删除指令

hadoop fs -rm -r hdfs://hadoop102:9000/*

zgy956645239的博客 1177

hdfs命令

文档地址:http://hadoop.apache.org/docs/r1.0.4/cn/hdfs_shell.html FS Shell 调用文件系统(FS)Shell命令应使用bin/hadoop fs <args>的形式。 所有的的FS shell命令使用URI路径...

chongxiting3307的博客 307

Hadoop FS 命令详解

FS Shell 调用文件系统(FS)Shell命令应使用 hadoop fs 的形式。 所有的的FS shell命令使用URI路径作为参数。URI格式是scheme://authority/path。 对HDFS文件系统,scheme是hdfs,对本地文件系统,scheme是file。其中scheme和authority参数都是可选的,如果未加指定,就会使用配置中指定的默认scheme。 一个H...

narata1的博客 8762
上一篇: 一个简单的dom方式读取xml的例子
下一篇: 一个jdbc链接hive的小例子
java_doom
博客等级 码龄20年 6粉丝 199原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值