النقاط الرئيسية
- يتيح لك SSHFS تصفح ملفات Linux البعيدة على جهاز الكمبيوتر المحلي لديك بسهولة.
- يقوم SSHFS بتثبيت الملفات البعيدة بشكل آمن كفرع محلي لشجرة الدليل الخاصة بك.
- يعد نظام SSHFS مثاليًا للعمل على مستوى الملف، وخاصةً على الأنظمة التي لا تحتوي على واجهة مثل Raspberry Pi.
يتيح لك SSHFS تصفح الملفات على أجهزة كمبيوتر Linux البعيدة بسلاسة كما لو كانت على جهاز الكمبيوتر المحلي لديك. إنها طريقة سريعة وبسيطة للتفاعل مع الأنظمة التي لا تحتوي على واجهة مثل Raspberry Pi.
ما هو SSHFS؟
حصل SSHFS على اسمه من سآمن شإيل و فإيل سالنظام.
يتيح لك بروتوكول SSH العادي الاتصال بأجهزة الكمبيوتر البعيدة من خلال نافذة المحطة الطرفية. ويتم تنفيذ أوامرك على الكمبيوتر البعيد.
يختلف نظام SSHFS عن نظام SSHFS. فهو يقوم بتثبيت نظام ملفات بعيد على جهاز الكمبيوتر المحلي لديك. ويظهر نظام الملفات المثبت كفرع عادي لشجرة الدليل الخاصة بنظام الملفات المحلي لديك. ويمكنك الوصول إلى الملفات البعيدة تمامًا مثل أي ملف آخر على جهاز الكمبيوتر لديك. ويمكنك تصفح الدلائل والملفات باستخدام الأمر cd أو متصفح الملفات.
إن العمل بالملفات يستخدم التطبيقات الموجودة على الكمبيوتر المحلي، وليس الكمبيوتر البعيد. على سبيل المثال، يستخدم تحرير ملف محررًا محليًا. في الواقع، يمكنك الوصول إلى جميع التطبيقات المحلية لديك، ويمكنك استخدامها كما يحلو لك على الملفات البعيدة.
لا يُعد نظام SSHFS مناسبًا حقًا لتشغيل البرامج الموجودة على الكمبيوتر البعيد. ربما لن يعمل تشغيل ملف قابل للتنفيذ من نظام الملفات المثبت بشكل جيد، حيث سيحاول تشغيله على الكمبيوتر المحلي. هذا هو النوع من الأشياء الأكثر ملاءمة لاتصال SSH العادي. ولكن للعمل مع الملفات البعيدة، لا يوجد ما يفوق نظام SSHFS.
تثبيت SSHFS
لاستخدام SSHFS، يجب أن يكون SSH يعمل بالفعل على الكمبيوتر البعيد. لقد تناولنا كيفية إعداد SSH في مكان آخر. نوصي باستخدام مفاتيح SSH بدلاً من كلمات المرور.
إذا لم تقم بإعداد مفاتيح SSH، فسوف يُطلب منك إدخال كلمة مرور الكمبيوتر البعيد عند تحميل نظام الملفات. سوف نستخدم كلمات المرور في أمثلتنا، حتى تتمكن من معرفة متى تظهر المطالبات.
إذا لم يكن SSHFS مثبتًا بالفعل على جهاز الكمبيوتر المحلي لديك، فسيكون تثبيته سهلاً.
في أوبونتو، تحتاج إلى كتابة:
sudo apt install sshfs
يحتاج مستخدمو فيدورا إلى كتابة:
sudo dnf install sshfs
في Manjaro، ستستخدم Pacman:
sudo pacman -S sshfs
يمكنك اختبار تثبيت SSHFS واستجابته، عن طريق السؤال عن رقم إصداره.
sshfs
إنشاء اتصال عن بعد
نحن بحاجة إلى إنشاء دليل ليكون بمثابة نقطة التثبيت. هذا هو المكان الذي سيتم فيه تطعيم نظام الملفات البعيد على شجرة الدليل الخاصة بك.
سأقوم بالاتصال بجهاز RaspberryPi الذي يقوم بإجراء عمليات مسح الشبكة نيابة عني، لذا سأسمي دليلي netscan. يمكنك إنشاء نقطة التثبيت في دليل منزلك، ولكنني سأضعها في /media/dave/، الموقع الافتراضي لنقاط التثبيت في Ubuntu. يجب عليك استخدام اسم المستخدم الخاص بك بدلاً من “dave”.
في التوزيعات الأخرى، قد يكون الموقع الافتراضي هو /run/media/ أو /mnt. وفي النهاية، يمكنك إنشاء نقطة التثبيت الخاصة بك في أي مكان تريده.
sudo mkdir /media/dave/netscan/
دعونا نلقي نظرة على دليلنا الجديد.
ls -hl /media/dave
لقد تم إنشاء الدليل الخاص بنا، وهو مملوك للمستخدم الجذر. لكن هذا لن يهم، حيث سنحصل على أذونات القراءة والكتابة على نظام الملفات المثبت.
يعد أمر SSHFS طويلاً بعض الشيء، ولكنه بسيط إلى حد ما عند تقسيمه.
sudo sshfs -o allow_other,default_permissions dave@net-scan.lan: /media/dave/netscan/
يتكون الأمر من:
- سودو:نحن نستخدم sudo لأن نقطة التثبيت الخاصة بنا مملوكة للجذر.
- سشفس:لنقم بتثبيت نظام ملفات بعيد.
- -و:يتبع الخيار -o (خيارات التثبيت) الخيارين allow_other وdefault_permissions. وهما مطلوبان للسماح لنا بالتفاعل مع نظام الملفات المثبت.
- ديف@net-scan.lan:نحتاج إلى توفير اسم المستخدم لحساب على الكمبيوتر البعيد، واسم الشبكة أو عنوان IP للكمبيوتر البعيد. هذه هي نفس المعلومات التي تحتاج إلى توفيرها لاتصال SSH العادي.
- “:”:تفصل علامة النقطتين اللاحقة عنوان الشبكة عن مسار اختياري. يشير المسار إلى الموقع داخل الكمبيوتر البعيد الذي سيتم استخدامه كجذر لنظام الملفات المثبت. من خلال ترك المسار فارغًا، فإننا نخبر SSHFS باستخدام الدليل الرئيسي لحساب المستخدم. ولكن يمكنك توجيه هذا إلى دليل المستندات البعيد، على سبيل المثال.
- /وسائل الإعلام/ديف/netscan/:نقطة التثبيت التي نريد تثبيت نظام الملفات البعيد عليها. يجب أن تكون موجودة بالفعل.
لقد تم مطالبتنا بذلك لك كلمة المرور لأنك استخدمت أمر sudo. ثم يُطلب منا إدخال كلمة المرور للحساب على الكمبيوتر البعيد.
في المرة الأولى التي تتصل فيها، من المحتمل أن يُطرح عليك سؤال بنعم/لا حول ما إذا كنت تريد الوثوق بالكمبيوتر البعيد وإضافة تفاصيله إلى قائمة مضيفين SSH المعروفين لديك. أجب بنعم على هذا السؤال.
الوصول إلى الملفات في نافذة المحطة الطرفية
عند إجراء اتصال SSH عادي، يتغير موجه الأوامر لديك إلى موجه الأوامر الخاص بالجهاز الذي اتصلت به. لا يحدث هذا عند تثبيت نظام ملفات باستخدام SSHFS.
الطريقة الوحيدة التي يمكنك من خلالها معرفة حدوث شيء ما هي إذا حاولت الوصول إلى نظام الملفات المثبت من خلال الانتقال إلى دليل نقطة التثبيت والبحث حوله.
cd /media/dave/netscan/
ls
يمكننا رؤية الدليل الرئيسي لحساب المستخدم على الكمبيوتر البعيد. أي تغييرات تقوم بها هنا يتم إجراؤها على محرك الأقراص البعيد. أي تعديلات أو عمليات حذف ستؤثر على الكمبيوتر البعيد.
ينبغي أن نكون قادرين على إنشاء ملف جديد.
touch new-file.txt
ls -hl new-file.txt
تم إنشاء ملفنا، ونحن مالكوه. لم تكن هناك حاجة لاستخدام sudo.
يمكننا التنقل عبر نظام الملفات المثبت باستخدام الأمر cd، ويمكننا نسخ الملفات باستخدام الأمر cp. وهذا ينقل الملفات بفعالية بين الجهاز البعيد والكمبيوتر المحلي.
cd report
ls
cp * /home/dave/Downloads/
ls /home/dave/Downloads/
الوصول إلى الملفات في متصفح الملفات
نظرًا لأن نظام الملفات المثبت يبدو ويتصرف مثل أي جزء آخر من شجرة دليل نظام الملفات الخاص بك، فيمكنك استخدام متصفح الملفات الخاص بك للتنقل فيه أيضًا.
سيظهر نظام الملفات المثبت كمجلد مثبت. يؤدي النقر فوق اسم نقطة التثبيت إلى نقلك مباشرة إلى الملفات البعيدة.
يؤدي النقر المزدوج على ملف إلى فتح التطبيق المرتبط بهذا النوع من الملفات. يتم تنفيذ هذه الإجراءات بواسطة التطبيقات الموجودة على الكمبيوتر المحلي لديك.
على سبيل المثال، إذا قمت بتحرير مستند، فسيتم تشغيل محرر النصوص المحلي الافتراضي لديك.
قطع الاتصال
لقطع الاتصال وإلغاء تثبيت نظام الملفات البعيد، نستخدم الأمر umount. لاحظ أنه لا يوجد حرف “n” قبل الحرف “m” في الأمر umount.
sudo umount /media/dave/netscan
البعيد، القريب
يؤدي الوصول السهل والمباشر إلى الملفات الموجودة على أجهزة الكمبيوتر البعيدة إلى تبسيط الصيانة والمهام الأخرى.
إن القدرة على استخدام التطبيقات المحلية على الملفات البعيدة تتيح لك الاستفادة من قوة جهاز الكمبيوتر الخاص بك عند العمل مع أجهزة مثل RaspberryPi. على سبيل المثال، يمكنك تشغيل gcc على جهازك المحلي لتجميع ملفات المصدر على الجهاز البعيد.