मेरे पास SSH उपनाम का उपयोग करके Bitbucket.com से दूरस्थ Git रेपो खींचने के रूप में एक साइट है। मैं अपने सर्वर पर 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
बैश करने के लिए विशिष्ट है, .profile
सभी POSIX गोले के लिए सामान्य है। bash
के लिए पहले दिखेगा .bash_profile
, फिर डिफ़ॉल्ट के लिए .profile
।
ssh-agent
"मानक" (POSIX- संगत) शेल के लिए स्पॉन का सही तरीका है eval $(ssh-agent -s)
। ध्यान दें कि आपको यह सुनिश्चित करना होगा कि जब आप लॉग आउट करते हैं तो आपको एजेंट से ठीक से छुटकारा मिल जाए, इसलिए यह भी सलाह दी जाती है कि एजेंट शुरू करने वाली लाइन के बाद trap 'kill $SSH_AGENT_PID' EXIT
आपके अंदर डाल दिया जाए .profile
।