वर्षौंदेखि स्क्रिप्टमा चलेको scp आदेश हालको क्लाइन्टमा टनेलसँग कुनै सम्बन्ध नभएको पथ त्रुटिले असफल हुन सक्छ। VPN ले बाइटहरू बोक्यो; क्लाइन्टले सर्भरले समाधान गर्न नसक्ने नाम सर्भरसँग माग्यो। हालको OpenSSH scp ले पूर्वनिर्धारित रूपमा SFTP मार्फत स्थानान्तरण गर्छ, र SFTP ले पुरानो प्रोटोकलजस्तै शेल-शैली विस्तार गर्दैन। आफ्नै खाताबाट आदेशलाई बाहिरतिर पछ्याउँदा पथ वास्तवमा कहाँ व्याख्या हुन्छ देखिन्छ।

खाताबाट सुरु गर्नुहोस्, त्यसपछि लेख्न सक्ने डाइरेक्टरीबाट

कोलनले दुई नामस्थान छुट्याउँछ, र बायाँ भाग मात्र तपाईं टाइप गरिरहेको मेसिनको हो। त्यसपछिको सबै सर्भरले समाधान गर्छ, तपाईंले प्रमाणीकरण गरेको खाताअन्तर्गत, त्यो खातासँग भएको फाइलसिस्टम दृश्यभित्र। आदेश बनाउनु अघि दुवै पुष्टि गर्नुहोस्, किनकि प्रशासकका लागि सही पथ स्थानान्तरण प्रयोगकर्ताका लागि स्वतः सही हुँदैन। त्यही भिन्नता नेटवर्क खराबीजस्तो देखिने अधिकांश अनुमति त्रुटिको स्रोत हो।

सर्भरलाई यसको आफ्नै दृश्य सोध्नुहोस्: ssh [email protected] pwd र ssh [email protected] ls -ld /srv/archive। यदि दोस्रो आदेशले अनुमति अस्वीकृत भनी जनाउँछ भने टनेल ठीक छ र त्यो खाताका लागि पथ प्रयोगयोग्य छैन। स्थानान्तरण अगाडि बढ्न सकोस् भनी अनुमति फराकिलो बनाउनुको सट्टा स्वामित्व सुधार्नुहोस् वा अर्को गन्तव्य छान्नुहोस्।

प्रतिबन्धित SFTP कन्फिगरेसनले chroot लाई फाइलसिस्टमको जराका रूपमा प्रस्तुत गर्न सक्छ। त्यो दृश्यभित्र पूर्ण पथ chroot भित्र पूर्ण हुन्छ, जो प्रशासकले होस्टमा देख्ने स्थान होइन।

कोलनका दुवै पक्ष स्पष्ट रूपमा नाम दिनुहोस्

अपलोडले स्थानीय आधार नाम अर्कोतिर स्वीकार्य हुनेछ भनी मान्नुको सट्टा रिमोट फाइल नाम बताउनुपर्छ।

scp q3-invoice.csv [email protected]:/home/transfer/drop/q3-invoice.csv

डाउनलोडले ठ्याक्कै त्यही कारणले स्थानीय गन्तव्य बताउनुपर्छ। दुई नामस्थान स्वतन्त्र छन्, र ती मिल्छन् भनी मान्ने स्क्रिप्ट रिमोट रूखले फरक लेआउट प्रयोग गर्दा पहिलो पटकै भाँचिन्छ।

scp [email protected]:/srv/archive/2026-q3.csv ./2026-q3.csv

मर्मत गरिने स्क्रिप्टमा ~otheruser बेवास्ता गर्नुहोस्। अर्को खाताको गृह डाइरेक्टरी विस्तार गर्नु रिमोट-शेल सुविधा थियो, र SFTP सर्भरले त्यसको अनुकरण गर्ने एक्सटेन्सन लागू नगर्न सक्छ। खाताले वास्तवमा खोल्न सक्ने पूर्ण पथ लेख्नुहोस्, र खाली ठाउँ भएका स्थानीय पथहरू सर्भरको शेलका लागि लेखिएका उद्धरण तहहरू प्रतिलिपि गर्नुको सट्टा उद्धरणभित्र राख्नुहोस्।

तपाईंको scp ले वास्तवमा कुन प्रोटोकल प्रयोग गर्छ जान्नुहोस्

OpenSSH 9.0 देखि क्लाइन्टले पूर्वनिर्धारित रूपमा SFTP प्रयोग गर्छ, र वितरणहरूले त्यो व्यवहार आफ्नै तालिकाअनुसार अपनाउँछन् वा पछाडि पोर्ट गर्छन्। संस्करण स्ट्रिङले क्लाइन्टको मनसाय बताउँछ, तर विक्रेताको बिल्ड upstream भन्दा फरक हुन सक्छ, त्यसैले तपाईंले वास्तवमा चलाउने क्लाइन्ट जाँच्नुहोस्: ssh -V।

दुई प्रोटोकलले नामहरू फरक तरिकाले समाधान गर्छन्। पुरानो SCP ले रिमोट प्रयोगकर्ता शेललाई पथ विस्तार गर्न भन्छ, त्यसैले वाइल्डकार्ड र टिल्डेहरू त्यो शेलले आफ्नै नियमले ह्यान्डल गर्छ। SFTP ले यसको सट्टा फाइल-स्थानान्तरण कार्यहरू जारी गर्छ, त्यसैले वाइल्डकार्ड क्लाइन्टले विस्तार गर्छ वा बिल्कुलै विस्तार हुँदैन। दुवै SSH भित्र एउटै मेसिनमा जान्छन्, त्यसैले एउटै होस्ट दुई क्लाइन्टअन्तर्गत फरक व्यवहार गर्न सक्छ।

scp -v ले माग गर्ने सबसिस्टम प्रिन्ट गर्छ, र sftp सबसिस्टम लाइनले आधुनिक पथ प्रयोग भइरहेको पुष्टि गर्छ। scp -O ले समर्थित र साँच्चै आवश्यक ठाउँमा पुरानो प्रोटोकल बाध्य गर्छ, र आफ्नै उद्धरण नियमहरू साथै फर्काउँछ। यो VPN विकल्प होइन, सर्भरमा केही सक्षम गर्ने तरिका होइन, र होस्ट-की जाँच खुकुलो बनाउने कारण होइन।

स्क्रिप्टले यसमा भर पर्नु अघि पथ परीक्षण गर्नुहोस्

पथ समस्या सबैभन्दा नराम्रो समयमा, रातमा कसैले नदेखेको स्वचालित काममा देखा पर्छ। पहिले सानो फाइल र कामले प्रयोग गर्ने ठ्याक्कै त्यही खाताबाट गन्तव्य प्रमाणित गर्नुहोस्, र त्यो परीक्षण आदेश कामको परिभाषाको छेउमा राख्नुहोस्। परीक्षणलाई अर्को खाता वा अर्को डाइरेक्टरी चाहिएमा कामलाई पनि चाहिन्छ।

सर्भर पक्ष पनि जाँच्नुहोस्। grep -i subsystem /etc/ssh/sshd_config ले SFTP सबसिस्टम कन्फिगर भएको छ कि छैन देखाउँछ, र sftp -b /dev/null [email protected] त्यो सबसिस्टमले जवाफ दिएमा मात्र सफलतापूर्वक बाहिर निस्कन्छ। SSH लगइन स्वीकार गर्ने तर सबसिस्टम नभएको होस्ट लगइन परीक्षणमा पूर्ण स्वस्थ देखिए पनि हरेक आधुनिक स्थानान्तरणमा असफल हुन्छ।

क्लाइन्ट संस्करण, प्रयोग भइरहेको प्रोटोकल र पूर्ण रिमोट पथ कामका नोटमा रेकर्ड गर्नुहोस्। अर्को अपग्रेडले पूर्वनिर्धारित मान बदल्दा, त्यो नोट पाँच मिनेटको सुधार र अनुमानले भरिएको दिउँसोबीचको भिन्नता हो।

सम्बन्धित लेखहरू