রিমোট লিনাক্স ফাইল সিস্টেম বা এসএসএইচএসের মাধ্যমে এসএসএইচএফ ব্যবহার করে ডিরেক্টরি কীভাবে মাউন্ট করবেন


এই নিবন্ধটি লেখার মূল উদ্দেশ্যটি এসএসএইচএফএস ক্লায়েন্টকে এসএসএইচএসের মাধ্যমে কীভাবে দূরবর্তী লিনাক্স ফাইল সিস্টেমটি মাউন্ট করতে হবে তার একটি ধাপে ধাপে গাইড সরবরাহ করা।

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

আমরা আরও ইনস্টলেশন করার আগে এসএসএইচএফএস এবং এটি কীভাবে কাজ করে সে সম্পর্কে বুঝতে পারি।

এসএসএইচএসএস কী?

এসএসএফএফস বলতে (সিকিউর শেল ফাইলসিস্টেম) ক্লায়েন্টকে রক্ষা করে যা আমাদেরকে রিমোট ফাইল সিস্টেমটি মাউন্ট করতে এবং এসএসএইচ ফাইল ট্রান্সফার প্রোটোকল (এসএফটিপি) ব্যবহার করে স্থানীয় মেশিনে রিমোট ডিরেক্টরি এবং ফাইলগুলির সাথে ইন্টারঅ্যাক্ট করতে সক্ষম করে।

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

এই নিবন্ধে, আমরা আপনাকে স্থানীয় লিনাক্স মেশিনে রিমোট লিনাক্স ফাইল সিস্টেম বা ডিরেক্টরি মাউন্ট করতে যে কোনও লিনাক্স বিতরণে এসএসএইচএফএস ক্লায়েন্ট ইনস্টল ও ব্যবহার করতে পারি তা দেখাব।

ডিফল্টরূপে sshfs প্যাকেজগুলি সমস্ত বড় লিনাক্স ডিস্ট্রিবিউশনে উপস্থিত থাকে না, আপনার লিনাক্স সিস্টেমের অধীনে ইপেল সংগ্রহস্থলগুলি নির্ভর করতে পারে Yum কমান্ডের সাহায্যে sshfs ইনস্টল করার জন্য।

# yum install sshfs
# dnf install sshfs              [On Fedora 22+ releases]
$ sudo apt-get install sshfs     [On Debian/Ubuntu based systems]

একবার sshfs প্যাকেজ ইনস্টল হয়ে গেলে, আপনাকে একটি মাউন্ট পয়েন্ট ডিরেক্টরি তৈরি করতে হবে যেখানে আপনি আপনার দূরবর্তী ফাইল সিস্টেমটি মাউন্ট করবেন। উদাহরণস্বরূপ, আমরা /mnt/tecmint এর অধীনে মাউন্ট ডিরেক্টরি তৈরি করেছি।

# mkdir /mnt/tecmint
$ sudo mkdir /mnt/tecmint     [On Debian/Ubuntu based systems]

আপনার মাউন্ট পয়েন্ট ডিরেক্টরিটি তৈরি করার পরে, এখন /mnt/tecmint এর অধীন রিমোট ফাইল সিস্টেম মাউন্ট করতে রুট ব্যবহারকারী হিসাবে নিম্নলিখিত কমান্ডটি চালান। আপনার ক্ষেত্রে মাউন্ট ডিরেক্টরি যে কোনও কিছু হতে পারে।

নিম্নলিখিত কমান্ডটি স্থানীয় সিস্টেমের /mnt/tecmint এর অধীনে /home/tecmint নামক রিমোট ডিরেক্টরিটি মাউন্ট করবে। (আপনার আইপি ঠিকানা এবং মাউন্ট পয়েন্টের সাথে x.x.x.x প্রতিস্থাপন করতে ভুলবেন না)।

# sshfs [email :/home/tecmint/ /mnt/tecmint
$ sudo sshfs -o allow_other [email :/home/tecmint/ /mnt/tecmint     [On Debian/Ubuntu based systems]

যদি আপনার লিনাক্স সার্ভারটি এসএসএইচ কী-ভিত্তিক অনুমোদনের সাথে কনফিগার করা থাকে, তবে নিম্নলিখিত কমান্ডের মতো আপনাকে আপনার সর্বজনীন কীগুলির পথ নির্দিষ্ট করতে হবে।

# sshfs -o IdentityFile=~/.ssh/id_rsa [email :/home/tecmint/ /mnt/tecmint
$ sudo sshfs -o allow_other,IdentityFile=~/.ssh/id_rsa [email :/home/tecmint/ /mnt/tecmint     [On Debian/Ubuntu based systems]

যদি আপনি উপরের কমান্ডটি কোনও ত্রুটি ছাড়াই সফলভাবে চালিত হন তবে আপনি /mnt/tecmint এর নীচে মাউন্ট করা রিমোট ফাইল এবং ডিরেক্টরিগুলির তালিকা দেখতে পাবেন।

# cd /mnt/tecmint
# ls
 ls
12345.jpg                       ffmpeg-php-0.6.0.tbz2                Linux                                           news-closeup.xsl     s3.jpg
cmslogs                         gmd-latest.sql.tar.bz2               Malware                                         newsletter1.html     sshdallow
epel-release-6-5.noarch.rpm     json-1.2.1                           movies_list.php                                 pollbeta.sql
ffmpeg-php-0.6.0                json-1.2.1.tgz                       my_next_artical_v2.php                          pollbeta.tar.bz2

আপনি df -hT কমান্ড চালালে আপনি দূরবর্তী ফাইল সিস্টেমের মাউন্ট পয়েন্ট দেখতে পাবেন।

# df -hT
Filesystem                          Type        Size  Used Avail Use% Mounted on
udev                                devtmpfs    730M     0  730M   0% /dev
tmpfs                               tmpfs       150M  4.9M  145M   4% /run
/dev/sda1                           ext4         31G  5.5G   24G  19% /
tmpfs                               tmpfs       749M  216K  748M   1% /dev/shm
tmpfs                               tmpfs       5.0M  4.0K  5.0M   1% /run/lock
tmpfs                               tmpfs       749M     0  749M   0% /sys/fs/cgroup
tmpfs                               tmpfs       150M   44K  150M   1% /run/user/1000
[email :/home/tecmint fuse.sshfs  324G   55G  253G  18% /mnt/tecmint

রিমোট ফাইল সিস্টেমটি স্থায়ীভাবে মাউন্ট করার জন্য আপনাকে /etc/fstab নামক ফাইলটি সম্পাদনা করতে হবে। করতে, আপনার প্রিয় সম্পাদক দিয়ে ফাইলটি খুলুন।

# vi /etc/fstab
$ sudo vi /etc/fstab     [On Debian/Ubuntu based systems]         

ফাইলের নীচে যান এবং এটিতে নিম্নলিখিত লাইনটি যুক্ত করুন এবং ফাইলটি সংরক্ষণ করুন এবং প্রস্থান করুন। ডিফল্ট সেটিংস সহ নীচের এন্ট্রি মাউন্ট রিমোট সার্ভার ফাইল সিস্টেম।

sshfs#[email :/home/tecmint/ /mnt/tecmint fuse.sshfs defaults 0 0

সিস্টেম রিবুটের সময় সার্ভারের মধ্যে স্বয়ংক্রিয়ভাবে মাউন্ট ফাইল সিস্টেমের মধ্যে আপনি এসএসএইচ পাসওয়ার্ডহীন লগইন করেছেন তা নিশ্চিত করুন ..

যদি আপনার সার্ভারটি এসএসএইচ কী ভিত্তিক অনুমোদনের সাথে কনফিগার করা থাকে তবে এই লাইনটি যুক্ত করুন:

sshfs#[email :/home/tecmint/ /mnt/tecmint fuse.sshfs IdentityFile=~/.ssh/id_rsa defaults 0 0

পরবর্তী, পরিবর্তনগুলি প্রতিবিম্বিত করতে আপনার fstab ফাইল আপডেট করতে হবে।

# mount -a
$ sudo mount -a   [On Debian/Ubuntu based systems]

দূরবর্তী ফাইল সিস্টেমটি আনমাউন্ট করতে, জুন নিম্নলিখিত কমান্ডটি ইস্যু করে এটি রিমোট ফাইল সিস্টেমটিকে আনমাউন্ট করবে।

# umount /mnt/tecmint

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