RedHat Linux下安装Hadoop 0.20.2并在Windows下远程连接此(4)

五、把修改好的Hadoop整个文件夹传到linux下

上述文件修改好之后,把haoop整个目录copy草linux下,记得建个目录放这个,我建的目录是 /usr/local/hadoop,把hadoop的整个目录copy到这个下面,然后就是这样的形式

[root@hadoopName hadoop]# cd /usr/local/hadoop

[root@hadoopName hadoop]# ls

hadoop-0.20.2  hadooptmp


/usr/local/hadoop 下有两个文件,一个就是hadoop的根目录hadoop-0.20.2,另一个,就是上述的hadoop.tmp.dir的目录

六、把hadoop的bin加入到环境变量

把hadoop的执行命令加到环境变量里,这样就能直接在命令行里执行hadoop的命令了

操作跟把java的bin加入环境变量一样

1、执行 cd /etc, 进入/etc 目录下。

2、执行 vi profile, 修改profile文件

在里面加入以下四行

Java代码

#set java environment       export JAVA_HOME=/usr/program/jdk1.6.0_06       export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH       export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib  

3、执行 chmod +x profile ,把profile变成可执行文件

4、执行 source profile,把profile里的内容执行生效

7、格式化hadoop,启动hadoop

格式化hadoop

在命令行里执行,hadoop namenode -format,

 笔者在格式化的时候出现了一个错误 Invalid byte 2 of 2-byte UTF-8 sequence,经调查,是因为在修改那3个xml 的时候,用非utf-8 编码保存了,所以出错,用editplus打开从新以uft-8的形式保存,在上传到linux上,再执行 hadoop namenode -format 就行了,执行成功之后,去/usr/local/hadoop/hadooptmp 下会自动生成dfs文件夹,进去会有name文件夹,里面还有别的其他namenode上保存名字空间的文件

启动hadoop

在命令行里执行,start-all.sh,或者执行start-dfs.sh,再执行start-mapred.sh。

在命令行里输入 jps,如果出现一下内容,则说明启动成功。

[root@hadoopName ~]# jps

4505 NameNode

4692 SecondaryNameNode

4756 JobTracker

4905 Jps

4854 TaskTracker

4592 DataNode


启动之后,在/usr/local/hadoop/hadooptmp 下的dfs文件夹里会生成 data目录,这里面存放的是datanode上的数据块数据,因为笔者用的是单机,所以name 和 data 都在一个机器上,如果是集群的话,namenode所在的机器上只会有name文件夹,而datanode上只会有data文件夹。

执行 hadoop fs -ls命令,查看当前hdfs分布式文件系统的 文件目录结构,刚执行会说no such dictionary,

你要先建一个文件夹,用命令 haoop fs -mkdir testdir ,然后再执行hadoop fs -ls,就会展示/user/root/testdir

当前用户是root,所以hdfs的根目录就是  /user/root ,

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/ba467424e6f3510d7f31bdb14eb58b42.html