首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >webhdfs上的权限错误

webhdfs上的权限错误
EN

Stack Overflow用户
提问于 2013-09-26 02:46:45
回答 2查看 2.1K关注 0票数 0

我正在使用Hadoop的HDFS的REST接口作为通过网络存储文件的方便方法。为了测试,我按照以下说明在我的mac (10.8.5)上安装了hadoop:

http://importantfish.com/how-to-install-hadoop-on-mac-os-x/

这非常有效,我可以启动hadoop并运行基本测试:

hadoop-示例-1.1.2.jar pi 10 100

现在,我使用python客户端处理发往/来自webhdfs的HTTP请求:

http://pythonhosted.org/pywebhdfs/

但我在尝试创建目录时遇到了一个基本权限错误:

代码语言:javascript
复制
from pywebhdfs.webhdfs import PyWebHdfsClient  
hdfs = PyWebHdfsClient()  
my_dir = 'user/hdfs/data/new_dir'  
hdfs.make_dir(my_dir, permission=755)  

回溯(最近一次调用):

文件"",第1行,位于

文件"/Library/Python/2.7/site-packages/pywebhdfs/webhdfs.py",行207,在make_dir中

代码语言:javascript
复制
 \_raise\_pywebhdfs\_exception(response.status\_code, response.text)

文件"/Library/Python/2.7/site-packages/pywebhdfs/webhdfs.py",第428行,在_raise_pywebhdfs_exception中

代码语言:javascript
复制
 raise errors.PyWebHdfsException(msg=message)

message:{"RemoteException":{"exception":"AccessControlException","javaClassName":"org.apache.hadoop.security.AccessControlException",“pywebhdfs.errors.PyWebHdfsException”:“权限被拒绝: user=webuser,access=WRITE,pywebhdfs.errors.PyWebHdfsException

我还尝试将用户指定为'hdfs‘,而不是指定python库的默认值为'webhdfs’,但得到了相同的结果。读了30分钟后,我放弃了,并意识到我不明白hdfs用户、hadoop安全性(我在安装指令后启用了它)和我的unix用户和权限之间的相互作用。

EN

回答 2

Stack Overflow用户

发布于 2013-09-27 13:56:39

您需要使PyWebHdfsClient user_name与对您尝试写入的目录具有权限的unix用户相匹配。缺省情况下,启动namenode服务的用户是“超级用户”

我编写了您正在使用的pywebhdfs客户端,以响应工作需要。如果你有任何问题或者想要在客户端上请求特性,请在github上留下一个问题,我可以解决它。

https://github.com/ProjectMeniscus/pywebhdfs/issues

谢谢

票数 2
EN

Stack Overflow用户

发布于 2013-09-26 07:44:14

在离开并阅读了更多的文档后,我明白了这一点。webdhfs要求您指定一个与从shell启动hdfs的unix用户相匹配的用户值。所以正确的python是:

代码语言:javascript
复制
from pywebhdfs.webhdfs import PyWebHdfsClient  
user = <specify_linux_user_who_launched_hadoop>
hdfs = PyWebHdfsClient(user_name=user)  
my_dir = '%s/data/new_dir' % user  
hdfs.make_dir(my_dir, permission=755)  
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19012798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档