На самом деле я уже все перепробовал, как обсуждалось в В разрешении SSH отказано (публичный ключ) и Невозможно подключиться к GCE по ssh: «Permission denied (publickey)», Но никто не решил проблему.
Я могу использовать ssh в учетной записи root, но не в той учетной записи, которую я использовал для входа в систему.
Я пробовал следующие вещи, чтобы исправить это из учетной записи ROOT.
sudo chown -R $USER ~/.config/gcloud
Создайте ключ ssh, используя следующие команды
ssh-keygen
~/.ssh/authorized_keys
файлsudo nano ~/.ssh/authorized_keys
Я установил экземпляр виртуальной машины Google Cloud с Ubuntu 16.04 LTS. Обычно я использую ssh для моей машины с помощью следующей команды:
gcloud compute --project "XXX-XXX" ssh --zone "us-east1-b" "XXXXXXXX"
Но теперь при попытке выдает следующую ошибку:
В доступе отказано, попробуйте еще раз.
У меня три аккаунта на виртуальной машине. Один корень, абдулла, mrafique.bese_17seecs. Вся моя виртуальная среда существует в «Абдуллахе», к которой я не могу получить доступ прямо сейчас.
Пожалуйста помоги.
Я не знаю как, но следуя этот ответ, после того как я вошел в систему как root, я выдал:
су - абдулла
Я вошел в систему со своей учетной записью и могу запускать все, что и раньше.
Если вы вводили команды в том виде, как вы их разместили в качестве учетной записи root, вы вообще ничего не делали со своим зарегистрированным пользователем. Вы изменяли только файлы в домашнем каталоге пользователя root. Вместо того ~
(который расширяется до дома вошедшего в систему пользователя), вы должны использовать ~abdullah
или /home/abdullah
(если это домашний каталог) в этих командах.
chown -R $USER ~abdullah/.config/gcloud
Создайте ключ ssh с помощью
ssh-keygen
Скопируйте содержимое файла key.pub
nano ~abdullah/.ssh/authorized_keys
И вам не нужно sudo, когда вы уже являетесь пользователем root.