Hadoop回收站及fs.trash参数详解
前言:
- Linux系统里,个人觉得最大的不方便之一就是没有回收站的概念。rm -rf很容易造成极大的损失。而在Hadoop或者说HDFS里面,有trash(回收站)的概念,可以使得数据被误删以后,还可以找回来。
- Hadoop里的trash选项默认是关闭的,所以如果要生效,需要提前将trash选项打开,修改conf里的core-site.xml即可,下面我们测试下开启前后的区别:
1.不启用trash
[hadoop@hadoop000 ~]$ hdfs dfs -put test.log /
[hadoop@hadoop000 ~]$ hdfs dfs -ls /
Found 3 items
-rw-r--r-- 1 hadoop supergroup 34 2018-05-23 16:49 /test.log
drwx------ - hadoop supergroup 0 2018-05-19 15:48 /tmp
drwxr-xr-x - hadoop supergroup 0 2018-05-19 15:48 /user
# 删除test.log 注意提示
[hadoop@hadoop000 ~]$ hdfs dfs -rm -r /test.log
Deleted /test.log
# 重新查看 发现test.log被删除
[hadoop@hadoop000 ~]$ hdfs dfs -ls /
Found 2 items
drwx------ - hadoop supergroup 0 2018-05-19 15:48 /tmp
drwxr-xr-x - hadoop supergroup 0 2018-05-19 15:48 /user
2.启用trash
[hadoop@hadoop000 hadoop]$ pwd
/opt/software/hadoop-2.8.1/etc/hadoop
# 增加fs.trash参数配置 开启trash(进程不需重启)
[hadoop@hadoop000 hadoop]$ vi core-site.xml
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
<property>
<name>fs.trash.checkpoint.interval</name>
<value>1440</value>
</property>
# fs.trash.interval是在指在这个回收周期之内,文件实际上是被移动到trash的这个目录下面,而不是马上把数据删除掉。等到回收周期真正到了以后,hdfs才会将数据真正删除。默认的单位是分钟,1440分钟=60*24,刚好是一天;fs.trash.checkpoint.interval则是指垃圾回收的检查间隔,应该是小于或者等于fs.trash.interval。
# 参考官方文档:http://hadoop.apache.org/docs/r2.8.4/hadoop-project-dist/hadoop-common/core-default.xml
[hadoop@hadoop000 ~]$ hdfs dfs -put test.log /
[hadoop@hadoop000 ~]$ hdfs dfs -ls /
Found 3 items
-rw-r--r-- 1 hadoop supergroup 34 2018-05-23 16:54 /test.log
drwx------ - hadoop supergroup 0 2018-05-19 15:48 /tmp
drwxr-xr-x - hadoop supergroup 0 2018-05-19 15:48 /user
# 删除test.log 注意提示的不同
[hadoop@hadoop000 ~]$ hdfs dfs -rm -r /test.log
18/05/23 16:54:55 INFO fs.TrashPolicyDefault: Moved: 'hdfs://192.168.6.217:9000/test.log' to trash at: hdfs://192.168.6.217:9000/user/hadoop/.Trash/Current/test.log
# 发现删除的文件在回收站里
[hadoop@hadoop000 ~]$ hdfs dfs -ls /user/hadoop/.Trash/Current
Found 1 items
-rw-r--r-- 1 hadoop supergroup 34 2018-05-23 16:54 /user/hadoop/.Trash/Current/test.log
# 恢复误删除的文件
[hadoop@hadoop000 ~]$ hdfs dfs -mv /user/hadoop/.Trash/Current/test.log /test.log
[hadoop@hadoop000 ~]$ hdfs dfs -ls /
Found 3 items
-rw-r--r-- 1 hadoop supergroup 34 2018-05-23 16:54 /test.log
drwx------ - hadoop supergroup 0 2018-05-19 15:48 /tmp
drwxr-xr-x - hadoop supergroup 0 2018-05-19 15:48 /user
Hadoop回收站及fs.trash参数详解的更多相关文章
- Hadoop生态圈-zookeeper的API用法详解
Hadoop生态圈-zookeeper的API用法详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.测试前准备 1>.开启集群 [yinzhengjie@s101 ~] ...
- linux中与Oracle有关的内核参数详解
工作当中遇到oracle运行时CPU占用率达到90%以上,调小以下参数值后恢复正常. fs.file-max = 65536 net.core.rmem_default=262144 net.core ...
- [spark]-Spark2.x集群搭建与参数详解
在前面的Spark发展历程和基本概念中介绍了Spark的一些基本概念,熟悉了这些基本概念对于集群的搭建是很有必要的.我们可以了解到每个参数配置的作用是什么.这里将详细介绍Spark集群搭建以及xml参 ...
- java架构之路-(分布式)初识zookeeper安装与参数详解
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的功 ...
- [转帖]持久化journalctl日志清空命令查看配置参数详解
持久化journalctl日志清空命令查看配置参数详解 最近 linux上面部署服务 习惯使用systemd 进行处理 这样最大的好处能够 使用journalctl 进行查看日志信息. 今天清理了下 ...
- oracle内核参数详解
一.前言 在生产中,我们安装oracle数据库时,为达到最优我们需要对操作系统的内核参数进行一定的调整.主要从内存.cpu.io以及网络等方面,根据实际情况进行调整.以下参数可供大家参考,如有不当之处 ...
- Nginx主配置参数详解,Nginx配置网站
1.Niginx主配置文件参数详解 a.上面博客说了在Linux中安装nginx.博文地址为:http://www.cnblogs.com/hanyinglong/p/5102141.html b.当 ...
- iptables参数详解
iptables参数详解 搬运工:尹正杰 注:此片文章来源于linux社区. Iptalbes 是用来设置.维护和检查Linux内核的IP包过滤规则的. 可以定义不同的表,每个表都包含几个内部的链,也 ...
- chattr的常用参数详解
chattr的常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在实际生产环境中,有的运维工程师不得不和开发和测试打交道,在我们公司最常见的就是部署接口.每天每个人部署的 ...
随机推荐
- 添物零基础到架构师(基础篇) - JavaScript
JavaScript是什么? JavaScript是web开发必须学习的,ECMAScript是其规则来源. JavaScript的历史 Developed by Brendan Eich of Ne ...
- springboot 集成日志 yml配置
原文:https://www.cnblogs.com/bigben0123/p/7895696.html
- eclipse安装Aptana 插件,并设置使之能提示css,js,html,帮助编写代码
在Eclipse 4.2 上安装 Aptana 3.2遇到的错误 就是找不到什么文件来着,我在装maven的时候也遇到了. 烦人... (这文章是我还在用eclipse的时候,为了编写js代码的时候提 ...
- Linux下汇编语言学习笔记63 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- P2212 [USACO14MAR]浇地Watering the Fields 洛谷
https://www.luogu.org/problem/show?pid=2212 题目描述 Due to a lack of rain, Farmer John wants to build a ...
- cogs——73. 找最佳通路
73. 找最佳通路 ★☆ 输入文件:city.in 输出文件:city.out 简单对比时间限制:1 s 内存限制:128 MB 问题描述有 n 个 城市,它们之间的交通情况已知.现在 ...
- Mybatis教程(一)
1 Mybatis教程(一) 学习过的持久层框架:DBUtils , Hibernate Mybatis就是类似于hibernate的orm持久层框架. 为什么学Mybatis? 目前最主流 ...
- SQL Server转sqlite数据库
下载地址:http://files.cnblogs.com/jason-davis/SQL_Server_To_SQLite_DB_Converter_bin.zip 下载地址:http://file ...
- (工具类)Linux笔记之终端日志记录工具script
在学习Linux时,有时候终端的打印消息对于我们很重要,可是终端显示也是有一定的缓冲空间的.当信息打印许多时,前面的信息就会被覆盖掉.所以这里网上搜索了一下这方面的介绍.现总结例如以下: script ...
- jquery验证插件validate自定义扩展
<script src="${pageContext.request.contextPath}/resources/js/jquery-1.12.0.min.js" type ...