從http://www.cygwin.com/ 下載cygwin的setup.exe,雙擊運行: java
選擇從Internet安裝: node
設置安裝目錄: windows
設置安裝包目錄: eclipse
設置「Internet Connection」的方式,選擇「Direct Connection」: ssh
選擇一個下載站點: 分佈式
「下一步」以後,可能會彈出下圖的「Setup Alert」對話框,直接「肯定」便可 oop
在「Select Packages」對話框中,必須保證「Net Category」下的「OpenSSL」被安裝: spa
若是還打算在eclipse 上編譯Hadoop,則還必須安裝「Base Category」下的「sed」: orm
「Devel Category」下的subversion 建議安裝: server
下載並安裝:
在上圖所示的對話框中,選中「Create icon on Desktop」,以方便直接從桌面上啓動
Cygwin,而後點擊「完成」按鈕。至此,Cgywin 已經安裝完成。
二、配置環境變量
須要配置的環境變量包括PATH 和JAVA_HOME:將JDK 的bin 目錄、Cygwin 的bin 目錄
以及Cygwin 的usr\bin(sbin)目錄都添加到PATH 環境變量中;JAVA_HOME 指向JRE 安裝目錄。
三、windows系統上運行hadoop集羣,僞分佈式模式安裝步驟:
①啓動cygwin,解壓hadoop安裝包。經過cygdrive(位於Cygwin根目錄中)能夠直接映射到windows下的各個邏輯磁盤分區。例如hadoop安裝包放在分區D:\下,則解壓的命令爲$ tar -zxvf /cygdrive/d/hadoop-0.20.2.tar.gz,解壓後可以使用ls命令查看,以下圖:
默認的解壓目錄爲用戶根目錄,即D:\cygwin\home\lsq(用戶賬戶)。
②編輯conf/hadoop-env.sh文件,將JAVA_HOME變量設置爲java的安裝目錄。例如java安裝在目錄C:\Program Files\java\jdk1.6.0_13,若是路徑沒空格,直接配置便可。存在空格,需將Program Files縮寫成Progra_1,以下圖:
③依次編輯conf目錄下的core-site.xml、mapred-site.xml和hdfs-site.xml文件,以下圖:
④安裝配置SSH
點擊桌面上的Cygwin圖標,啓動Cygwin,執行ssh-host-config命令,而後按下圖上的選擇輸入:
當提示Do you want to use a different name?輸入yes,這步是配置安裝的sshd服務,以哪一個用戶登陸,默認是cyg_server這個用戶,這裏就不事先新建cyg_server這個用戶,用當前本機的超管本地用戶:chenx,後續根據提示,2次輸入這個帳戶的密碼
出現Host configuration finished. Have fun! 通常安裝順利完成。以下圖:
輸入命令$ net start sshd,啓動SSH,以下圖:
注:sshd服務安裝完以後,不會默認啓動,若是啓動報登陸失敗,不能啓動,可在服務屬性-Log On窗口手工修改,在前述的過程之中,cygwin不會校驗密碼是否正確,應該只是校驗了2次的輸入是否一致,而後再手工啓動。不知道爲何,sshd服務若是選擇local system的登陸方式,後續會有問題,因此sshd服務最好設置成當前的登陸用戶。
⑤配置ssh登陸
執行ssh-keygen命令生成密鑰文件
輸入以下命令:
cd ~/.ssh
ls -l
cat id_rsa.pub >> authorized_keys
完成上述操做後,執行exit命令先退出Cygwin窗口,若是不執行這一步操做,下面的操做可能會遇到錯誤。接下來,從新運行Cygwin,執行ssh localhost命令,在第一次執行ssh localhost時,會有「are you sure you want to continue connection<yes/no>?」提示,輸入yes,而後回車便可。當出現下圖提示,即順利完成該步:
⑥hadoop運行
格式化namenode
打開cygwin窗口,輸入以下命令:
cd hadoop-0.20.2
mkdir logs
bin/hadoop namenode –format
啓動Hadoop
在Cygwin 中,進入hadoop 的bin 目錄,
運行./start-all.sh 啓動hadoop;
能夠執行./hadoop fs -ls /命令,查看hadoop 的根目錄;
能夠執行jps 查看相關進程;
以下圖:(若是顯示和下圖相似,通常hadoop安裝/啓動成功)