台式机i5-2400 3.1G,2G内存,操作系统Win7,JDK1.6.31,推荐学习这篇文章。
1.下载Cygwin,运行Setup.exe,记得安装Sed、Openssh、Openssl,安装目录为d:\cygwin。
2.安装JDK,设置Windows环境变量,添加JAVA_HOME,值为java安装目录,添加CLASSPATH,值为.
- ;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\dt.jar
3.设置Windows环境变量,添加CYGWIN变量,值为ntsec tty,Path变量中添加d:\cygwin;d:\cygwin\bin,
4.将cygwin安装的快捷方式设置兼容性,以管理员权限运行。
5.下载hadoop 0.20.2版本(当前最新版为1.0.1,但是运行jobtracer会出现set permission错误,
- java.io.IOException: Failed to set permissions of path: file:XXX to 0700
6.更改目录权限
- chmod +r /etc/group
- chmod +r /etc/passwd
- chmod +rwx /var
提示 if privilege separation should be used时,输入no
提示 if sshd should be installed as a service时,输入yes
提示 the value of CYGWIN environment variable时,输入ntsec
提示 Do you want to use a different name时,输入no
提示 Create new privileged user account 'cyg_server'?时,输入no
提示 Do you want to proceed anyway?时,输入yes
8.打开Windows服务管理页面,找到CYGWIN sshd服务,设置属性,选择登录,选择有管理员权限的用户和对应的Windows登录密码
9.回到cygwin,运行
- cygrunsrv -S sshd
启动sshd服务。
10.在本地生成空密码的公钥和私钥,运行
- ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
- cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
- ssh localhost
13.将下载的hadoop拷贝到cygwin当前目录下,运行
- tar xvzf hadoop-0.20.2.tar.gz
14.删除hadoop-0.20.2.tar.gz,运行
- rm hadoop-0.20.2.tar.gz
- mkdir logs
- chmod 777 logs
- ln -s "cygdrive/d/Program Files/Java/jdk1.6.31" "/usr/local/jdk"
17.打开hadoop安装目录下的conf目录,编辑hadoop-env.sh,添加
- export JAVA_HOME=/usr/local/jdk
- <?xml version="1.0"?>
- <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
- <configuration>
- <property>
- <name>hadoop.tmp.dir</name>
- <value>/hadoop/tmp</value>
- </property>
- <property>
- <name>fs.default.name</name>
- <value>hdfs://localhost:9000</value>
- </property>
- </configuration>
- <?xml version="1.0"?>
- <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
- <configuration>
- <property>
- <name>dfs.name.dir</name>
- <value>/hadoop/name</value>
- </property>
- <property>
- <name>dfs.data.dir</name>
- <value>/hadoop/data</value>
- </property>
- <property>
- <name>dfs.replication</name>
- <value>1</value>
- </property>
- </configuration>
- <?xml version="1.0"?>
- <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
- <configuration>
- <property>
- <name>mapred.job.tracker</name>
- <value>localhost:9001</value>
- </property>
- <property>
- <name>mapred.local.dir</name>
- <value>/hadoop/mpredtemp</value>
- </property>
- </configuration>
- bin/hadoop namenode -format
- bin/start-all.sh
- bin/hadoop jar hadoop-0.20.2-examples.jar pi 2 10
24.在hadoop安装目录下,运行运行命令
- bin/hadoop fs -put /cygdrive/e/Source/java/TestHadoopUploadFile/test/fg /user/sw-its-hhe-hp/sw-its-hhe/timecount/input
- put: File /cygdrive/e/Source/java/TestHadoopUploadFile/test/fg does not exist.
- cygpath -w /cygdrive/e/Source/java/TestHadoopUploadFile/test/fg
- bin/hadoop fs -put $(cygpath -w /cygdrive/e/Source/java/TestHadoopUploadFile/test/fg) timecount/input