sshfs এসএফটিপি সার্ভার থেকে সিমলিংকগুলি ভেঙে দেয়


16

কেউ কি জানেন যে কীভাবে এসএসএইচএফএসের মাধ্যমে দূরবর্তী এসএফটিপি পাথটি মাউন্ট করবেন যাতে আপনি সিমলিংকের সাথে কাজ করতে পারেন? আমি যখন এটি করি, তখন আমি যে সকল সিমলিংকগুলি ভুল ফাইলগুলিতে নির্দেশ করি (যেগুলির সাথে আমি সংযুক্ত ছিলাম তা নয়)) আমি আগ্রহী সমস্ত যে সকল সিমলিঙ্কগুলি আপেক্ষিক (নিখুঁত নয়) তাই তারা দূরবর্তী মেশিনে ঠিক যেমন প্রদর্শিত হবে তেমন প্রদর্শিত হবে আদর্শ হতে।

ডিফল্ট মাউন্ট বিকল্পগুলির সাথে 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তিনটি স্তরের লিঙ্ক পেয়েছি !

sftpSshfs দিয়ে মাউন্ট করার পরিবর্তে কমান্ড লাইন 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

সুতরাং এটি আমাকে বলবে যে রিমোট এসএফটিপি সার্ভারটি ঠিকঠাকভাবে কাজ করছে (যেহেতু আমি একটি উত্সর্গীকৃত এসএফটিপি ক্লায়েন্টের সাথে সিমলিংকগুলি তৈরি করতে পারি), তবে কোনও কারণে আমি এসএসএফএস সত্ত্বেও কোনও কার্যকরী প্রতিলিপি তৈরি করতে অক্ষম।

অদ্ভুতভাবে যথেষ্ট, যখন আমি একটি এসএসএইচ সার্ভারের শেল অ্যাক্সেস সরবরাহ করে (কেবলমাত্র একটি এসএফটিপি-কেবল সার্ভারের বিপরীতে) সিমলিংকগুলি ভালভাবে কাজ করে তখন পাথ মাউন্ট করতে sshfs ব্যবহার করি - আমি সেগুলি সঠিকভাবে তৈরি করতে পারি। কেবলমাত্র এসএফটিপি-কেবল সার্ভারের সাথে সংযুক্ত থাকলেই এটি সমস্যাযুক্ত বলে মনে হয়।

আমি কি ভুল করছি? সিমলিংকগুলি কাজ করার জন্য যখন আমি একটি এসএফটিপি সার্ভারের সাথে সংযোগ করছি তখন আমাকে কী এসএসএফএসে যেতে হবে?


আমি আপনার প্রশ্নটি বুঝতে পারি না: sshfs সর্বদা এসএফটিপি ব্যবহার করে। "Sftp এর পরিবর্তে ssh এর মাধ্যমে" আপনার অর্থ কী? দেখে মনে হচ্ছে আপনার একটি নির্দিষ্ট এসএফটিপি সার্ভারের সাথে সমস্যা হচ্ছে। আপনি যদি কোনও এসএফটিপি ক্লায়েন্ট ব্যবহার করেন, আপনি যখন ls -lপরীক্ষার সিমলিংকে চালিত হন তখন এটি কী দেখায় ?
গিলস 'তাই মন্দ হওয়া বন্ধ করুন'

দুঃখিত, আমি যখন sftpলোয়ারকেসে বলি তখন আমি কমান্ড লাইন এসএফটিপি ইন্টারফেসটি বোঝাতে চাইছি /usr/bin/sftp। পোস্টে আমার সর্বশেষ উদাহরণটি যখন আপনি অনুরোধ করছেন ঠিক তেমন এই এসএফটিপি ক্লায়েন্টটি ব্যবহার করে যখন সিমলিংক তৈরি করি।
মালভাইনাস

আপনার অর্থ কী তা আমার এখনও ধারণা নেই। আপনি স্থানীয়ভাবে কী করছেন, transform_symlinksবিকল্প ব্যতীত কোনও এসএসএফএস মাউন্টের উপর আপনি কী করছেন, বিকল্পের সাহায্যে এসএসএস মাউন্টের মাধ্যমে আপনি কী করছেন এবং এসএফপিপি ক্লায়েন্টের সাথে আপনি কী করছেন তা স্পষ্ট করতে আপনার পোস্টটি সম্পাদনা করুন transform_symlinks। সিমলিংকগুলি সাধারণত এসএসএইচএফএসের মাধ্যমে কাজ করে, সুতরাং আপনার প্রথম বাক্যটির উত্তর "কিছুই নয়" - হয় আপনি কোনও বাগের মুখোমুখি হয়ে গিয়েছিলেন বা আপনি সঠিক কমান্ডগুলি টাইপ করছেন না, তবে আপনার প্রতিবেদনটি ভুল কী তা জানার জন্য খুব অস্পষ্ট।
গিলস 'এস-অশুভ হওয়া বন্ধ করুন'

আমি যথাসাধ্য যা চাইব তা স্পষ্ট করার চেষ্টা করেছি, তবে প্রশ্নটি আমার কাছে পরিষ্কার বলে মনে হচ্ছে বলে আপনি কী পরে আছেন তা আমি নিশ্চিত নই। যদি এটি এখনও অস্পষ্ট থাকে তবে দয়া করে আমাকে বিশেষভাবে বলুন কোন অংশগুলি বোঝায় না এবং কেন, এবং আমি সেই বিটগুলিতে ফোকাস দেওয়ার চেষ্টা করব। আশা করি আপনার প্রশ্নের উত্তর এখনই দেওয়া হয়েছে।
মালভাইনাস

উত্তর:


13

মাউন্ট পয়েন্টের /তুলনায় রিমোট পরম ( সিটলিঙ্ক) থেকে রূপান্তর sshfsকরতে, follow_symlinksবিকল্পটি ব্যবহার করুন :

sshfs -o follow_symlinks ...

transform_symlinksবিকল্প আমার জন্য কিছুই না দেখতে এই সমস্যা


আমার ক্ষেত্রে সঠিক উত্তর। আমি আগে সিমলিঙ্কযুক্ত ফাইল / ফোল্ডারটি দেখিনি, এবং এখন আমি এটি দেখতে পেয়েছি এবং আমি এটি অনুসরণ করতে পারি।
লগঅফ

1

আপনি যে আচরণটি আগে বর্ণনা করেছেন তা আমি দেখেছি তবে এখন এটি পরীক্ষা করে আমি sshfs- মাউন্টড ডিরেক্টরিতে ঠিক সূক্ষ্ম symlinks তৈরি করতে পারি:

$ touch T
$ ln -s T L
$ ls -l T L
lrwxrwxrwx 1 user user 1 Apr  9 16:10 L -> T
-rw-rw-r-- 1 user user 0 Apr  9 16:10 T

$ echo hello >> L
$ cat T
hello
$ pwd
/home/user/oak/tmp
$ mount | grep oak
user@oak: on /home/user/oak type fuse.sshfs (rw,nosuid,nodev,user=user)

আমি প্রায় 4 মাস আগে রিমোটে এসএসডি আপগ্রেড করেছি । পুরানো সংস্করণটি কয়েক বছর পুরানো হত। সম্ভবত আপগ্রেডটি সমস্যার সমাধান করেছে। এটি এখন আমি কী ব্যবহার করছি সে সম্পর্কে কিছু ধারণা দিতে পারে:

$ ssh oak 'ident $(which sshd)' | grep ssh
/usr/sbin/sshd:
 $NetBSD: sshd.c,v 1.13.4.1 2015/04/30 06:07:31 riz Exp $
 $NetBSD: sshpty.c,v 1.2.26.1 2015/04/30 06:07:31 riz Exp $
 $NetBSD: sshlogin.c,v 1.4.22.1 2015/04/30 06:07:31 riz Exp $

উবুন্টু স্বয়ংক্রিয়ভাবে যা করে তা বাদ দিয়ে আমি এসএসএফ পরিবর্তন করতে কিছুই করি নি।
আছে HTH।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.