У мене є сайт як віддалений репост Git, який тягне з Bitbucket.com за допомогою псевдоніма SSH. Я можу вручну запустити ssh-агент на своєму сервері, але мені це потрібно робити кожного разу, коли я входжу через SSH.
Я вручну запускаю ssh-агент:
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після рядка, з якого запускається агент.