DFS-Fuse 挂载方法

1、  首先从http://fuse.sourceforge.net/ 下载fuse版本,我使用的版本是2.8.5

2、  解压fuse

   tar -zxf fuse-2.8.5.tar.gz

3、  安装

cd fuse-2.8.5

/configure --prefix=/usr

make

make install

/sbin/ldconfig  更新一下动态库。

至此,fuse安装完成,可以从fuse官网将example试一下,确定是否安装成功

 

4、  编译dfs-fuse

进入$HADOOP_HOME:  cd $HADOOP_HOME

编译libhdfs:    ant compile-c++-libhdfs -Dlibhdfs=1

打包:    ant package

编译dfs-fuse:    ant compile-contrib -Dlibhdfs=1 -Dfusedfs=1

成功后会在$HADOOP_HOME/build/contrib/fuse-dfs/ 产生一个脚本和一个二进制文件,有用的是fuse_dfs_wrapper.sh脚本

 

出现的问题:

dfs-fuse时候有可能提示找不到libhdfs.so 将$HADOOP_HOME/c++/Linux-amd64-64/lib/* 全部拷贝到$HADOOP_HOME/build/libhdfs下面。

编译dfs-fuse会提示找不到jvm,一般是没有找到jvm的路径, export OS_ARCH=amd64(对于64位机器),或者检查LD_LIBRARY_PATH变量是否设置正确

5、  挂载

在$HADOOP_HOME/build/contrib/fuse-dfs/ 执行fuse_dfs_wrapper.sh dfs://namenode:8020 /hdfs

其中 dfs后面部分对应的是$HADOOP_HOME/conf/core-site.xml 中fs.default.name选项,后面的参数是要挂架到的目录。

然后就可以对hdfs以普通文件系统的方式进行操作了。

posted on 2012-04-18 17:13  萌@宇  阅读(1080)  评论(0编辑  收藏  举报

导航