2014-04-17 111 views
0

我想在我的Ubuntu系統上配置Hadoop MapReduce環境。我創建了一個名爲hduser的新用戶,並將其置於一個新組hadoop之下。我創建了一個ssh證書並將其添加到授權密鑰。但是每當我嘗試連接到本地主機時,我都會遇到麻煩,因爲它一直要求輸入密碼而不是使用密鑰驗證。如何永久更改sshd_config文件?

我通過將用戶hduser添加到/etc/ssh/sshd_configAllowUsers列表中來解決此問題。我能夠連接到本地主機並運行HDFS系統。

現在的問題是,我在sshd_config文件中爲hduser所做的條目每次關閉Hadoop服務器時都會被刪除。因此,每次在啓動Hadoop進程之前,我必須在sshd_config文件和reload ssh中再次輸入條目。有沒有辦法讓這些變化永久化,以便我不必每次都這樣做?

我也試過註釋掉AllowUsers字段,但每次都會自動取消註釋。

感謝, TM

Edit:我跟系統管理員,它似乎是大多數系統配置管理應用程序更新配置現在,然後每一個文件。將我的Hadoop用戶添加到他們的列表中,現在工作正常。

回答

0

如何創建shh-keygen以及如何複製本地主機中的ssh-copy。 雲你做下面的命令,並嘗試它將運行的hadoop。

SSH-凱基-t RSA

的ssh-copy-id命令-i的〜/ .ssh/id_rsa.pub $ USER @主機名

exmp(主機名=您的主機名像本地主機)。然後它會工作。

+0

感謝您的評論......但它沒有任何區別...的條目中的AllowUsers sshd_config文件被刪除仍然... – visakh

1

是否執行這些步驟:

$ ssh-keygen -t rsa -P '' 

... 

Your identification has been saved in /home/hduser/.ssh/id_rsa. 

Your public key has been saved in /home/hduser/.ssh/id_rsa.pub. 

... 

    $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 

    $ ssh localhost 

這些線是從這個tutorial

+0

感謝您的答案...請參閱我的編輯問題... – visakh