क्या किसी को पता है कि SSHFS के माध्यम से एक दूरस्थ SFTP पथ को कैसे माउंट किया जाए ताकि आप सहानुभूति के साथ काम कर सकें? जब मैं ऐसा करता हूं, तो मैं जो भी सहानुभूति रखता हूं, वे गलत फाइलों की ओर इशारा करते हैं (न कि जिन लोगों से मैं जुड़ा हुआ हूं।) मेरी सभी रुचिएं ऐसी हैं, जो सापेक्ष हैं (निरपेक्ष नहीं हैं) इसलिए वे ठीक वैसे ही दिखाई देते हैं जैसे वे रिमोट मशीन पर करते हैं। आदर्श बनो।
डिफ़ॉल्ट माउंट विकल्पों के साथ sshfs का उपयोग करते हुए, मैं वर्तमान निर्देशिका में किसी अन्य फ़ाइल के लिए एक सिमलिंक नहीं बना सकता:
$ cd /mnt/path/to/sshfs/mount
$ ln -s ./test ./test2
$ ls test2
lrwxrwxrwx 1 root webusers 11 Jul 3 09:11 test2 -> /test
यह स्पष्ट रूप से गलत है, क्योंकि लिंक लक्ष्य वर्तमान निर्देशिका ( ./test
) में है, लेकिन यहां आप देख सकते हैं कि sshfs एक लिंक बनाता है /test
जो गलत है - लिंक लक्ष्य /mnt/path/to/sshfs/mount/test
नहीं है /test
।
transform_symlinks
जब मैं sshfs फाइल सिस्टम को माउंट करता हूं तो विकल्प जोड़कर , मुझे उसी कमांड के बजाय एक रिश्तेदार लिंक मिलता है, लेकिन यह अभी भी गलत जगह की ओर इशारा करता है:
$ cd /mnt/path/to/sshfs/mount
$ ln -s ./test ./test2
$ ls test2
lrwxrwxrwx 1 root webusers 11 Jul 3 09:13 test2 -> ../../../test
यहां मैंने ./test
वर्तमान निर्देशिका में लिंक करने का प्रयास किया , लेकिन इसके बजाय मुझे ../../../test
तीन स्तरों तक लिंक मिला !
sftp
हालांकि sshfs के साथ बढ़ते के बजाय कमांड लाइन SFTP क्लाइंट के साथ जुड़ना काम करता है:
sftp> open ...
sftp> symlink test test2
...
$ cd /mnt/path/to/sshfs/mount
$ ls test2
lrwxrwxrwx 1 root webusers 11 Jul 3 09:13 test2 -> test
तो यह मुझे बताता है कि दूरस्थ SFTP सर्वर ठीक काम कर रहा है (क्योंकि मैं एक समर्पित SFTP ग्राहक के साथ सहानुभूति बना सकता हूं), लेकिन किसी कारण से मैं sshfs हालांकि कोई भी काम करने वाला सहानुभूति नहीं बना पा रहा हूं।
विचित्र रूप से पर्याप्त है, जब मैं एक SSH सर्वर पर एक पथ को माउंट करने के लिए शेल एक्सेस प्रदान करने के लिए sshfs का उपयोग करता है (जैसा कि एक SFTP- केवल सर्वर के विपरीत) सीमलिंक ठीक काम करते हैं - मैं उन्हें सही तरीके से बना सकता हूं। यह केवल SFTP- केवल सर्वर से कनेक्ट होने पर समस्याग्रस्त लगता है।
मैं क्या गलत कर रहा हूं? क्या कोई विशेष विकल्प है जो मुझे sshfs में पास करना है जब मैं एक SFTP सर्वर से जुड़ रहा हूँ ताकि सिम्बलिंक्स काम कर सकें?
sftp
लोअरकेस में कहता हूं तो मेरा मतलब कमांड लाइन SFTP इंटरफेस है /usr/bin/sftp
। पोस्ट में मेरा अंतिम उदाहरण यह है कि जब आप अनुरोध करते हैं, तो मैं इस एसएफटीपी क्लाइंट का उपयोग करके सिमलिंक बनाता हूं।
transform_symlinks
, आप विकल्प के बिना sshfs माउंट पर क्या कर रहे हैं, आप transform_symlinks
विकल्प के साथ ssh माउंट पर क्या कर रहे हैं , और आप sftp क्लाइंट के साथ क्या कर रहे हैं। Symlinks सामान्य रूप से SSHFS पर काम करते हैं, इसलिए आपके पहले वाक्य का उत्तर "कुछ भी नहीं" है - या तो आप बग का सामना कर चुके हैं या आप सही कमांड टाइप नहीं कर रहे हैं, लेकिन आपकी रिपोर्ट यह जानना अस्पष्ट है कि क्या गलत है।
ls -l
अपने टेस्ट सिम्बल पर चलते हैं तो यह क्या दिखाता है ?