GitHub 오류 메시지-권한 거부 (공개 키) 있으며 루트에 있으며

아무도이 오류를보고 어떻게 해야할지 알고 있습니까?

터미널을 사용하고 있으며 루트에 있으며 GitHub 리포지토리가 있으며 지금 무엇을 해야할지 모르겠습니다.

> git push -u origin master
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.



답변

GitHub는 귀하를 인증 할 수 없습니다. 따라서 컴퓨터에서 SSH 키를 설정 하지 않았 거나 키가 GitHub 계정과 연결되어 있지 않기 때문에 SSH 키로 설정되어 있지 않습니다.

SSH / git URL 대신 HTTPS URL을 사용하여 SSH 키를 처리하지 않아도됩니다. 이것이 GitHub의 권장 방법 입니다.

또한 GitHub에는 해당 오류 메시지에 대한 도움말 페이지 가 있으며 확인할 수있는 모든 정보를 자세히 설명합니다.


답변

~ / .ssh 디렉토리에 구성 파일 을 작성 했습니까 ? 다음과 같은 내용이 있어야합니다.

Host github.com
 IdentityFile ~/.ssh/github_rsa

github_rsa 라는 ssh 키를 작성했다고 가정 하십시오.

그것을 GitHub에 업로드했습니다 …

참고 : ~ / .ssh / 디렉토리에 둘 이상의 키 (2 이상)가있는 경우이 명시 적 구성 방식을 따라야합니다. 이 방법으로 키를 지정하지 않으면 첫 번째 키 순서대로 github 인증에 사용되므로 키 파일 이름에 따라 다릅니다.


답변

나는이 문제를 안다. ssh 키를 추가 한 후 ssh 키를 ssh 에이전트에 추가하십시오 (oficial docs https://help.github.com/articles/generating-ssh-keys/ ).

ssh-agent -s
ssh-add ~/.ssh/id_rsa

그 후, 모든 것이 잘 작동하며, 자식은 올바른 키를 볼 수 있습니다.


답변

SSH 키 (없는 경우)를 생성하고 공개 키를 Github 계정과 연결해야합니다. Github 자체 문서를 참조하십시오 .


답변

이것은 나에게 일어났다. 어떤 이유로 내 기원은 그것을 깨닫지 않고 엉망이되었습니다.

설정이 여전히 올바른지 확인하십시오

git remote -v

URL은 ssh : //git@github.com/YourDirectory/YourProject.git과 같아야합니다. git@github.com이 보이지 않으면

git remote set-url origin git://github.com/YourDirectory/YourProject.git

올바르게 설정하십시오. 또는 github 앱을 사용하여 특정 리포지토리의 설정 패널에서 기본 원격 리포지토리 URL을 확인하고 설정할 수 있습니다.


답변

SSH를 통해 GitHub를 연결한다고 가정하면 아래 명령을 실행하여이를 확인할 수 있습니다.

$git config --get remote.origin.url

결과가 git@github.com : xxx / xxx.github.com.git 형식 인 경우 다음을 수행해야합니다.

SSH 키를 생성하거나 기존 키를 사용하십시오. 계정이 있다면 ssh-agent (2 단계)와 GitHub 계정 (3 단계)에 키를 추가하면됩니다.

다음은 SSH 키가없는 사용자를위한 것입니다.

1 단계 공개 / 개인 rsa 키 페어 생성

$ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

SSH 키를 저장할 위치와 사용할 암호를 확인하라는 메시지가 표시됩니다.

2 단계 ssh-agent에 키 추가

  • ssh-agent가 사용 가능한지 확인하십시오.

    $eval "$(ssh-agent -s)"

  • SSH 키를 ssh-agent에 추가하십시오.

    $ssh-add ~/.ssh/id_rsa

3 단계 SSH 키를 계정에 추가

$sudo apt-get install xclip

$xclip -sel clip < ~/.ssh/id_rsa.pub

그런 다음 복사 된 키를 GitHub에 추가하십시오.

이동 설정 -> SSH 키 (개인 설정 사이드 바) -> SSH 키를 추가 -> 양식을 작성 (키가 클립 보드에, 그냥 사용 CTRL + V) -> 추가 키

위 단계를 수행 한 후 권한 문제를 해결해야합니다.

참조 링크 :
SSH 키 생성 .


답변

먼저 컴퓨터의 기존 ssh 키를 확인해야합니다. 터미널을 열고 다음을 실행하십시오.

ls -al ~/.ssh

#or

cd ~/.ssh
ls

그러면 .ssh 디렉토리의 파일이 나열됩니다.

그리고 마지막으로 당신이 보는 것에 따라 (내 경우에는) :

 github_rsa  github_rsa.pub known_hosts

RSA를 설정하면 “git push origin”문제를 해결할 수 있습니다.

$ ssh-keygen -lf ~/.ssh/github_rsa.pub

참고 : RSA 인증서는 키 쌍이므로 개인 및 공용 인증서를 갖게되며이 인증서는 github (이 경우)에 속하기 때문에 개인용으로 액세스 할 수 없지만이 오류가 발생하면 공개가 누락 될 수 있습니다 (적어도 그것은 내 경우였습니다. 내 github 계정 또는 저장소는 어떻게 든 엉망이되어 이전에 생성 된 공개 키를 “링크”해야했습니다.