استخدم الأمر إس.سي.بي لنقل الملفات بأمان

استخدم الأمر SCP لنقل الملفات بأمان.
ubuntu debian centos fedora linux redhat archlinux suse

بروتوكول النسخ الآمن (SCP) هو وسيلة لنقل ملفات الكمبيوتر بشكل آمن بين مضيف محلي ومضيف بعيد ، أو بين مضيفين عن بعد. يعتمد على بروتوكول Secure Shell (SSH). يشير مصطلح “SCP” بشكل عام إلى كل من بروتوكول النسخ الآمن والبرنامج نفسه.

الخطوة 1: قم بتثبيت SCP

في نظامي Mac و Linux، يكون أمر SCP مثبتًا مسبقًا، لذلك لا يلزم عادةً تثبيت إضافي. إذا حاولت استخدام أمر SCP وتلقيت خطأ مثل: bash: scp: command not found ، فهذا يعني أنك بحاجة إلى تثبيت SCP على الخادم المحلي أو البعيد.

Fedora or Red Hat and CentOS:

$ yum -y install openssh-clients

Debian or Ubuntu:

$ apt-get install openssh-client

الخطوة 2: كيفية استخدام SCP

بناء جملة أوامر SCP:

قبل الخوض في كيفية استخدام الأمر scp ، دعنا نبدأ بمراجعة البنية الأساسية.

تأخذ صيغة الأمر scp الشكل التالي:

$ scp [OPTION] s_user@SHOST:file1 d_user@DHOST:file2
  • OPTION – scp options مثل اعدادات ssh ، منفذ ssh ، الحد ، النسخ العودي … إلخ.
  • s_user@SHOST:file1⁣ – مصدر الملف.
  • d_user@DHOST:file2⁣ – الملف الوجهة.

يجب تحديد الملفات المحلية باستخدام مسار مطلق أو نسبي ، بينما يجب أن تتضمن أسماء الملفات البعيدة مواصفات المستخدم والمضيف.

SCP لديه عدد من الخيارات التي تسمح لك بالتحكم في كل جانب من جوانب سلوكه. الأكثر شيوعًا هي:

  • -P⁣ : يحدد منفذ ssh للمضيف البعيد.
  • -p⁣ : يحتفظ بأوقات التعديل وأوقات الوصول والأوضاع من الملف الأصلي.
  • -q⁣ : الوضع الهادئ: يقوم بتعطيل مقياس التقدم ، بالإضافة إلى رسائل التحذير والتشخيص الواردة من ssh.
  • -C⁣ : ضغط تمكين. يمرر العلامة -C إلى ssh لتمكين الضغط.
  • -r⁣ : نسخ الدلائل بشكل متكرر. لاحظ أن SCP يتبع الروابط الرمزية التي تمت مواجهتها في اجتياز الشجرة.

الخطوة 3: استخدام SCP

نسخ الملفات والدلائل بين نظامين
  • ملف محلي لنظام بعيد
$ scp file1.txt [email protected]:/data/test

حيث file1.txt هو اسم الملف المراد نسخه ، يكون ruser هو مستخدم الخادم البعيد ، و 192.168.1.22 هو عنوان IP الخاص بالخادم. المسار إلى الدليل الذي تريد نسخ الملف إليه هو data/test/. إذا لم يتم تحديد دليل بعيد ، فسيتم نسخ الملف إلى الدليل الرئيسي للمستخدم البعيد.

سيُطلب منك إدخال كلمة مرور المستخدم قبل أن يبدأ النقل.

[email protected]'s password:
file1.txt                             100%    0     0.0KB/s   00:00

عند إزالة اسم الملف من موقع الوجهة ، يتم نسخ الملف بالاسم الأصلي. إذا كنت تريد حفظ الملف باسم مختلف ، فاستخدم بناء الجملة التالي:

$ scp file1.txt [email protected]:/data/test/newfile.txt

إذا كان SSH على المضيف البعيد يستمع على منفذ غير الافتراضي 22 ، فاستخدم الوسيطة -P لتحديد المنفذ:

$ scp -P 2222 file1.txt [email protected]:/data/test

الأمر بنسخ الدليل مشابه للأمر بنسخ الملفات. الفرق الوحيد هو أنه بالنسبة للتكرار، يجب عليك استخدام علم -r.

Use the -r option to copy a directory from a local to a remote system:

$ scp -r /data/test [email protected]:/data/testRemote
  • ملف عن بعد إلى نظام محلي

استخدم الموقع البعيد كمصدر والموقع المحلي كوجهة لنسخ ملف من نظام بعيد إلى نظام محلي.

لنسخ ملف اسمه test.txt من خادم بعيد مع IP 192.168.1.22، على سبيل المثال، استخدم الأمر التالي:

$ scp [email protected]:/data/test.txt /data

إذا لم تكن قد قمت بتكوين مفتاح خاص لمصادقة SSH لجهاز التحكم عن بُعد، فسيُطلب منك إدخال كلمة مرور المستخدم.

نسخ ملف بين نظامين عن بعد

على عكس rsync، لا تحتاج إلى تسجيل الدخول إلى أحد الخوادم لنقل الملفات من جهاز بعيد إلى آخر عند استخدام SCP.

وسيقوم الأمر التالي بنسخ الملف/المجلد/file.txt من web1.com المضيف عن بعد إلى دليل/ملفات web2.com المضيف عن بعد.

$ scp user1@web1.com:/folder/file.txt [email protected]:/files

سيتم طلب كلمات المرور لكلا الحسابين عن بُعد. سيتم إرسال البيانات مباشرة من مضيف بعيد إلى آخر.

استخدم خيار -3 لتوجيه حركة المرور عبر الآلة التي يتم إصدار الأمر منها:

$ scp -3 user1@web1.com:/folder/file.txt [email protected]:/files

خلاصة

يعلمك هذا الدليل كيفية نسخ الملفات والأدلة باستخدام أمر SCP.

قد ترغب أيضًا في إعداد مفتاح خاص لمصادقة SSH بحيث يمكنك الاتصال بخوادم Linux الخاصة بك دون إدخال كلمة مرور.

LEAVE A COMMENT