मैंने इंटरनेट पर यहां और विभिन्न "scp उपयोग" ट्यूटोरियल के अन्य प्रश्नों पर एक नज़र डाली, लेकिन मैं गलत क्या कर सकता हूं।
मैं लिनक्स मिंट का उपयोग कर रहा हूं और मैं यह पता लगाने की कोशिश कर रहा हूं कि scp कैसे काम करता है।
मैंने डायरेक्टरी / होम / नाम / डीआईआर / में एक फ़ाइल file.ext (अपने कंप्यूटर पर) की है
मैं ssh का उपयोग कर एक दूरस्थ मशीन से जुड़ता हूं , जैसे:
ssh -p 2222 username@domain
यह मुझसे पासवर्ड और शेल प्रदर्शित करने के लिए कहता है:
username@domain ~ $
अब, यदि मैं कमांड जारी करता हूं (इससे पहले कि मैं एसएसएच चलाता हूं तो मैं स्थानीय निर्देशिका / घर / नाम / डीआईआर में था ):
scp -r -P 2222 file.ext username@domain
आउटपुट है:
cp: cannot stat ‘file.ext’: No such file or directory
एक ही परिणाम अगर file.ext के बजाय मैं पूरा रास्ता लिखता हूं
scp -r -P 2222 /home/name/dir/file.ext username@domain
इसके अलावा, सर्वर व्यवस्थापक ने मुझे बताया कि मैं फ़ाइल को अपने दूरस्थ होम निर्देशिका (रूट के बजाय) पर अपलोड करूंगा, जैसे:
scp -r -P 2222 file.ext username@domain:~/
लेकिन जब मैं इसे करता हूं और "एंटर" दबाता हूं तो कुछ भी नहीं होता है, जैसे कि शेल आगे इनपुट के लिए इंतजार कर रहा था।
मेरी समस्याओं का सारांश:
- cp: ऐसी कोई फ़ाइल या निर्देशिका नहीं
- खोल ~ पर "अटक"
कोई सुझाव?
scp
, रिमोट साइड में हमेशा कोलन (जैसे remotehost:/tmp
) होता है, अन्यथा यह सिर्फ एक साधारण कॉपी scp /tmp/foo.txt example.com
करेगा ( /tmp/foo.txt
स्थानीय फ़ाइल में कॉपी करेगा example.com
)
-r
, ध्वज के रूप में यह (यह करने के लिए प्रयोग किया जाता है एकल फ़ाइलों की प्रतिलिपि बनाने के लिए की जरूरत नहीं है रिकर्सिवली निर्देशिका कॉपी)
localuser@machineA: ssh -p 2222 username@domain
(यह इंगित करने के लिए कि आप मशीन पर स्थानीय कमांडर के रूप में ssh कमांड चला रहे हैं)