−25%

Windows के सालाना भुगतान पर, 31 अक्टूबर तक। प्लान देखें

EQVPS

VPS पर फ़ाइलें कैसे भेजें: scp, rsync और SFTP

scp से अपने सर्वर पर फ़ाइलें भेजें और लाएँ, बड़े फ़ोल्डर rsync से दोबारा शुरू करने की सुविधा के साथ सिंक करें, या SFTP क्लाइंट इस्तेमाल करें, निजी SSH पोर्ट वाले NAT पर भी।

देर-सवेर फ़ाइलें सर्वर पर पहुँचानी ही पड़ती हैं: साइट का बिल्ड, डेटाबेस डंप, लोकली लिखा गया कॉन्फ़िगरेशन। इसके लिए आपको FTP सर्वर की ज़रूरत नहीं: SSH पहले से तीन अच्छे टूल देता है। सभी उदाहरण दस्तावेज़ी पते इस्तेमाल करते हैं; उन्हें अपने सर्वर के पतों से बदलें।

अपने कनेक्शन की जानकारी जानें

scp: एक फ़ाइल या फ़ोल्डर कॉपी करें

एक फ़ाइल अपलोड करें:

scp backup.sql root@203.0.113.10:/root/

एक फ़ाइल डाउनलोड करें:

scp root@203.0.113.10:/var/log/nginx/access.log .

पूरा फ़ोल्डर:

scp -r ./site root@203.0.113.10:/var/www/

NAT प्लान पर पोर्ट को बड़े -P के साथ जोड़ें:

scp -P 20123 backup.sql root@your-nat-host:/root/

rsync: फ़ोल्डरों के लिए सही टूल

rsync सिर्फ़ अंतर भेजता है, प्रगति दिखाता है और कनेक्शन टूटने पर जारी रखता है। इसे दोनों तरफ़ इंस्टॉल होना चाहिए (apt install -y rsync)।

rsync -avzP ./site/ root@203.0.113.10:/var/www/site/

कस्टम SSH पोर्ट के साथ:

rsync -avzP -e "ssh -p 20123" ./site/ root@your-nat-host:/var/www/site/

गंतव्य को हूबहू मिरर बनाने के लिए (लोकल से हटाई गई फ़ाइलें भी मिटाते हुए) --delete जोड़ें, लेकिन पहले देख लें कि यह क्या करेगा:

rsync -avzP --delete --dry-run ./site/ root@203.0.113.10:/var/www/site/

आख़िरी स्लैश का ध्यान रखें। ./site/, site की सामग्री कॉपी करता है; ./site फ़ोल्डर को ही गंतव्य के अंदर कॉपी करता है। --delete के साथ यही अंतर तय करता है कि कौन-सी डायरेक्टरी ख़ाली होगी।

SFTP: इंटरैक्टिव या ग्राफ़िकल

कमांड-लाइन क्लाइंट एक छोटे फ़ाइल मैनेजर की तरह काम करता है:

sftp -P 20123 root@your-nat-host
sftp> put backup.sql
sftp> get /etc/nginx/nginx.conf
sftp> exit

ग्राफ़िकल इंटरफ़ेस पसंद है? FileZilla, WinSCP या Cyberduck उसी जानकारी से जुड़ते हैं: SFTP प्रोटोकॉल, आपका होस्ट, पोर्ट 22 (या आपका NAT पोर्ट), उपयोगकर्ता root और आपकी SSH कुंजी या पासवर्ड।

SSH कुंजियों के साथ तेज़

ये सभी टूल SSH इस्तेमाल करते हैं, इसलिए SSH कुंजी पासवर्ड पूछे जाने को ख़त्म कर देती है और आपको cron से ट्रांसफ़र स्वचालित करने देती है। अगर अभी तक नहीं किया: SSH कुंजी से प्रमाणीकरण। नए EQVPS सर्वर तब तक पैनल का root पासवर्ड स्वीकार करते हैं जब तक आप कुंजियों पर न चले जाएँ, जो हम पहले ही दिन करने की सलाह देते हैं।

बड़े ट्रांसफ़र

दसियों गीगाबाइट के लिए rsync ही एकमात्र समझदार विकल्प है: कनेक्शन टूटे तो वही कमांड फिर चलाएँ, और यह वहीं से जारी रखेगा जहाँ रुका था। इसे भेजने वाली मशीन पर tmux या screen के अंदर चलाएँ, ताकि लैपटॉप बंद करने से यह रुक न जाए।

संबंधित

सामान्य प्रश्न

scp और rsync में क्या अंतर है?

scp हर बार सब कुछ कॉपी करता है। rsync दोनों तरफ़ की तुलना करता है और सिर्फ़ बदला हुआ हिस्सा भेजता है, रुके हुए ट्रांसफ़र को फिर से शुरू कर सकता है और किसी फ़ोल्डर को हूबहू मिरर कर सकता है। एक फ़ाइल के लिए scp ठीक है; जिन फ़ोल्डरों को आप अक्सर सिंक करते हैं, उनके लिए rsync इस्तेमाल करें।

ग़ैर-मानक SSH पोर्ट कैसे इस्तेमाल करूँ?

scp और sftp बड़ा -P इस्तेमाल करते हैं (scp -P 20123), ssh छोटा -p, और rsync इसे ऐसे लेता है: rsync -e 'ssh -p 20123'। EQVPS के NAT प्लान पर निजी SSH पोर्ट पैनल में दिखाया जाता है।

क्या मैं ग्राफ़िकल क्लाइंट इस्तेमाल कर सकता हूँ?

हाँ। कोई भी SFTP क्लाइंट (FileZilla, WinSCP, Cyberduck) उसी होस्ट, पोर्ट, उपयोगकर्ता और SSH कुंजी या पासवर्ड से जुड़ता है जो आप SSH के लिए इस्तेमाल करते हैं। FTP नहीं, SFTP प्रोटोकॉल चुनें।

क्या यह Windows से काम करता है?

Windows 10 और 11 में OpenSSH शामिल है, इसलिए scp और sftp PowerShell में बिल्कुल यहाँ की तरह चलते हैं। rsync शामिल नहीं है; इसे WSL से इस्तेमाल करें या WinSCP की सिंक सुविधा अपनाएँ।

rsync में आख़िरी स्लैश का क्या मतलब है?

'rsync -a site/ dest/' site की सामग्री को dest में कॉपी करता है। 'rsync -a site dest/' dest/site बनाता है। --delete के साथ इसमें ग़लती हुई तो आप ग़लत फ़ोल्डर ख़ाली कर सकते हैं, इसलिए पहले --dry-run के साथ चलाएँ।

टिप्पणियाँ

अभी तक कोई टिप्पणी नहीं। पहले बनें।

एक टिप्पणी छोड़ें

टिप्पणियाँ दिखने से पहले मॉडरेट की जाती हैं।