はじめに
タイトルまんまな記事です。
初歩的な内容ですが、bitbucketでgit cloneしたときに
Permission denied (publickey).
やBad owner or permissions
と言われる場合の対処法です。
他記事のスニペット記事に目的がメイン。
Permission denied (publickey).
のとき
現象
$ git clone git@bitbucket.org:team-hoge/hoge-app.git Initialized empty Git repository in /home/hoge/hoge-app/.git/ Bad owner or permissions on /home/hoge/.ssh/config fatal: The remote end hung up unexpectedly
原因
自分はよくありがちなのですが、ssh-keygen
するときに
秘密鍵のパスを変えた場合などに起こりがちです。
sshの設定をした際に(もしくはデフォルトで)
sshする際の秘密鍵ファイル名はid_rsa
を使うようになっている場合があります。
なので、秘密鍵の名前をid_rsa
以外にした場合は、
bitbucketからcloneするに使う秘密鍵を~/.ssh/config
に登録して指定してあげます。
対処
作成した秘密鍵が~/.ssh/id_rsa_bitbucket_hoge_app
だったとします
# bitbucketからcloneする際の秘密鍵を指定する $ vi ~/.ssh/config ---- vi追記 ---- Host bitbucket.org User git HostName bitbucket.org IdentityFile ~/.ssh/id_rsa_bitbucket_hoge_app ----------------
これで大丈夫なはず。
Bad owner or permissions
のとき
現象
$ git clone git@bitbucket.org:team-hoge/hoge-app.git Initialized empty Git repository in /home/hoge/hoge-app/.git/ Bad owner or permissions on /home/hoge/.ssh/config fatal: The remote end hung up unexpectedly
原因
これも初歩的ですが~/.ssh/config
の権限がおかしいためです。
# 確認してみる $ ls -l ~/.ssh/config -rw-rw-r-- 1 hoge hoge 123 Oct 7 07:05 config
対処
権限を変えてあげます。
$ git clone git@bitbucket.org:team-hoge/hoge-app.git Initialized empty Git repository in /home/hoge/hoge-app/.git/ Bad owner or permissions on /home/hoge/.ssh/config fatal: The remote end hung up unexpectedly $ chmod 600 ~/.ssh/config
おわり
初歩的だけど結構ありがち!enjoy!