मैं उस निर्देशिका को कैसे बदल सकता हूं जो ssh-keygen को आउटपुट करती है?


54

मैं एक कमांड चलाना चाहता हूँ जैसे:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

मेरी समझ यह है कि ssh-keygen होम डायरेक्टरी को आउटपुट करता है। मैं एक डिजिटल कंप्यूटर पर Git Bash (Windows, MYSS MINGW64) का उपयोग करके काम कर रहा हूं, जहां होम डाइरेक्टरी वह है जिसे मैं एक्सेस नहीं करता हूं। मैं होम डायरेक्टरी को ऐसे बदलता हूं:

export HOME=C:/Users/myusername

इसलिए अब जब मैं प्रवेश करता हूं:

echo $HOME

इसे कहते हैं:

C:/Users/myusername

लेकिन जब मैं फिर से ssh-keygen कमांड को चलाने की कोशिश करता हूं तो यह उस डायरेक्टरी में चलता है जिसकी मुझे एक्सेस नहीं है। मैंने कुछ कठिन कोडित पथ के लिए प्रोफ़ाइल फ़ाइल के माध्यम से देखा है, लेकिन कुछ भी नहीं पा सकता। जिस निर्देशिका तक मेरी पहुंच है, उसे इंगित करने के लिए मैं इसे कैसे बदलूं?


यह वही व्यवहार उबंटू पर होता है (बदलते HOMEडिफ़ॉल्ट निर्देशिका को प्रभावित नहीं करता है ssh-keygen)। हालांकि निर्देशिका को स्पष्ट रूप से निर्दिष्ट करने का काम करता है, मैं यह जानना चाहूंगा कि वर्तमान में परिभाषित के रूप में इसका ssh-keygenउपयोग क्यों नहीं $HOME/.sshकिया HOMEजाता है।
नाथन

जवाबों:


86

आपको -fविकल्प के साथ आउटपुट फ़ाइल के नाम को निर्दिष्ट करके ऐसा करने में सक्षम होना चाहिए , जैसे,

ssh-keygen -t rsa -b 4096 -C "your_email@example.com" -f $HOME/.ssh/id_rsa

बेशक, यह वास्तव में मदद करता है अगर आउटपुट डायरेक्टरी पहले ही बनाई गई हो।

आगे पढ़ने के लिए:


बहुत आभारी। मैंने -f विकल्प की अनदेखी की। मैंने अभी अपने घर में mddir .ssh के साथ एक नया फ़ोल्डर बनाया है और आपके द्वारा कहा गया कमांड चलाया है। आपका बहुत बहुत धन्यवाद।
फॉक्स मिडास
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.