大数据入门(十三)- HDFS的Shell操作

news2024/11/23 3:35:17

零.HDFS的Shell操作
在这里插入图片描述
一.进程启停管理
1.一键启停脚本
Hadoop HDFS组件内置了HDFS集群的一键启停脚本。
1)$HADOOP_HOME/sbin/start-dfs.sh,一键启动HDFS集群
执行原理:
(1)在执行此脚本的机器上,启动SecondaryNameNode
(2)读取core-site.xml内容(fs.defaultFS项),确认NameNode所在机器,启动NameNode
(3)读取workers内容,确认DataNode所在机器,启动全部DataNode
2)$HADOOP_HOME/sbin/stop-dfs.sh,一键关闭HDFS集群

执行原理:
(1)在执行此脚本的机器上,关闭SecondaryNameNode
(2)读取core-site.xml内容(fs.defaultFS项),确认NameNode所在机器,关闭NameNode
(3)读取workers内容,确认DataNode所在机器,关闭全部NameNode

2.单进程启停
除了一键启停外,也可以单独控制进程的启停。

  1. $HADOOP_HOME/sbin/hadoop-daemon.sh,此脚本可以单独控制所在机器的进程的启停
    用法:hadoop-daemon.sh (start|status|stop) (namenode|secondarynamenode|datanode)

例如:hadoop-daemon.sh stop datanode
在这里插入图片描述
3.$HADOOP_HOME/bin/hdfs,此程序也可以用以单独控制所在机器的进程的启停
用法:hdfs --daemon (start|status|stop) (namenode|secondarynamenode|datanode)

例如:hdfs --daemon stop secondarynamenode
在这里插入图片描述
在这里插入图片描述
这里同理在node2和node3上尝试
在这里插入图片描述
在这里插入图片描述
4.HDFS文件系统基本信息
HDFS作为分布式存储的文件系统,有其对数据的路径表达方式。
1)HDFS同Linux系统一样,均是以/作为根目录的组织形式
在这里插入图片描述
在这里插入图片描述
关于HDFS文件系统的操作命令,Hadoop提供了2套命令体系
1)hadoop命令(老版本用法),用法:hadoop fs [generic options]
2)hdfs命令(新版本用法),用法:hdfs dfs [generic options]

5.创建文件夹

hadoop fs -mkdir [-p] <path> ...
hdfs dfs -mkdir [-p] <path> ...
	path 为待创建的目录
	-p选项的行为与Linux mkdir -p一致,它会沿着路径创建父目录。
#创建文件夹旧写法
hadoop fs -mkdir -p /itcast/bigdata  

#创建文件夹新写法
hdfs fs -mkdir -p /itheima/hadoop

在这里插入图片描述
6.查看指定目录下内容
1)hadoop fs -ls [-h] [-R] [ …]
2)hdfs dfs -ls [-h] [-R] [ …]
path 指定目录路径
-h 人性化显示文件size
-R 递归查看指定目录及其子目录

在这里插入图片描述
在这里插入图片描述
7.上传文件到HDFS指定目录下
1)hadoop fs -put [-f] [-p] …
2)hdfs dfs -put [-f] [-p] …
-f 覆盖目标文件(已存在下)
-p 保留访问和修改时间,所有权和权限。
localsrc 本地文件系统(客户端所在机器)
dst 目标文件系统(HDFS)

hadoop fs -put words.txt /itcast

hdfs dfs -put file:///etc/profile hdfs://node1:8020/itcast

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
8.查看HDFS文件内容
1)hadoop fs -cat …
2)hdfs dfs -cat …
读取指定文件全部内容,显示在标准输出控制台。

hadoop fs -cat /itcast/words.txt
hdfs dfs -cat /itcast/profile

在这里插入图片描述
读取大文件可以使用管道符配合more,翻页查看;
1)hadoop fs -cat | more
2)hdfs dfs -cat | more
使用该命令,若要翻页,只需要按一下空格即可实现翻页;
在这里插入图片描述
9.下载HDFS文件
1)hadoop fs -get [-f] [-p] …
2)hdfs dfs -get [-f] [-p] …
下载文件到本地文件系统指定目录,localdst必须是目录
-f 覆盖目标文件(已存在下)
-p 保留访问和修改时间,所有权和权限。
在这里插入图片描述
在这里插入图片描述
10.拷贝HDFS文件
1)hadoop fs -cp [-f] …
2)hdfs dfs -cp [-f] …
-f 覆盖目标文件(已存在下)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

11.追加数据到HDFS文件中
1)hadoop fs -appendToFile …
2)hdfs dfs -appendToFile …
将所有给定本地文件的内容追加到给定dst文件。
dst如果文件不存在,将创建该文件。
如果为-,则输入为从标准输入中读取。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
12.HDFS数据移动操作
1)hadoop fs -mv …
2)hdfs dfs -mv …
移动文件到指定文件夹下
可以使用该命令移动数据,重命名文件的名称

在这里插入图片描述
在这里插入图片描述
13.HDFS数据删除操作
1)hadoop fs -rm -r [-skipTrash] URI [URI …]
2)hdfs dfs -rm -r [-skipTrash] URI [URI …]
删除指定路径的文件或文件夹
-skipTrash 跳过回收站,直接删除
在这里插入图片描述在这里插入图片描述
回收站功能默认关闭,如果要开启需要在core-site.xml内配置:

<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
 
<property>
<name>fs.trash.checkpoint.interval</name>
<value>120</value>
</property>

无需重启集群,在哪个机器配置的,在哪个机器执行命令就生效。
回收站默认位置在:/user/用户名(hadoop)/.Trash

vim /export/server/hadoop/etc/hadoop/core-site.xml

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
14.HDFS shell其它命令
1)命令官方指导文档
https://hadoop.apache.org/docs/r3.3.4/hadoop-project-dist/hadoop-common/FileSystemShell.html
2)提示
常见的操作自己最好能够记住,其他操作可以根据需要查询文档使用。
命令属于多用多会,孰能生巧,不用就忘。

在这里插入图片描述
在这里插入图片描述
15.HDFS WEB浏览
除了使用命令操作HDFS文件系统外,在HDFS的WEB UI上也可以查看HDFS文件系统的内容。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
现在在命令行上传一个文件

hadoop fs -put test.txt /

hadoop fs -ls /

在这里插入图片描述
在这里插入图片描述
使用WEB浏览操作文件系统,一般会遇到权限问题
在这里插入图片描述
这是因为WEB浏览器中是以匿名用户(dr.who)登陆的,其只有只读权限,多数操作是做不了的。
如果需要以特权用户在浏览器中进行操作,需要配置如下内容到core-site.xml并重启集群

  <property>
    <name>hadoop.http.staticuser.user</name>
    <value>hadoop</value>
  </property>

但是,不推荐这样做
1)HDFS WEBUI,只读权限挺好的,简单浏览即可
2)如果给与高权限,会有很大的安全问题,造成数据泄露或丢失

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/579911.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

动态规划2:题目

目录 第1题 Fibonacci 第2题 字符串分割(Word Break) .第3题 三角矩阵(Triangle) 第4题 路径总数(Unique Paths) 第5题 最小路径和(Minimum Path Sum) 第6题 背包问题 第7题 回文串分割(Palindrome Partitioning) 第8题 编辑距离(Edit Distance) 第9题 不同子序列(Dist…

Dubbo入门案例

1.基于以下图实现服务 提供者、消费者 2.前期工作 父POM <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLo…

如何在本地安装多个nodejs版本,方便前端开发

目录 &#x1f4dd;一&#xff0c;使用 nvm&#xff08;Node Version Manager&#xff09;: &#x1f4dd;二&#xff0c;使用 n&#xff08;Node.js 版本管理器&#xff09;: &#x1f4e2;要在本地安装多个 Node.js 版本以便于前端开发&#xff0c;你可以使用工具如 nvm&am…

js常用事件

js常用事件如下&#xff1a; onmouseover&#xff1a;鼠标被移到某元素之上&#xff1b; onmouseout&#xff1a;鼠标从某元素移开&#xff1b; onfocus&#xff1a;元素获得焦点&#xff1b; onblur&#xff1a;元素失去焦点&#xff1b; onclick&#xff1a;鼠标单击事件…

蓝桥杯嵌入式STM32G431RBT6竞赛指南与模板——最后的绝唱

谨以此文和我去年前的一篇蓝桥杯单片机的教程构成电子类的青铜双壁. 国信长天单片机竞赛训练之原理图讲解及常用外设原理&#xff08;遗失的章节-零&#xff09;_昊月光华的博客-CSDN博客 目录 时钟树 串口重定向&#xff1a;printf输出 动态点灯(点灯大师) 按键(常用状态…

RabbitMQ学习-发布确认高级

发布确认springboot版本 确认机制方案&#xff1a; 代码架构图&#xff1a; 配置文件&#xff1a; 在application.properties全局配置文件中添加spring.rabbitmq.publish-confirm-type属性&#xff0c;这个属性有以下几种值 none:禁用发布确认模式(默认)0 correlated:发布消…

Redis的SDS+IntSet+Dict

一)SDS 在redis中&#xff0c;保存key的是字符串&#xff0c;value往往是字符串或者是字符串的集合&#xff0c;可见字符串是redis中最常用的一种数据结构: 但是在redis中并没有直接使用C语言的字符串&#xff0c;因为C语言的字符串存在很多问题 1)获取字符串的长度需要通过运算…

算法12.从暴力递归到动态规划5

算法|12.从暴力递归到动态规划5 1.机器人行进问题 题意&#xff1a;假设有排成一行的N个位置记为1~N&#xff0c;N一定大于或等于2 开始时机器人在其中的M位置上(M一定是1~N中的一个) 如果机器人来到1位置&#xff0c;那么下一步只能往右来到2位置&#xff1b; 如果机器人来到…

stc15w404as使用keil做库,提供头文件,供调用

背景 有个项目使用需要使用库&#xff0c;将代码封装起来&#xff0c;仅仅留下调试接口&#xff0c;给用户使用&#xff0c;调试一些参数。这样工程看起来更简单&#xff0c;也方便客户维护。 也有一些使用场景&#xff0c;需要把自己的代码封装起来&#xff0c;这个是怕被别…

电脑msvcp120.dll缺失怎么办?由于找不到msvcp120.dll的解决方案

MSVCP120.dll文件是Windows操作系统中的一种动态链接库文件。它是由Microsoft C软件包提供的重要组件。当系统提示“MSVCP120.dll文件缺失”时&#xff0c;可能会导致某些应用程序无法正常运行。 以下是修复MSVCP120.dll缺失问题的几种方法&#xff1a; 方法一&#xff1a;修复…

如何在华为OD机试中获得满分?Java实现【公共子串计算】一文详解!

✅创作者&#xff1a;陈书予 &#x1f389;个人主页&#xff1a;陈书予的个人主页 &#x1f341;陈书予的个人社区&#xff0c;欢迎你的加入: 陈书予的社区 &#x1f31f;专栏地址: Java华为OD机试真题&#xff08;2022&2023) 文章目录 1、题目描述2、输入描述3、输出描述…

<学习笔记>从零开始自学Python-之-web应用框架Django( 十四)上线部署(阿里云+Nginx+uwsgi+MySQL)

好了&#xff0c;我们现在有了一个完整的网站&#xff0c;在自己电脑上跑起来没问题了&#xff0c;但是我们做网站肯定不只是为了在本机上自己欣赏&#xff0c;总要放到网上去让别人来浏览。这一章我们就完整跑一遍Django项目的生产环境部署。 1、基本原理 想让你的网站在公网…

【P38】JMeter 随机控制器(Random Controller)

文章目录 一、随机控制器&#xff08;Random Controller&#xff09;参数说明二、测试计划设计2.1、测试计划一2.2、测试计划二2.3、勾选忽略子控制器块 一、随机控制器&#xff08;Random Controller&#xff09;参数说明 可以让控制器内部的逻辑随机执行一个&#xff0c;一般…

如何在华为OD机试中获得满分?Java实现【24点游戏算法】一文详解!

✅创作者&#xff1a;陈书予 &#x1f389;个人主页&#xff1a;陈书予的个人主页 &#x1f341;陈书予的个人社区&#xff0c;欢迎你的加入: 陈书予的社区 &#x1f31f;专栏地址: Java华为OD机试真题&#xff08;2022&2023) 文章目录 1、题目描述2、输入描述3、输出描述…

python自动演奏Freepiano【双手合奏】

文章编写背景 玩了N久的Freepiano,碍于本人没有天赋&#xff0c;左右手一直没法协调。 于是&#xff0c;突然奇想&#xff0c;也是代码设计的思路&#xff1a; 用多线程的方式&#xff0c;开两个线程&#xff0c;然后通过按键模拟的方式&#xff0c;分别模拟左右手去演奏。觉…

分布式网络通信框架(一)——集群和分布式

单机聊天服务器 缺点&#xff1a; 受限于硬件资源&#xff0c;服务器所能承受的用户并发量不够大&#xff1b; 任意模块修改&#xff0c;都会导致整个项目代码重新编译、部署&#xff1b; 系统中&#xff0c;有些模块是CPU密集型&#xff0c;有些是IO密集型&#xff0c;造成…

计算机网络五 传输层

传输层 概念 传输层是指ISO/OSI模型中的第四层&#xff0c;在计算机网络中起着非常重要的作用。它负责数据在网络中的传输&#xff0c;管理数据传输的可靠性和流量控制&#xff0c;保证数据在网络中不会丢失或重复。 提供的服务 传输层提供的主要服务有两种&#xff0c;分别…

《数据库应用系统实践》------ 包裹信息管理系统

系列文章 《数据库应用系统实践》------ 包裹信息管理系统 文章目录 系列文章一、需求分析1、系统背景2、 系统功能结构&#xff08;需包含功能结构框图和模块说明&#xff09;3&#xff0e;系统功能简介 二、概念模型设计1&#xff0e;基本要素&#xff08;符号介绍说明&…

9. Linux下实现简单的UDP请求

本文简单介绍了UDP传输层协议&#xff0c;并在Linux下实现简单的socket通讯 一、UDP UDP&#xff08;User Datagram Protocol&#xff0c;用户数据报协议&#xff09;是一种无连接的传输层协议&#xff0c;它不保证数据包的可靠性和顺序。UDP在IP协议的基础上增加了简单的差错…

阿里云服务器配置CPU内存、带宽和系统盘选择方法

阿里云服务器配置怎么选择&#xff1f;CPU内存、公网带宽和系统盘怎么选择&#xff1f;个人用户选择轻量应用服务器或ECS通用算力型u1云服务器&#xff0c;企业用户选择ECS计算型c7、通用型g7云服务器&#xff0c;阿里云服务器网分享阿里云服务器配置选择方法&#xff1a; 目录…