2013-04-07 8 views
1

Я настраиваю hadoop на Ubuntu os. Мне нужно создать пару ключей RSA, чтобы Hadoop взаимодействовать со своими узлами, поэтому я выполнив команду:не удалось создать каталог /home/hadoop/.ssh: разрешено разрешение?

[email protected]:~$ ssh-keygen -t rsa -P "" 

тогда я получаю это:

Generating public/private rsa key pair. 
Enter file in which to save the key (/home/hadoop/.ssh/id_rsa): 
Could not create directory '/home/hadoop/.ssh': permission denied. 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
open /home/hadoop/.ssh/id_rsa failed: No such file or directory. 
Saving the key failed: /home/hadoop/.ssh/id_rsa. 

ответ

6

Забыл создать .ssh реж в вашем доме?

Попробуйте это:

mkdir -p ~/.ssh 

затем повторно запустить SSH-кейген.

Возможно, вы делаете создание ssh-ключей от неправильного пользователя. Вы начали эту оболочку с помощью sudo?

Попробуйте установить HOME dir вручную или введите правильный путь в командной строке.

+0

даже получать такая же ошибка, я думаю, что мой пользователь hadoop не имеет привилегий root. так как я могу это сделать. –

+0

Я смущен тем, что ssh-keygen хочет сохранить ключи в директории, которая не является вашим домом "/home/***hduser***/.ssh/id_rsa". Проверьте свое имя пользователя и идентификаторы: «echo $ USER $ HOME; id» – loentar

+0

теперь посмотрю, у меня есть редактирование –

1

проверить домашнее имя каталога и разрешения

   echo $HOME 
      cd ~ ; ls -l 
      ls -l .ssh 
      ls -lR .ssh 

если выше выход OK и у вас есть правильные разрешения, возможно, ваша квота полна

попробовать с «Суда» и посмотреть, что происходит ...

+0

cd ~; ls -l возвращает общее число 0 –

+0

ls -l .ssh возвращает ls: не удается получить доступ .ssh: нет такого файла или каталога –

0

Похоже, что текущий пользователь не владеет содержимым в домашнем каталоге.

Gain собственность, как показано ниже:

[email protected]:~$ sudo chown admin.admin /home/admin/ 
[email protected]:~$ ls -la 
total 32 
drwxr-xr-x 2 admin admin 4096 Nov 3 23:29 . 
drwxr-xr-x 3 admin admin 4096 Dec 23 2012 .. 
-rw------- 1 admin admin 191 Feb 13 2013 .bash_history 
-rw-r--r-- 1 admin admin 220 Apr 3 2012 .bash_logout 
-rw-r--r-- 1 admin admin 3486 Apr 3 2012 .bashrc 
-rw-r--r-- 1 admin admin 675 Apr 3 2012 .profile 
-rw-r--r-- 1 admin admin 0 Nov 3 23:29 .sudo_as_admin_successful 
-rw------- 1 admin admin 4221 Nov 3 20:31 .viminfo 

генерации ключей будет теперь работать в качестве .ssh каталога теперь будет создан и принадлежит текущему пользователю после генерации асимметричных ключей

0
I have spent arround 1 hr on this and finally got the solution. It is due to permission problem. You have to use chown for your 'hadoop user'. 

1. First make hadoop directory. 
cd /home 
mkdir hadoop 
then check 'ls -l'. it gives result like : 
drwxr-xr-x 2 hadoop hadoop 4096 Aug 22 22:17 hadoop 

2. sudo chown hadoop.hadoop /home/hadoop/ 
3. Then run remaining command for key generater.
Смежные вопросы