问题:在执行删除hdfs上的内容时(hdfs dfs -rm -f -r -skipTrash /wxcm)报错:rm: Cannot delete /wxcm/ Name node is in safe mode.

原因:这是因为在分布式文件系统启动的时候,开始的时候会有安全模式,当分布式文件系统处于安全模式的情况下,文件系统中的内容不允许修改也不允许删除,直到安全模式结束。安全模式主要是为了系统启动的时候检查各个DataNode上数据块的有效性,同时根据策略必要的复制或者删除部分数据块。运行期通过命令也可以进入安全模式。在实践过程中,系统启动的时候去修改和删除文件也会有安全模式不允许修改的出错提示,只需要等待一会儿即可。

解决方法:

(1)只需要等待一会儿即可;

(2)可以通过以下命令来手动离开安全模式:hdfs dfsadmin -safemode leave

用户可以通过hdfs dfsadmin -safemode value 来操作安全模式,参数value的说明如下:
hdfs dfsadmin -safemode enter - 进入安全模式
hdfs dfsadmin -safemode leave - 强制NameNode离开安全模式
hdfs dfsadmin -safemode get - 返回安全模式是否开启的信息
hdfs dfsadmin -safemode wait - 等待,一直到安全模式结束。

但是这次即使执行了hdfs dfsadmin -safemode leave也无法退出安全模式。

运行df -lh 发现三个节点的磁盘几乎都满了,于是清理不必要的文件释放磁盘空间。再次运行hdfs dfsadmin -safemode leave

成功退出。

然后可以成功的执行hdfs的删除操作了:hdfs dfs -rm -f -r -skipTrash /wxcm。

但是,删除hdfs上的目录/wxcm,并清空垃圾桶(hdfs dfs -expunge) 之后,检查vmwareMachines文件夹,就是存放虚拟机的文件夹,发现占用的空间还是没有减少。

原来vmware的虚拟机磁盘只会越来越大,而不会随着文件的删除而自动减少。需要手动压缩磁盘。具体是右击某个虚拟机,选择“设置”,选中硬盘,到右侧找到“压缩”,点击压缩按钮,还可以点击“碎片整理”。不过这个方法效果一般。vmware的虚拟机的物理磁盘文件增大后,没法减小,不过打开虚拟机后,里面显示的已使用磁盘空间确实减少了。

删除hdfs上的内容报错:rm: Cannot delete /wxcm/ Name node is in safe mode.的更多相关文章

  1. tomcat上传内容报错

    公司项目报错: o.s.boot.web.support.ErrorPageFilter          :  Forwarding  to  error  page  from  request  ...

  2. iis 7上发布mvc报错:403.14-Forbidden Web 服务器被配置为不列出此目录的内容

    iis 7上发布mvc报错:403.14-Forbidden Web 服务器被配置为不列出此目录的内容 提示里面的解决方法是: 如果不希望启用目录浏览,请确保配置了默认文档并且该文件存在. 使用 II ...

  3. 执行Spark运行在yarn上的命令报错 spark-shell --master yarn-client

    1.执行Spark运行在yarn上的命令报错 spark-shell --master yarn-client,错误如下所示: // :: ERROR SparkContext: Error init ...

  4. hibernate有关联关系删除子表时可能会报错,可以用个clear避免错误

    //清除子表数据 public SalesSet removeSalesSetDistributor(SalesSet salesSet ){ List<SalesSetDistributor& ...

  5. Eclipse中Tomcat Server启动后马上又自动停止报错Address已经使用8005端口 Can't assign requested address (Bind failed)

    Eclipse中Tomcat Server启动后马上又自动停止报错 Can't assign requested address (Bind failed) ,打开Tomcat Server的配置页面 ...

  6. mac 上python编译报错No module named MySQLdb

    mac 上python编译报错No module named MySQLdb You installed python You did brew install mysql You did expor ...

  7. Linux - xshell上传文件报错乱码

    xshell上传文件报错乱码,解决方法 rz -be 回车 下载sz  filename

  8. Azkban上传文件报错installation Failed.Error chunking

    azkaban 上传文件报错Caused by: java.sql.SQLException: The size of BLOB/TEXT data inserted in one transacti ...

  9. Tomcat上传文件报错:returned a response status of 403 Forbidden

    出现这样的错误是没有权限对服务器进行写操作.需要在这个项目所在的tomcat中配置可写操作即可: 在tomcat的web.xml添加下面代码: <init-param><param- ...

随机推荐

  1. 题解 SP19148【INS14G - Kill them All】

    SP19148[INS14G - Kill them All] 前置知识:组合数 乘法逆元 感觉其他博客讲的不是很清楚,也没有说组合数公式是怎么来的,我这样数论极菜的萌新看了好久才想明白qwq.. 还 ...

  2. RS422接口与RS485接口

    RS422具体接线参考网站 RS485接口 RS485设备为半双工设备,RS485收发器信号相关引脚包括控制引脚.485A.485B,其中控制引脚的高低电平决定当前处于接收模式还是发送模式. RS48 ...

  3. SQL注入--sqli-labs(1-4关)

    Less_1 查库:select schema_name from information_schema.schemata 查表:select table_name from information_ ...

  4. 设计模式开始--UML类之间关系表示

    平常写代码写的比较多,没有从架构的层次了解类与类之间的关系,下面就从代码的层面论述UML中类与类质之间的关系 实线的关系要强于虚线 1.extends 表示继承 2.implements表示实现 3. ...

  5. 我的 Python 编码规范

    python 文件的组成 为了便于描述,先上一个 demo #!/usr/bin/env python # -*- coding: utf-8 -*- """通常这里是关 ...

  6. es 搜索功能简介

    DSL 语法介绍 语法 范围 /_search 集群上搜索所有的索引 /index1/_search index1 /index1,index2/_search index1和index2 /inde ...

  7. 18 JavaScript字符串方法

    indexOf():从头到尾进行检索.返回指定文本在字符串最后一次出现的索引,否则返回-1.可以指定第二个参数作为起始位置. lastIndexOf:从尾到头进行检索.返回指定文本最后出现的位置,否则 ...

  8. JS利用HTML5的Web Worker实现多线程

    需求:有一个长时间的斐波拉契的计算希望放在分线程中计算,计算的得到结果后再返回给主线程展示,再计算的时候不冻结页面 var number = 55;//传入分线程的参数 var worker = ne ...

  9. ROS机器人系统学习——踩坑之路

    推荐学习教程:深蓝学院 机器人操作系统ROS理论与实践学习 在学习到第2讲ROS基础的分布式通信时,一直卡在这里,主机开启小海龟后,从机虽然可以通过 rostopic list 列出当前的所有topi ...

  10. 学习笔记(7)- 基于LSTM的对话模型

    LSTM based Conversation Models 本文介绍一种会话语言模型,结合了局部.全局的上下文,以及参与者的角色. 问题提出者 倾向于用"任何人"."如 ...