hadoop學習---2.cygwin及sshd安裝配置


      cygwin是一個在windows平台上運行的unix模擬環境,是cygnus solutions公司開發的自由軟件(該公司開發了很多好東西,著名的還有eCos,不過現已被Redhat收購)。它對於學習unix/linux操作環境,或者從unix到windows的應用程序移植,或者進行某些特殊的開發工作,尤其是使用gnu工具集在windows上進行嵌入式系統開發,非常有用。

     在進行hadoop的windows安裝后,第二步就是cygwin的安裝,雖然很多人建議在linux環境下來進行hadoop的學習,但是很多人由於沒有現成的環境,比如我,又比較懶,只好在windows下嘗鮮了。cygwin在windows下雖然可能遇到很多問題,但是由於現在cygwin是由redhat在維護,我還是很有信心的,雖然遇到了一些問題,但是可以在windows下模擬unix的一些東西,拋開hadoop的學習不說,僅僅安裝一個軟件就可以能模擬unix難道不是一件很爽的事情嗎,閑話少說了。

一、cygwin的安裝

   我們可以到Cygwin的官方網站下載Cygwin的安裝程序,地址是: http://www.cygwin.com/或者直接使用下載連接來下載安裝程序,下載連接是:http://www.cygwin.com/setup.exe

下載完成后,運行setup.exe程序,出現安裝畫面。直接點“下一步”,出現安裝模式的對話框,如下圖所示:

我們看到有三種安裝模式:

  • Install from Internet,這種模式直接從Internet安裝,適合網速較快的情況;
  • Download Without Installing,這種模式只從網上下載Cygwin的組件包,但不安裝;
  • Install from Local Directory,這種模式與上面第二種模式對應,當你的Cygwin組件包已經下載到本地,則可以使用此模式從本地安裝Cygwin。

   這里需要說明一下的是,第一次全部安裝選擇第一種模式,但是后續我們開發過程中發現一些組件包沒有安裝的話,可以再次運行安裝程序,選擇第二種模式,也就是單獨下載組件包而不安裝,這樣可以分次下載需要的組件包。等全部組件包下載完畢后,在運行第三種模式從本地安裝組件包。

   需要特別注意的是,下載和安裝的時候一定要記住使用的鏡像站點,因為軟件把組件包按照不同的鏡像放置在不同的目錄,如果幾次下載的鏡像不一樣,那從本地安裝的時候,是只能找到最新的一次的鏡像下載的組件包的,這里需要注意。

 

從上述三種模式中選擇適合你的安裝模式,這里我們選擇第一種安裝模式,直接從網上安裝,當然在下載的同時,Cygwin組件也保存到了本地,以便以后能夠再次安裝。選中后,點擊“下一步”,

這一步選擇Cygwin的安裝目錄,以及一些參數的設置。默認的安裝位置是C:\cygwin\,你也可以選擇自己的安裝目錄,然后選擇“下一步”,

這一步我們可以選擇安裝過程中從網上下載的Cygwin組件包的保存位置,選擇完以后,點擊“下一步”,

這一步選擇連接的方式,選擇你的連接方式,然后點擊下一步,會出現選擇下載站點的對話框,如下圖所示,

在這一步,需要注意,為了獲得最快的下載速度,我們首先在列表中尋找Cygwin中國鏡像的地址:http://www.cygwin.cn,如果找到就選中這個地址;如果找不到這個地址,就在下面手動輸入中國鏡像的地址:http://www.cygwin.cn/pub/,再點擊“Add”,然后再在列表中選中。選擇完成后,點擊“下一步”,

(這里是之前的文檔,目前最新的列表中,國內的有163的和中國科技大學的鏡像站點,開始我選擇的是163的鏡像站點mirrors.163.com 但是這個鏡像不穩定在我的環境中速度很慢,后來發現有科技大的鏡像wstc.edu.cn這個鏡像估計是由於使用人不多,速度非常快,強烈推薦)

這一步,我們選擇需要下載安裝的組件包,為了使我們安裝的Cygwin能夠編譯程序,我們需要安裝gcc編譯器,默認情況下,gcc並不會被安裝,我們需要選中它來安裝。為了安裝gcc,我們用鼠標點開組件列表中的“Devel”分支,在該分支下,有很多組件,我們必須的是:

binutils 
gcc 
gcc-mingw 
gdb

 

擴充一下:我們需要下載組件包如下:我是按照此順序下載並正確安裝成功的,注意選擇不同包的最新版本,如autoconf我目前看到的最新的2.5,大家可以自行選擇。

Devel分支下:

   autoconf2.5

   automake1.9

   binutils

   gcc

   gcc-core

   gcc-g++

   gcc-mingw-core

   gcc-mingw-g++

   gdb

   subvision

Base分支下:sed,主要是在eclipse下編譯用的

net分支下:openssh和openssl

Editors分支下:vim用在修改配置文件

 

 

鼠標點擊組件前面的循環按鈕,會出現組建的版本日期,我們選擇最新的版本安裝,下圖是選中后的四類組件的截圖:

這里特別需要注意,選中的是那個帶叉的圖標,很奇怪的圖標,但是老外就是這樣。


binutils組件

gcc組件

gcc-mingw組件

gdb組件

選完以后,我們選擇下一步,進入安裝過程,如下圖所示,

安裝的時間依據你選擇的組件以及網絡情況而定。安裝完成后,安裝程序會提示是否在桌面上創建Cygwin圖標等,點擊完成退出安裝程序。

 

二、cygwin的配置

      這步驟是最多出現問題的地方,大家需要做好心里准備。

      1.環境變量的設置

      path環境變量需要設置為cygwin的bin目錄,在上一篇java安裝的過程中也有提及。需要在path后增加e:\hadoop\cygwin\bin;

      2.安裝sshd服務

      啟動cygwin terminal,輸入ssh-host-config進行配置操作。出現have fun就代表配置成功了。

     

      這里一點需要特別重要的是:在should privilege separation be used?一定要注意輸入no ,也就是不為sshd的服務生成單獨的用戶,如果選擇yes會單獨生成用戶,配置就會不成功的。

      出現have fun后需要啟動sshd的服務,如下圖:

          

      我就是在這一步出錯的,總是啟動不成功。

      查了很多的資料,主要是windows賬戶和linux賬戶root的區別,我嘗試了ssh-host-config重新配置,並使用yes模式下生成sshd的賬戶方式,但是后來發現解決不了問題。

      后來采用了如下的方式:

      刪除已經安裝的sshd的服務:sc delete sshd

      然后重新配置sshd,執行ssh-host-config使用yes yes no yes 空格

     

       也就是覆蓋ssh_config文件,覆蓋sshd_config文件 ,不生成單獨賬戶,安裝sshd為單獨的服務,不輸入任何值,在提示配置成功后,按照頁面提示運行cygrunsrv -S sshd來啟動sshd的服務,通過在運行中輸入“services.msc”來查看服務的運行狀況,如果cygwin sshd的運行狀況是已啟動,那說明服務安裝成功。

      3.配置sshd登陸

      在terminal窗口中輸入ssh-keygen成功密鑰文件。生成id_rsa.pub

      cp id_rsa.pub authorized_keys

      然后關閉terminal,然后在啟動輸入ssh localhost

      

       在窗口提示中提示輸入的地方,輸入yes完成sshd的登陸配置。

 

      至此,完成cygwin安裝已經sshd的安裝配置

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM