为了开发方便想要直接在windows下开发,遇到了访问权限的问题。解决方案,大约以下有两种
方案一: 取消hdfs用户权限认证
修改hdfs-site.xml,将 dfs.permissions属性修改为false
<property>
<name>dfs.permissions</name>
<value>false</value>
<description>取消hdfs权限认证,默认情况下是开启的</description>
</property>
总结:这种办法过于粗暴,仅仅开发环境可以使用。生产环境建议采用方案二
方案二: 修改用户权限
这种方法文雅了很多,而且更加安全。我们观察hadoop hdfs中的文件发现了这样的现象,所有的文件都是由一个叫做supergroup的用户组上传的,于是如果将windows的用户也放到这个组里面或许就能够搞定了
具体过程如下
a)创建名为supergroup的用户组
sudo groupadd supergroup
b)将windows用户名加入supergroup中,因为我windows的用户名为Chang所以就就这么弄
sudo useradd -g supergroup -N -r Chang
c)到此为止就搞定了,在windows下的eclipse中随意写个小程序跑跑,比如列出datanote名称。得到了下面的结果
说明已经能够正常访问hdfs了,方法奏效了!
登录 | 立即注册