ฉันมีเว็บไซต์เป็น repo Git ระยะไกลดึงจาก Bitbucket.com โดยใช้นามแฝง SSH ฉันสามารถเริ่ม ssh-agent ด้วยตนเองบนเซิร์ฟเวอร์ของฉัน แต่ฉันต้องทำสิ่งนี้ทุกครั้งที่ฉันเข้าสู่ระบบผ่าน SSH
ฉันเริ่มต้น ssh-agent ด้วยตนเอง:
eval ssh-agent $SHELL
จากนั้นฉันเพิ่มตัวแทน:
ssh-add ~/.ssh/bitbucket_id
จากนั้นจะปรากฏขึ้นเมื่อฉัน:
ssh-add -l
และฉันก็สบายดี มีวิธีใดที่จะทำให้กระบวนการนี้เป็นแบบอัตโนมัติดังนั้นฉันจึงไม่ต้องทำทุกครั้งที่ลงชื่อเข้าใช้? เซิร์ฟเวอร์กำลังเรียกใช้ RedHat 6.2 (Santiago)
ssh-agent <command>ทำงาน<command>เป็น subprocess ของ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บรรทัดหลังที่เริ่มเอเจนต์