• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >云计算 > HDFS命令行接口详解,hdfs命令行详解

HDFS命令行接口详解,hdfs命令行详解

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含hdfs详解,hdfs常用命令,hdfs命令,hadoop hdfs命令,hdfs命令大全等服务器相关知识,网友希望可以进行参考

HDFS命令行接口详解,hdfs命令行详解


现在我们将通过命令行与HDFS交互。HDFS还有很多其他接口,但命令行是最简单的,同时也是许多开发者最熟悉的。

在我们设置伪分布配置时,有两个属性需要进一步解释。首先是fs.default.name,设置为hdfs://localhost/,用来为Hadoop设置默认文件系统。文件系统是由URI指定的,这里我们已使用了一个hdfs URI 来配置HDFS为Hadoop的默认文件系统。HDFS的守护程序将通过这个属性来决定HDFS名称节点的宿主机和端口。我们将在localhost上运行,默认端口为8020。这样一来,HDFS用户将通过这个属性得知名称节点在哪里运行以便于连接到它。

第二个属性dfs.replication,我们设为1,这样一来,HDFS就不会按默认设置将文件系统块复制3份。在单独一个数据节点上运行时,HDFS无法将块复制到3个数据节点上,所以会持续警告块的副本不够。此设置可以解决这个问题。

基本文件系统操作

文件系统已经就绪,我们可以执行所有其他文件系统都有的操作,例如,读取文件,创建目录,移动文件,删除数据,列出索引目录,等等。输入hadoop fs -help命令即可看到所有命令详细的帮助文件。

首先将本地文件系统的一个文件复制到HDFS:

1. % hadoopfs -copyFromLocal input/docs/quangle.
txt hdfs://localhost/user/tom/quangle.txt 

该命令调用Hadoop文件系统的shell命令fs,提供一系列的子命令。在这里,我们执行的是-copyFromLocal。本地文件quangle.txt被复制到运行在localhost上的HDFS实体中的/user/tom/quangle.txt文件。其实我们可以省略URI的格式与主机而选择默认设置,即省略hdfs://localhost,就像core-site.xml中指定的那样。

1. % hadoop fs -copyFromLocal input/docs/quangle.
txt /user/tom/quangle.txt 

也可以使用相对路径,并将文件复制到home目录,即/user/tom:

1. % hadoop fs -copyFromLocal input/docs/quangle.txt quangle.txt 

我们把文件复制回本地文件系统,看看是否一样:

1.     % hadoop fs -copyToLocal quangle.txt quangle.copy.txt 

2. % md5 input/docs/quangle.txt quangle.copy.txt 

3. MD5 (input/docs/quangle.txt) = a16f231da6b05e2ba7a339320e7dacd9 

4. MD5 (quangle.copy.txt) = a16f231da6b05e2ba7a339320e7dacd9 

MD5分析结果是一样的,表明这个文件在HDFS之旅中得以幸存并完整。

最后,我们看一下HDFS文件列表。我们创建一个目录来看看它在列表中如何显示:

1. % hadoop fs -mkdir books 

2. % hadoop fs -ls . 

3. Found 2 items  

4. drwxr-xr-x   - tom supergroup          0 
2009-04-02 22:41 /user/tom/books  

5. -rw-r--r--   1 tom supergroup        118 
2009-04-02 22:29 /user/tom/quangle.txt 

返回的信息结果与Unix命令ls -l的输出非常相似,仅有细微差别。第一列显示的是文件格式。第二列是这个文件的副本数(这在Unix文件系统是没有的)。由于我们设置的默认副本数在网站范围内为1,所以这里显示的也都是1。这一列的开头目录栏是空的,因为副本的概念并没有应用-- 目录是作为元数据并存在名称节点中的,而非数据节点。第三列和第四列显示文件的所属用户和组别。第五列是文件的大小,以字节显示,目录大小为0。第六列和第七列是文件的最后修改日期与时间。最后的第八列是文件或目录的绝对路径。

HDFS中的文件许可

HDFS对于文件及目录有与POSIX非常相似的许可模式。

共有三种形式的许可:读取许可(r)、写入许可(w)和执行许可(x)。读取文件或列出目录内容时需要读取许可。写入一个文件,或是在一个目录上创建或删除文件或目录,需要写入许可。对于文件而言执行许可可以忽略因为HDFS中不能执行文件(与POSIX不同),但在访问一个目录的子项时是需要的。

每个文件和目录都有一个所属用户、所属组别和模式。这个模式是由所属用户的许可、组内其他成员的许可及其他用户的许可组成。

客户端的标识是通过它正在运行的进程的username(名称)和groups(组别)来确定的。由于客户端是远程的,任何人都可以简单地在远程系统上创建一个账户来进行访问。因此,许可只能在一个合作的团体中的用户中使用,作为共享文件系统资源和防止数据意外损失的机制,而不能在一个敌意的环境中保护资源。但是,除去这些缺点,为防止用户或自动工具及程序意外修改或删除文件系统的重要部分,使用许可还是值得的(这也是默认的配置,参见dfs.permissions属性)。

如果启用了许可检查,所属用户许可与组别许可都会被检查,以确认用户的用户名与所属用户许可是否相同,确认他是否属于此用户组的成员;若不符,则检查其他许可。

这里有一个超级用户的概念,超级用户是名称节点进程的标识。对于超级用户,系统不会执行任何许可检查。

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • HDFS概述---namenode的设计详解,hdfs概述---namenode
  • HDFS命令行接口详解,hdfs命令行详解
  • HDFS概念详解---名称节点与数据节点,hdfs节点
  • HDFS概念详解—块,hdfs详解

相关文章

  • Hbase namespace问题,hbasenamespace问题
  • kafka 安装步骤,kafka安装步骤
  • 独家教程利用VPS服务器搭建独享VPN(基于Centos6.4 Openvpn),vpsopenvpn
  • Hadoop之——重新格式化hdfs系统的方法,hadoop格式化hdfs
  • Linux如何上线和下线CPU,Linux上线下线CPU
  • Storm中Trident流合并的例子demo,stormtrident
  • HBase,hbase安装
  • Fedora20上源码安装Xen4.3.0,fedora20xen4.3.0
  • HDFS数据完整性,hdfs完整性
  • HDFS学习笔记(2)hdfs_shell & JavaAPI,hdfshdfs_shell

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • Nodejs课堂笔记-第四课 Dynamodb为何物,nodejsdynamodb
    • solr实战-(一),solr实战
    • Hadoop学习---第一篇搭建Hadoop集群,---hadoop
    • Hadoop文件解压缩,
    • 在Ubuntu 14.04安装和使用Docker,14.04docker
    • Zoho产品经理谈中小企业面临的挑战及应对之策,zoho产品经理
    • AWS和OpenStack服务对照表,OpenStack服务英文单词的中文翻译,awsopenstack
    • 大数据学习笔记1--hadoop简介和入门,学习笔记1--hadoop
    • Linux IRQ Affinity,linuxirqaffinity
    • 使用sqoop,sqoop2使用

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有