यदि आप मेरे जैसे हैं और कई विकास मशीनों (वर्चुअल मशीनों के साथ-साथ) विभिन्न कारणों से आप ssh कुंजियाँ, एक स्मार्ट bash_profile, और अपनी पसंद के एक RCS जोड़ सकते हैं।
मैं nfs / samaba / sshfs का उपयोग करके दूसरा होगा। एक ड्रा बैक यह है कि यदि आपके पास हर समय नेटवर्क एक्सेस नहीं है, तो आप उस चीज को एक्सेस नहीं कर सकते हैं, जिसकी आपको आवश्यकता है (उड़ान, कोई वाईफाई, फायरवॉल, रूटिंग इश्यू आदि)। मैं जिन मशीनों को सिंक में रख रहा हूं, वे सभी एक ही समय में उपलब्ध नहीं हैं, लेकिन मैं उनके बीच जानकारी साझा करना चाहता हूं।
निम्नलिखित है कि मैंने इसके बारे में इंटरनेट से कई विचारों को उधार लिया।
.bash_profile कुछ इस तरह हो सकता है
$HOME/bin/shell_ssh_agent
मुझे यह कुछ स्थानों से मिला है, लेकिन अब इसका लिंक नहीं मिल सकता है। Shell_ssh_agent फ़ाइल:
#!/bin/bash
SSH_ENV=$HOME/.ssh/environment
#echo "starting"
function start_agent {
#echo "reaping agents"
killall ssh-agent
#echo "Initialising new SSH agent..."
/usr/bin/ssh-agent | sed 's/^echo/#echo/' > ${SSH_ENV}
#echo succeeded
chmod 600 ${SSH_ENV}
. ${SSH_ENV}
/usr/bin/ssh-add;
}
# Source SSH settings, if applicable
if [ -f "${SSH_ENV}" ]; then
. ${SSH_ENV}
#echo "sourced ssh env"
ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent > /dev/null || { start_agent; }
else
start_agent;
fi
अब पहले लॉगिन पर आप अपनी कीज़ सेट करें। लॉग आउट करें और इसमें जीवन आसान हो गया।
अपनी सभी लिपियों को एक आरसीएस में रखें, इससे विकास मशीनों को सिंक में रखना आसान हो जाता है। मैं गिट का उपयोग करता हूं। Git के साथ प्रमाणीकरण ssh के माध्यम से है इसलिए ssh कीज़ यहाँ भी मदद करती हैं। इस बिंदु पर ध्यान दें कि आप nfs जैसी किसी चीज़ का उपयोग कर सकते हैं। मैं अभी भी एक आरसीएस का एक प्रशंसक हो सकता हूं, जिसका कारण मैं नीचे बता रहा हूं।
उपयोग मामला है
- लॉगिन पहली बार, चाबियाँ सेटअप मिलता है
- यदि आरसीएस आपकी व्यक्तिगत स्क्रिप्ट की जाँच नहीं करता है (और ज़रूरत पड़ने पर अपडेट / मर्ज करता है, तो यह आपके .bash_profile का भी हिस्सा हो सकता है यदि आप इसे चाहते थे)
- संपादित करें, विशेष स्क्रिप्ट, आदि और उन्हें प्रतिबद्ध
- जब अन्य मशीनों में लॉग इन किया जाता है तो एक अद्यतन / मर्ज / चेकआउट करें। यह सब कुछ सिंक में रखता है; यानी कोई और अधिक नकल करने वाली फाइलें जो कभी-कभी आपके पेट भर जाती हैं और आप नहीं चाहते थे।
- एक साइड बेनिफिट के रूप में आपको RCS की शक्ति मिलती है। मैं कभी-कभी लिपियों या विन्यासों के प्रतिकूल परिवर्तन करता हूं और वापस और इसी तरह रोल करने की आवश्यकता होती है।
जो कुछ मैं आगे की कोशिश करना चाहता हूं वह प्रारंभिक लॉगिन / सेटअप को एक मेकफाइल में लपेटना है जिसे मैं नई मशीन पर कॉपी करता हूं। फिर मेकफाइल आपकी चाबियों, आरसीएस, आदि को स्थापित करने का काम कर सकता है। जाहिर है कि यहां कुछ ओवरहेड है, लेकिन यदि आप अंत में बहुत सारी मशीनों की स्थापना करते हैं:
- एक समय बचानेवाला
- सिंक में विकास मशीनों के कॉन्फ़िगरेशन और व्यक्तिगत स्क्रिप्ट को रखना आसान है
- स्क्रिप्ट और कॉन्फ़िगरेशन में परिवर्तन का प्रबंधन।
set background=dark
याset background=light
, कुछ ऐसा है जो कोई लिनक्स वितरण नहीं छूता है और उपयोगकर्ता के लिए पूरी तरह से विनीत है। </ कटाक्ष>