SCP का मतलब सिक्योर कॉपी प्रोटोकॉल है और यह "सिक्योर शेल" प्रोटोकॉल पर आधारित है। यह कंप्यूटरों के बीच फ़ाइलों को स्थानांतरित करने के लिए एक विधि प्रदान करता है। इस ट्रांसफर में या तो दोनों कंप्यूटर रिमोट होस्ट हो सकते हैं या एक कंप्यूटर लोकलहोस्ट और दूसरा रिमोट होस्ट हो सकता है। हाल ही में, बहुत से उपयोगकर्ताओं को "ऐसी कोई फ़ाइल या निर्देशिका नहीं . मिल रही है " एससीपी के साथ फाइल कॉपी करने का प्रयास करते समय त्रुटि।
इस लेख में, हम कुछ कारणों पर चर्चा करेंगे जिनके कारण यह समस्या उत्पन्न होती है और इसे पूरी तरह से ठीक करने के लिए व्यवहार्य समाधान भी प्रदान करते हैं। साथ ही, हम कुछ ऐसे कारणों पर भी गौर करेंगे जिनकी वजह से यह ट्रिगर होता है। संघर्ष से बचने के लिए गाइड का सावधानीपूर्वक और सटीक रूप से पालन करना सुनिश्चित करें।
SCP में "ऐसी कोई फ़ाइल या निर्देशिका नहीं" त्रुटि का क्या कारण है?
कई उपयोगकर्ताओं से कई रिपोर्ट प्राप्त करने के बाद, हमने इस मुद्दे की जांच करने का फैसला किया और इसे पूरी तरह से ठीक करने के लिए समाधानों का एक सेट तैयार किया। साथ ही, हमने इसके ट्रिगर होने के कारणों पर गौर किया और उन्हें इस प्रकार सूचीबद्ध किया।
- गलत कमांड: कुछ मामलों में, उपयोगकर्ता द्वारा फ़ाइल की प्रतिलिपि बनाने के लिए उपयोग किया जा रहा आदेश सही नहीं हो सकता है। जिस मौजूदा स्थिति में आप कॉपी कर रहे हैं, उसमें फिट होने के लिए आपको कॉपी कमांड को संशोधित करना होगा। फ़ाइलों और पूरी निर्देशिका की प्रतिलिपि बनाने के आदेश अलग-अलग हैं। साथ ही, अलग-अलग कॉन्फ़िगरेशन वाले दो कंप्यूटरों के बीच कॉपी करने की कमांड आवश्यकता के अनुसार बदली जाती है।
- पोर्ट नंबर: यह भी संभव है कि कंप्यूटर के बीच फ़ाइलों की प्रतिलिपि बनाने के लिए पोर्ट नंबर निर्दिष्ट नहीं किया गया हो। दो मेजबानों के बीच फ़ाइलों की प्रतिलिपि बनाने का प्रयास करने से पहले सही पोर्ट को अग्रेषित किया जाना चाहिए।
- गलत लॉगिन: यदि आप वर्तमान में सर्वर में लॉग इन हैं और फ़ाइलों को डेस्कटॉप पर कॉपी करने का प्रयास कर रहे हैं, तो आपको यह त्रुटि अनुभव हो सकती है क्योंकि सर्वर सर्वर के भीतर स्थानीय पथ खोजने का प्रयास करता है। सर्वर पथ से लॉग आउट करके इसे रोका जा सकता है।
- फ़ाइल अनुमतियां: कुछ मामलों में, कॉपी की जाने वाली फ़ाइलों की अनुमति "केवल-पढ़ने के लिए" तक सीमित हो सकती है। यह सर्वर को फ़ाइलों तक पहुँचने और उन्हें कॉपी करने में सक्षम होने से रोक सकता है। यह महत्वपूर्ण है कि फाइलों के लिए पढ़ने और लिखने की अनुमति प्रदान की जाती है।
अब जब आपको समस्या की प्रकृति की बुनियादी समझ हो गई है, तो हम समाधान की ओर बढ़ेंगे। विरोध से बचने के लिए इन्हें उस विशिष्ट क्रम में लागू करना सुनिश्चित करें जिसमें उन्हें प्रस्तुत किया गया है।
समाधान 1:सही कमांड का उपयोग करना
आपको उन होस्टों के कॉन्फ़िगरेशन के आधार पर सही कमांड का उपयोग करना चाहिए जिनके बीच आप फ़ाइलों को स्थानांतरित करना चाहते हैं। इसके लिए, हम कुछ कमांड सूचीबद्ध करेंगे जिनका उपयोग विभिन्न होस्ट कॉन्फ़िगरेशन के बीच फ़ाइलों को स्थानांतरित करने के लिए किया जा सकता है।
स्थानीय होस्ट से दूरस्थ होस्ट में कॉपी करने के लिए
लोकलहोस्ट वास्तविक कंप्यूटर है जिस पर आपकी भौतिक पहुँच है। रिमोट होस्ट वह है जिसके लिए उपयोगकर्ता की कोई भौतिक पहुंच नहीं है और यह दूर के सर्वर में स्थित है। लोकलहोस्ट से रिमोट होस्ट में फाइल ट्रांसफर करने के लिए, आपको निम्न कमांड कॉन्फ़िगरेशन का उपयोग करना होगा।
$ scp "the_file" your_username@the_remote_host:the/path/to/the/directory
“Alexa.txt . नाम की टेक्स्ट फ़ाइल को कॉपी करने का एक उदाहरण " इस प्रकार होगा।
$ scp Alexa.txt [email protected]:/some/remote/directory
इसी तरह, आप एक संपूर्ण . को कॉपी कर सकते हैं निर्देशिका निम्नलिखित तरीके से
$ scp -r "the_directory_to_copy" your_username@the_remote_host:the/path/to/the/directory/to/copy/to
“एलेक्सा . नाम की निर्देशिका को कॉपी करने का एक उदाहरण " इस प्रकार होगा।
$ scp -r foo [email protected]:/some/remote/directory/bar
रिमोट होस्ट से स्थानीय होस्ट में कॉपी करने के लिए
यदि आप किसी फ़ाइल को दूरस्थ होस्ट से स्थानीय होस्ट में कॉपी करना चाहते हैं, तो कमांड कॉन्फ़िगरेशन मूल कॉन्फ़िगरेशन से भिन्न होता है। रिमोट होस्ट और लोकलहोस्ट के बीच फाइल कॉपी करने के लिए उपयुक्त कमांड नीचे दिए गए हैं।
प्रतिलिपि बनाने के लिए एक फ़ाइल, निम्न आदेश का उपयोग करें
$ scp your_username@the_remote_host:the_file /your/local/directory
“एलेक्सा . नाम की फ़ाइल कॉपी करने के लिए .txt ", निम्न आदेशों का उपयोग करें
$ scp your_username@the_remote_host:Alexa.txt /your/local/directory
समाधान 2:पोर्ट नंबर की पहचान करना
फ़ाइल को कंप्यूटर पर कॉपी करने से पहले दूरस्थ होस्ट के पोर्ट नंबर की पहचान की जानी चाहिए। उसके लिए, हम कॉपी करने की प्रक्रिया शुरू करते हुए पोर्ट नंबर जोड़ेंगे।
पोर्ट . को इंगित करते हुए आप कंप्यूटर के बीच कॉपी करने के लिए निम्न कमांड का उपयोग कर सकते हैं नंबर।
$ scp -P port_number your_username@the_remote_host:the_file /your/local/directory
इसी कमांड का उपयोग रिमोट होस्ट को या उससे कॉपी करते समय पोर्ट नंबर को इंगित करने के लिए किया जा सकता है। आपको बस “-P (पोर्ट नंबर) . जोड़ना होगा "$ scp . के बाद कमांड का हिस्सा।
समाधान 3:अनुमतियां बदलना
फ़ाइल को कंप्यूटर के बीच कॉपी करते समय उपयुक्त अनुमतियाँ प्रदान की जानी चाहिए। इसलिए, इस चरण में, हम फ़ाइल की अनुमतियों को बदलने की प्रक्रिया का संकेत देंगे। उसके लिए:
- दाएं –क्लिक करें उस फ़ाइल पर जिसे आप कॉपी करने का प्रयास कर रहे हैं।
- “गुणों . पर क्लिक करें ” और “सुरक्षा . चुनें "टैब।
- सुनिश्चित करें कि सभी अनुमतियां "सिस्टम . को प्रदान की गई हैं ” और “व्यवस्थापक ".
नोट: साथ ही, सुनिश्चित करें कि फ़ाइलों की प्रतिलिपि बनाते समय आप सर्वर पथ में लॉग इन नहीं करते हैं।