LoginSignup
0
0

More than 1 year has passed since last update.

wsl2でssh-agentを利用するときに沼ったので供養

Posted at

背景

dockerで立てたコンテナにVSCodeのリモート接続で入ったときにローカルのgitの情報で
そのままgithub等に接続しようとしたがうまくいかなかった
https://code.visualstudio.com/docs/remote/containers#_sharing-git-credentials-with-your-container
ここを参考にしたがちょっとした勘違いをしてうまくいかなかったので備忘録として記載

環境

windows10
wsl2

解決

ここだと

eval "$(ssh-agent -s)"

した後に

if [ -z "$SSH_AUTH_SOCK" ]; then
   # Check for a currently running instance of the agent
   RUNNING_AGENT="`ps -ax | grep 'ssh-agent -s' | grep -v grep | wc -l | tr -d '[:space:]'`"
   if [ "$RUNNING_AGENT" = "0" ]; then
        # Launch a new instance of the agent
        ssh-agent -s &> $HOME/.ssh/ssh-agent
   fi
   eval `cat $HOME/.ssh/ssh-agent`
fi

と~/.bash_profileに書くと書かれているが
一度eval "$(ssh-agent -s)"でssh-agentを起動した後$HOME/.ssh/ssh-agentが作成されておらず、evalの部分
で正しく表示されていなかった
さらにそれに気づかず何度もssh-agentを起動しており重複していた
よって
ps -ax | grep 'ssh-agent -s' | grep -v grep
ででてくるプロセスを全部killした後にシェルの再起動をすると~./bash_profileに記述した
ssh-agentが起動し、$HOME/.ssh/ssh-agentも無事作成される

余談

windows terminalにwsl2を追加してしようしていると
.bash_profileを読み込むと.bashrcが読み込まれず、シェルに色が付かなくなった
そこで.bash_profileの末尾に

if [[ -f ~/.bashrc ]] ; then
  . ~/.bashrc
fi

と記述すると.bash_profileを読み込んだ後に.bashrcを読み込んでくれた

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0