У меня есть сайт в качестве удаленного репозитория Git, извлекаемого из Bitbucket.com с использованием псевдонима SSH. Я могу вручную запустить ssh-agent на моем сервере, но я должен делать это каждый раз, когда я вхожу через SSH.
Я вручную запускаю ssh-agent:
eval ssh-agent $SHELL
Затем я добавляю агента:
ssh-add ~/.ssh/bitbucket_id
Тогда это появляется, когда я делаю:
ssh-add -l
И мне хорошо идти. Есть ли способ автоматизировать этот процесс, чтобы мне не приходилось делать это каждый раз, когда я вхожу в систему? Сервер работает RedHat 6.2 (Сантьяго).
ssh-agent <command>
выполняется <command>
как подпроцесс ssh-agent
, поэтому вы запускаете новую оболочку. Я думаю, что вы хотите eval ssh-agent
.
.bash_profile
специфичен для bash, .profile
универсален для всех оболочек POSIX. bash
будет искать сначала .bash_profile
, затем по умолчанию .profile
.
ssh-agent
для «стандартного» (POSIX-совместимой) оболочки eval $(ssh-agent -s)
. Отметим также , что вы должны убедиться , что вы правильно избавиться от агента при входе в систему, так что это также желательно , чтобы положить trap 'kill $SSH_AGENT_PID' EXIT
в вашем .profile
после строки , которая запускает агент.