编译hadoop插件
① 编译hadoop的eclipse插件出现如下错误提示,求大神解答
安装hadoop插件之前,缺少一些插件,可以在update里面装相关的插件。
② 在Ubuntu下配置Eclipse的Hadoop插件,WordCount程序测试编译不通过!
有Hadoop用eclipse导入一个外来的工程时会出现以上错误,可能是因为你的电脑上安装了多个版本的jdk。或者jdk对应多个jre
解决的办法是:右击工程目录下的jdk 选择 build path---->config build path 或者在eclipse菜单栏点击project----->propertys 在里面再选择java Build Path -----> Libraries---->Add Libraries----->JRE System Library
③ 编译hadoop eclipse插件要联网么
这里用到的hadoop版本是1.1.2,但此插件的编译方面在1.2.0下也通过。)
1)hadoop的eclipse插件源码位于hadoop.home(这里的hadoop.home为你的hadoop主目录)/src/contrib/eclipse-plugin。
ant不外乎是一个build.xml,我们先拿它开刀。
我们找到<target name="jar",里面的元素<相关的先全部删了,然后添加如下的,当然,这里的hadoop-core-XXX.jar,这个XXX是版本号,请根据你下载的hadoop的版本进行设置,也可以在后面的build-contrib.xml中进行设置,这里用变量进行替换,等一下我们再看。
< file="${hadoop.root}/hadoop-core-1.1.2.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/>
< file="${hadoop.root}/lib/commons-cli-1.2.jar" todir="${build.dir}/lib" verbose="true"/>
< file="${hadoop.root}/lib/commons-configuration-1.6.jar" tofile="${build.dir}/lib/commons-configuration-1.6.jar" verbose="true"/>
< file="${hadoop.root}/lib/commons-httpclient-3.0.1.jar" tofile="${build.dir}/lib/commons-httpclient-3.0.1.jar" verbose="true"/>
< file="${hadoop.root}/lib/commons-lang-2.4.jar" tofile="${build.dir}/lib/commons-lang-2.4.jar" verbose="true"/>
< file="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar" tofile="${build.dir}/lib/jackson-core-asl-1.8.8.jar" verbose="true"/>
< file="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar" tofile="${build.dir}/lib/jackson-mapper-asl-1.8.8.jar" verbose="true"/>
网上很多文章都说只要这一步就OK了,但实验证明,我们编译的时候会出现找不到类的情况,主要是没有加载那些JAR包。
2)添加JAR包到classpath
还是build.xml文件中,我们找到<path id="classpath">
在其末尾加上:
<fileset dir="${hadoop.root}">
<include name="*.jar"/>
</fileset>
这里把hadoop根目录下的所有JAR包加入到classpath,至于这里为什么要加,我没怎么用Ant,就留给有兴趣的朋友去研究了。
3)改完上面的,当我们在编译的时候,那些需要的JAR包并没有同时添加到生成的JAR内,这样会有错误,所以我们要修改MANIFIEST.MF文件,相信搞过可运行JAR包的朋友都清楚这个文件用一个JAR来说是多么的重要。
在同级目录下找到META-INF/MANIFEST.MF,找到Bundle-ClassPath:,然后添加如下:
classes/,lib/hadoop-core.jar,lib/commons-configuration-1.6.jar,lib/commons-httpclient-3.0.1.jar,lib/commons-lang-2.4.jar,lib/jackson-core-asl-1.8.8.jar,lib/commons-cli-1.2.jar
注意,这一大段不要换行,否则在生成JAR包时会报错。
4)加完这些,可以说实际上编译就已经OK了,但我们需要跟特定的eclipse相结合,所以我们需要配置eclipse的路径,回到我们刚才build.xml文件的上层文件夹,也就是hadoop.home/src/contrib文件夹下。
找到build-contrib.xml文件,找到project,在property最前面加多一个:
<property name="eclipse.home" value="D:/developerTools/eclipse/eclipse" />
这里的D:/xxx是我的eclipse安装路径,注意,需要把原来windows下的\换成linux样式的/,否则会有问题的。
接下来就开始我们正式的编译工作了,假设ant那些我们都配置好了,已经在path中了,并且ant版本高于1.7.2(建议下最新的),然后我们直接在cmd下执行:
可以看到这样的结果:
这里已经生成成功了,接下来我们就可以到hadoop.home/build/contrib/eclipse-plugin下找到hadoop-eclipse-plugin-${version}.jar这样的一个文件,${version}是什么来的?
这里就涉及到一个前面说的版本变量的问题,我们在build-contrib.xml的eclipse.home下面添加一个:
<property name="version" value="1.1.2" />
这里的版本号请根据你自己下的版本来填,填好后,我们再生成后,就可以看到hadoop-eclipse-plugin-1.1.2.jar这样的一个JAR包,这个版本号根据你设的version值来生成的。
我在另外一台电脑编译时,遇到了报找不到log4j配置文件的错误,类似什么master之类的,如果遇到类似这样的错误,错误如下:
可以尝试修改ivy.xml,把里面的dependency里面的conf里面的master修改为default,一般就可以解决了,这个暂时没发现是什么造成的,遇到类似的问题就可以找找ivy.xml里面的问题。
编译完成后,我们把hadoop-eclipse-plugin-XXX.jar包丢进eclipse的plugins目录下,然后重启eclipse就OK了,启动后就可以看到Map/Rece窗口了,这也方便我们运行WordCount等例子。
④ 怎样安装eclipse hadoop插件
1、下载Eclipse解压。2、把hadoop-eclipse-plugin-1.1.2.jar放到eclipse的plugs目录下。我的hadoop集群用的版本:hadoop1.1.2hadoop0.20以后的版本的安装目录下contrib/没有eclipse的hadoop-*-eclipse-plugin.jar插件,需要自己用ant编译。源文件在:hadoop-x.y.z/src/contrib/eclipse-plugin下,注意:需要下载源目录的包,如查下载的是bin的压缩包,里面是没有eclipse插件的源文件的。3、打开Eclipsewindow--Preferences出现HadoopMap/Rece配置Hadoopinstallationdirectory:注意:我的宿主机windows上并没有安装hadoop,hadoop安装在VM中的centos中在windows下建了一个目录F:/myHadoop把centoshadoop安装根目录下的jar包拷过来。4、新建工程:Map/ReceProject配置hadooplocation:5、刷新DFSLocations列出HDFS服务器上的上的目录:6、问题:在Eclipse上可以列出hadoop集群上的目录,但不能创建文件,上传文件原因:windows下Eclipse安装了hadoop插件,默认使用的是windows当前用户去操作hadoop,而我的hadoop集群当前的用户是grid而Eclipse中hadooplocations的高级参数配置,是不能修改这个用户的:解决方法:在windows用户和组的管理中,把当前用户修改成hadoop组grid用户。但我的机器系统是win7家庭版,打不开用户和组管理:不能已,用另一种方案:windows上新建一个grid用户,然后再打开Eclipse,创建工程,进行以上的配置DFSLoactioins发现这时,在Eclipse中可以列出目录,新建文件夹,上传文件了。(或者修改hadoop集群上文件夹的权限,如:bin/hadoopfs-chmod777./in,下图第2个文件是修改hadoop集群文件平权限后上传的)
⑤ 如何编译hadoop-eclipse-plugin插件
1.编译hadoop2.6.0的eclipse插件
编译源码:
cd src/contrib/eclipse-plugin
ant jar -Dversion=2.6.0 -Declipse.home=/opt/eclipse -Dhadoop.home=/opt/hadoop-2.6.0
eclipse.home 和 hadoop.home 设置成你自己的环境路径
命令行执行编译,产生了8个警告信息,直接忽略。
compile:
[echo] contrib: eclipse-plugin
[javac] /software/hadoop2x-eclipse-plugin/src/contrib/eclipse-plugin/build.xml:76: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
[javac] Compiling 45 source files to /software/hadoop2x-eclipse-plugin/build/contrib/eclipse-plugin/classes
[javac] /opt/hadoop-2.6.0/share/hadoop/common/hadoop-common-2.6.0.jar(org/apache/hadoop/fs/Path.class): warning: Cannot find annotation method 'value()' in type 'LimitedPrivate': class file for org.apache.hadoop.classification.InterfaceAudience not found
[javac] /opt/hadoop-2.6.0/share/hadoop/hdfs/hadoop-hdfs-
⑥ 如何在windows下安装Eclipse Hadoop插件
在windows下安装EclipseHadoop插件主要安装编译Eclipse-hadoop插件即可。1、配置环境变量:把下载好的hadoop-2.5.2解压到D盘的根目录下,然后计算机==》属性==》高级系统设置==》环境变量2、把hadoop-eclipse-plugin-2.6.0.jar放到eclipse==》plugins目录下面,重启Eclipse,打开Window==》Preferences,能够看到HadoopMap/Rece就是插件安装成功,下面指定Hadoop的安装目录即第一步设定的HADOOP_HOME。3、新建Map/ReceProject工程4、输入工程名称,然后点击Finish按钮可以看到如下图所示,可以看到有新建的工程还有自动生成的DFSLocations,此时点击DFSLocations什么都不会看到,因为还没有配置其相应的HDFS:5、显示Hadoop的Map/ReceLocations视图,配置HadoopLocationsWindow==》ShowView==》Other,找到Map/ReceTools下的Map/ReceLocations,并点击ok。设置下面几个参数:
⑦ eclipse安装hadoop插件时没有DFS locations图标,有map/rece location窗口,但是不能配置,
产生这个错误信息,是由于之前已经添加过该插件,然后被自动保存在Eclipse中了,解决方法如下:
1、首先重启Eclipse,在【Windows】|【Preferences】目录下,会多出Hadoop Map/Rece选项。
⑧ 怎么自己动手编译hadoop的eclipse插件
1.在Linux环境中伪分布式部署hadoop(SSH免登陆),运行WordCount实例成功。 http://www.cnblogs.com/PurpleDream/p/4009070.html
2.自己打包hadoop在eclipse中的插件。 http://www.cnblogs.com/PurpleDream/p/4014751.html
3.在eclipse中访问hadoop运行WordCount成功。
所以我下边会分三次记录下我的过程,为自己以后查阅方便,要是能帮助到其他人,自然是更好了!
===============================================================长长的分割线====================================================================
正文:
如果你想在eclipse中安装hadoop的插件,一个很重要的问题就是hadoop的版本与eclipse版本的匹配问题,如果不匹配,可能会导致很多问题。
综上,我在完成了在Linux的CentOS系统中安装hadoop并简单运行WordCount之后(具体参看本文前言中的博客链接),将学习的重点放到了hadoop的eclipse插件上。其实网上也有部分文章在介绍如何编写插件,但是由于我的eclispe版本是Juno,而之前在CentOS安装的是hadoop-1.0.1,所以没有找到完全匹配的成功案例。所以最终决定自己也动手变异一个自己的hadoop插件。
在有了这个想法之后,一开始会觉得特别困难,但是在真正去做之后,会发现很多问题其实还是可以解决的,只要你懂得如果使用网络和谷歌,多参考一下别人的文章,汲取精华,最终一定会成功的。
第一步,确定大致流程:
1.首先我需要ant编译,然后就是hadoop-1.0.1.tar.gz这个安装包,还有就是eclipse。
2.针对我自己的环境,电脑是Win7,eclispe是Juno,下载了hadoop-1.0.1.tar.gz,就差ant之前没有安装。
第二步,安装ant:
1.我参考的是这篇文章http://blog.csdn.net/yang382197207/article/details/10185251,我当时下载的是apache-ant-1.9.4,其他的步骤按照这篇文章介绍的配置就会成功。
第三步,在正式建立项目之前,我在介绍下我的环境: OS: windows 7, Eclipse: Juno, JDK: 1.6.0_43, Hadoop: 1.0.1
1.首先在Eclipse中新建一个Java项目,名字叫hadoop-1.0.1-eclipse-plugin,其实这个名字你可以随意的。
2.解压hadoop-1.0.1.tar.gz,在解压后的目录中(我的是D:\SettingUp\ITSettingUp\Hadoop\hadoop-1.0\hadoop-1.0.1),依次将下面的文件放到项目中:
(1).将\hadoop-1.0.1\src\contrib\eclipse-plugin里面的所有文件以及\hadoop-1.0.1\src\contrib\build-contrib.xml拖拽到项目中
(2).将根目录\hadoop-1.0.1里的所有.jar文件拖拽到eclipse项目中bin目录下。
3.打开项目中的build-contrib.xml,做如下的配置:
(1).找到<property name="hadoop.root" location="hadoop-1.0.1解压缩后的目录"/>
(2).找到<property name="eclipse.home" location="自己的eclipse的目录"/>
(3).找到<property name="version" value="hadoop的版本号"/>
可以参考我的配置,如图:
view sourceprint?
1.
<property name="name" value="${ant.project.name}"/>
2.
<property name="root" value="${basedir}"/>
3.
<property name="hadoop.root" location="D:/SettingUp/ITSettingUp/Hadoop/hadoop-1.0/hadoop-1.0.1"/>
4.
<property name="eclipse.home" location="D:/HaveSetted/ITHaveSetted/Eclipse"/>
5.
<property name="version" value="1.0.1"/>
4.打开项目中的build.xml,做如下的配置:
(1).将文件开头的 <import file="../build-contrib.xml"/> 修改为 <import file="build-contrib.xml"/>
(2).在<javac...>里如下图加入includeantruntime="on",效果如下:
view sourceprint?
01.
<target name="compile" depends="init, ivy-retrieve-common" unless="skip.contrib">
02.
<echo message="contrib: ${name}"/>
03.
<javac
04.
encoding="${build.encoding}"
05.
srcdir="${src.dir}"
06.
includes="**/*.java"
07.
destdir="${build.classes}"
08.
debug="${javac.debug}"
09.
deprecation="${javac.deprecation}"
10.
includeantruntime="on">
11.
<classpath refid="classpath"/>
12.
</javac>
13.
</target>
(3).在<path id="classpath">中添加:<path refid="hadoop-jars"/>,效果如下:
view sourceprint?
1.
<!-- Override classpath to include Eclipse SDK jars -->
2.
<path id="classpath">
3.
<pathelement location="${build.classes}"/>
4.
<pathelement location="${hadoop.root}/build/classes"/>
5.
<path refid="eclipse-sdk-jars"/>
6.
<path refid="hadoop-jars"/>
7.
</path>
(4).在<target name="jar" depends="compile" unless="skip.contrib">这个标签里,在< file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar" todir="${build.dir}/lib" verbose="true"/>这个配置的下面添加如下几个jar包的配置:
view sourceprint?
1.
< file="${hadoop.root}/lib/commons-configuration-1.6.jar" todir="${build.dir}/lib" verbose="true"/>
2.
< file="${hadoop.root}/lib/commons-httpclient-3.0.1.jar" todir="${build.dir}/lib" verbose="true"/>
3.
< file="${hadoop.root}/lib/commons-lang-2.4.jar" todir="${build.dir}/lib" verbose="true"/>
4.
< file="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/>
5.
< file="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/>
最终效果如图:
view sourceprint?
01.
<!-- Override jar target to specify manifest -->
02.
<target name="jar" depends="compile" unless="skip.contrib">
03.
<mkdir dir="${build.dir}/lib"/>
04.
< file="${hadoop.root}/build/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core-1.0.1.jar" verbose="true"/>
05.
< file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar" todir="${build.dir}/lib" verbose="true"/>
06.
07.
< file="${hadoop.root}/lib/commons-configuration-1.6.jar" todir="${build.dir}/lib" verbose="true"/>
08.
< file="${hadoop.root}/lib/commons-httpclient-3.0.1.jar" todir="${build.dir}/lib" verbose="true"/>
09.
< file="${hadoop.root}/lib/commons-lang-2.4.jar" todir="${build.dir}/lib" verbose="true"/>
10.
< file="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/>
11.
< file="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/>
12.
13.
<jar
14.
jarfile="${build.dir}/hadoop-${name}-${version}.jar"
15.
manifest="${root}/META-INF/MANIFEST.MF">
16.
<fileset dir="${build.dir}" includes="classes/ lib/"/>
17.
<fileset dir="${root}" includes="resources/ plugin.xml"/>
18.
</jar>
19.
</target>
(5).在文件末尾</project>标签之前添加配置:
view sourceprint?
1.
<path id="hadoop-jars">
2.
<fileset dir="${hadoop.root}/">
3.
<include name="hadoop-*.jar"/>
4.
</fileset>
5.
</path>
5.打开hadoop-1.0.1的解压缩目录(我的是D:\SettingUp\ITSettingUp\Hadoop\hadoop-1.0\hadoop-1.0.1),复制两个jar包到对应的目录文件夹,以我的文件目录结构举例如下:
(1).将D:\SettingUp\ITSettingUp\Hadoop\hadoop-1.0\hadoop-1.0.1\hadoop-core-1.0.1.jar 复制到D:\SettingUp\ITSettingUp\Hadoop\hadoop-1.0\hadoop-1.0.1\build\这个文件夹中
(2).将D:\SettingUp\ITSettingUp\Hadoop\hadoop-1.0\hadoop-1.0.1\lib\commons-cli-1.2.jar复制到D:\SettingUp\ITSettingUp\Hadoop\hadoop-1.0\hadoop-1.0.1\build\ivy\lib\Hadoop\common这个文件夹中
6.再回到eclipse,打开项目中的\META-INF\MANIFEST.MF文件,做如下的添加:
view sourceprint?
1.
Bundle-ClassPath: classes/,
2.
lib/hadoop-core-1.0.1.jar,
3.
lib/commons-cli-1.2.jar,
4.
lib/commons-configuration-1.6.jar,
5.
lib/commons-httpclient-3.0.1.jar,
6.
lib/commons-lang-2.4.jar,
7.
lib/jackson-core-asl-1.8.8.jar,
8.
lib/jackson-mapper-asl-1.8.8.ja,
7.经过上边的配置,基本已经完成,我们可以编译项目了。右击build.xml文件选择 Run As Ant Build,编译成功,生成的hadoop-1.0.1-eclipse-plugin.jar在hadoop-1.0.1解压目录的\build\contrib\eclipse-plugin文件夹里面。
第四步,当然就是在eclipse中配置我们编译好的插件。
1.把hadoop-1.0.1-eclipse-plugin.jar文件放到eclipse安装目录的plugins中,重启eclipse。重启后,会在Window->Open Perspective->Other里,看到大象图标的Map/Rece出现,或者是window->Preferences中看到Hadoop Map/Rece这个选项。
2.window->Preferences中点击Hadoop Map/Rece这个选项,将Hadoop的那个解压缩目录(我的是D:\SettingUp\ITSettingUp\Hadoop\hadoop-1.0\hadoop-1.0.1)的路径配置上,配置效果图如下:
\
3.然后我们在Window->Open Perspective->Other里,点击Map/Rece,切换到这个模式,截图如下:
\
4.切换到Map/Rece模式后,我们看到画面(4)中的截图,点击右下角的两个小图标,测试有没有反应,如果有反应,暂时先别配置,这个我下篇博客会具体讲。如果怎么点都没有反应,则可以做如下操作:
(1).打开项目中的\META-INF\MANIFEST.MF文件,找到之前编译时,添加的Bundle-ClassPath: classes/ 这个位置,之前我们添加了7个jar包的配置,再增加四个,如下:
view sourceprint?
1.
lib/hadoop-common-0.21.0.jar,
2.
lib/hadoop-hdfs-0.21.0.jar,
3.
lib/log4j-1.2.15.jar,
4.
lib/hadoop-mapred-0.21.0.jar
(2).然后我们还需要去网上下载这四个jar包放到下面的文件夹中,以我的目录举例:D:\SettingUp\ITSettingUp\Hadoop\hadoop-1.0\hadoop-1.0.1\lib。
(3).然后在重新编译即可,在替换原来的插件时,在重启eclipse的过程中,你可以这样做:先删除原来的插件,原来重启eclipse,确认Map/Rece没了;然后再关掉eclipse,将新的插件放到plugins里,之后再次启动eclipse。解决这个问题时我在网上参考的文章是:http://blog.csdn.net/kky2010_110/article/details/7774747,大家也可以看看~。
(4).上边所提到的截图如下:
\
经过上边说的这些步骤,eclipse中的hadoop插件我们算是编译完了,这个过程中一定要注意的是,不要怕失败,多尝试,因为hadoop版本与eclipse版本是有关系的,所以导致你的版本和我的不太一致,可能会失败,但是也可能会成功。所以在这里再次提醒,注意文章开始,我对自己的环境的版本的介绍,尤其是eclipse和hadoop的版本。建议大家如果有时间的话,可以先不管版本,按照我的步骤先走一遍,如果实在是不成功的话,则可以找个和我一样的eclipse和hadoop版本,再体验一回。因为,我在这个过程中,就发现,由于是第一次学hadoop,不见到成功的效果,总觉得少点什么,总想见识一下,莫取笑哈~
至于下一步,如果配置Location和运行WordCount,我会在下一篇博客中具体说明,谢谢支持,觉得文章还不错的话,多多点赞,多多留言哈,这将使我充满动力!
⑨ macos编译的hadoop插件能在linux上用吗
在Linux上安装Hadoop之前,需要先安装两个程序:
1. JDK 1.6或更高版本;
2. SSH(安全外壳协议),推荐安装OpenSSH。
下面简述一下安装这两个程序的原因:
1. Hadoop是用Java开发的,Hadoop的编译及MapRece的运行都需要使用JDK。
2. Hadoop需要通过SSH来启动salve列表中各台主机的守护进程,因此SSH也是必须安装的,即使是安装伪分布式版本(因为Hadoop并没有区分集群式和伪分布式)。对于伪分布式,Hadoop会采用与集群相同的处理方式,即依次序启动文件conf/slaves中记载的主机上的进程,只不过伪分布式中salve为localhost(即为自身),所以对于伪分布式Hadoop,SSH一样是必须的。
一、安装JDK 1.6
安装JDK的过程很简单,下面以Ubuntu为例。
(1)下载和安装JDK
确保可以连接到互联网,输入命令:
sudo apt-get install sun-java6-jdk
输入密码,确认,然后就可以安装JDK了。
这里先解释一下sudo与apt这两个命令,sudo这个命令允许普通用户执行某些或全部需要root权限命令,它提供了详尽的日志,可以记录下每个用户使用这个命令做了些什么操作;同时sudo也提供了灵活的管理方式,可以限制用户使用命令。sudo的配置文件为/etc/sudoers。
apt的全称为the Advanced Packaging Tool,是Debian计划的一部分,是Ubuntu的软件包管理软件,通过apt安装软件无须考虑软件的依赖关系,可以直接安装所需要的软件,apt会自动下载有依赖关系的包,并按顺序安装,在Ubuntu中安装有apt的一个图形化界面程序synaptic(中文译名为“新立得”),大家如果有兴趣也可以使用这个程序来安装所需要的软件。(如果大家想了解更多,可以查看一下关于Debian计划的资料。)
(2)配置环境变量
输入命令:
sudo gedit /etc/profile
输入密码,打开profile文件。
在文件的最下面输入如下内容:
#set Java Environment
export JAVA_HOME= (你的JDK安装位置,一般为/usr/lib/jvm/java-6-sun)
export CLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH"
export PATH="$JAVA_HOME/:$PATH"
这一步的意义是配置环境变量,使你的系统可以找到JDK。
(3)验证JDK是否安装成功
输入命令:
java -version
查看信息:
java version "1.6.0_14"
Java(TM) SE Runtime Environment (build 1.6.0_14-b08)
Java HotSpot(TM) Server VM (build 14.0-b16, mixed mode)
二、配置SSH免密码登录
同样以Ubuntu为例,假设用户名为u。
1)确认已经连接上互联网,输入命令
sudo apt-get install ssh
2)配置为可以无密码登录本机。
首先查看在u用户下是否存在.ssh文件夹(注意ssh前面有“.”,这是一个隐藏文件夹),输入命令:
ls -a /home/u
一般来说,安装SSH时会自动在当前用户下创建这个隐藏文件夹,如果没有,可以手动创建一个。
接下来,输入命令:
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
解释一下,ssh-keygen代表生成密钥;-t(注意区分大小写)表示指定生成的密钥类型;dsa是dsa密钥认证的意思,即密钥类型;-P用于提供密语;-f指定生成的密钥文件。(关于密钥密语的相关知识这里就不详细介绍了,里面会涉及SSH的一些知识,如果读者有兴趣,可以自行查阅资料。)
在Ubuntu中,~代表当前用户文件夹,这里即/home/u。
这个命令会在.ssh文件夹下创建两个文件id_dsa及id_dsa.pub,这是SSH的一对私钥和公钥,类似于钥匙及锁,把id_dsa.pub(公钥)追加到授权的key里面去。
输入命令:
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
这段话的意思是把公钥加到用于认证的公钥文件中,这里的authorized_keys是用于认证的公钥文件。
至此无密码登录本机已设置完毕。
⑩ 怎么在windows7下编译hadoop 1.0.0 插件
1、下载Eclipse解压。 2、把hadoop-eclipse-plugin-1.1.2.jar放到eclipse的plugs目录下。 我的hadoop集群用的版本:hadoop1.1.2 hadoop0.20以后的版本的安装目录下contrib/没有eclipse的hadoop-*-eclipse-plugin.jar插件,需要自己用ant编译。