نقل الملفات إلى الخادم: دليل SCP وSFTP وrsync
دليل شامل لصياغة SCP والوضع التفاعلي لـ SFTP وrsync للمزامنة والنسخ الاحتياطي وWinSCP وFileZilla لمستخدمي Windows. نقل آمن للملفات إلى خوادم Linux.
جدول المحتويات
نقل الملفات إلى الخادم: دليل SCP وSFTP وrsync
توجد عدة طرق آمنة لنقل الملفات إلى خادم Linux. يستخدم كل من SCP (بروتوكول النسخ الآمن) وSFTP (بروتوكول نقل الملفات عبر SSH) وrsync بنية SSH لنقل الملفات بشكل مشفر. يغطي هذا الدليل الأدوات الثلاثة والبدائل الرسومية لمستخدمي Windows.
نقل الملفات بـ SCP
SCP أداة بسيطة وسريعة لنسخ الملفات عبر SSH.
صياغة SCP الأساسية
# نسخ ملف محلي إلى الخادم
scp /local/file.txt user@server-ip:/remote/directory/
# نسخ من الخادم إلى الجهاز المحلي
scp user@server-ip:/remote/file.txt /local/directory/
# نسخ مجلد (-r تكراري)
scp -r /local/directory/ user@server-ip:/remote/directory/
# منفذ مخصص (-P بالأحرف الكبيرة)
scp -P 2222 file.txt user@server-ip:/destination/
# مع ملف مفتاح SSH
scp -i ~/.ssh/id_rsa file.txt user@server-ip:/destination/
# النسخ بين خادمين بعيدين
scp user1@server1:/file.txt user2@server2:/destination/
خيارات SCP
# النقل مع الضغط (-C)
scp -C large-file.tar.gz user@server-ip:/destination/
# إظهار التقدم (-v تفصيلي)
scp -v file.txt user@server-ip:/destination/
# تحديد النطاق الترددي (كيلوبايت/ثانية)
scp -l 1024 file.txt user@server-ip:/destination/
# ملفات متعددة
scp file1.txt file2.txt user@server-ip:/destination/
# مع حرف بدل
scp *.log user@server-ip:/var/log/backup/
SCP مثالي لنسخ الملفات البسيط. لمزامنة المجلدات الكبيرة أو النسخ الاحتياطي، rsync أكثر كفاءة.
نقل الملفات بـ SFTP
SFTP بروتوكول نقل ملفات متكامل يعمل عبر SSH. وهو البديل الآمن لـ FTP.
الاتصال بـ SFTP
# بدء جلسة SFTP
sftp user@server-ip
# مع منفذ مخصص
sftp -P 2222 user@server-ip
# مع مفتاح SSH
sftp -i ~/.ssh/id_rsa user@server-ip
أوامر SFTP التفاعلية
# سرد المجلد البعيد
ls
ls -la
# تغيير المجلد البعيد
cd /var/www/html
# تغيير المجلد المحلي
lcd ~/Downloads
# رفع ملف (محلي → بعيد)
put file.txt
put -r /local/directory/ /remote/directory/
# تنزيل ملف (بعيد → محلي)
get file.txt
get -r /remote/directory/ /local/directory/
# إنشاء مجلد بعيد
mkdir new-directory
# حذف ملف بعيد
rm file.txt
# إعادة تسمية ملف بعيد
rename old-name.txt new-name.txt
# إغلاق جلسة SFTP
exit
عمليات SFTP الدُفعية
# SFTP في الوضع الدُفعي
sftp -b - user@server-ip << 'EOF'
cd /var/www/html
put index.html
put style.css
EOF
المزامنة والنسخ الاحتياطي بـ rsync
rsync أداة قوية لمزامنة الملفات والمجلدات بكفاءة. تنقل الملفات المتغيرة فقط.
صياغة rsync الأساسية
# مزامنة مجلد محلي مع الخادم
rsync -avz /local/directory/ user@server-ip:/remote/directory/
# المزامنة من الخادم إلى الجهاز المحلي
rsync -avz user@server-ip:/remote/directory/ /local/directory/
# مع منفذ SSH مخصص
rsync -avz -e "ssh -p 2222" /local/ user@server-ip:/remote/
# مع مفتاح SSH
rsync -avz -e "ssh -i ~/.ssh/id_rsa" /local/ user@server-ip:/remote/
خيارات rsync
# أمر النسخ الاحتياطي الكامل
rsync -avzh --progress /var/www/ user@server-ip:/backup/www/
# المزامنة مع الحذف
rsync -avz --delete /local/ user@server-ip:/remote/
# المحاكاة أولاً
rsync -avz --dry-run /local/ user@server-ip:/remote/
# استثناء ملفات معينة
rsync -avz --exclude='*.log' --exclude='.git' /local/ user@server-ip:/remote/
# تحديد النطاق الترددي (كيلوبايت/ثانية)
rsync -avz --bwlimit=1024 /local/ user@server-ip:/remote/
النسخ الاحتياطي التلقائي بـ rsync
# نسخ احتياطي يومي مع cron
crontab -e
# نسخ احتياطي كل ليلة الساعة 02:00
0 2 * * * rsync -avz --delete /var/www/ user@backup-server:/backup/www/ >> /var/log/rsync-backup.log 2>&1
أقوى ميزة في rsync هي خوارزمية النقل التفاضلي: تنقل الكتل المتغيرة فقط. إذا تغير جزء صغير من ملف كبير، يرسل rsync هذا الجزء المتغير فقط، مما يوفر نطاقاً ترددياً كبيراً.
واجهات رسومية لمستخدمي Windows
WinSCP
WinSCP أشهر عميل SFTP/SCP لنظام Windows.
التثبيت والاتصال:
- حمّل من winscp.net
- أنشئ جلسة جديدة:
- بروتوكول الملفات: SFTP
- عنوان الخادم: server-ip
- المنفذ: 22
- اسم المستخدم وكلمة المرور
- لمفتاح SSH: متقدم → SSH → المصادقة → ملف المفتاح الخاص
FileZilla
FileZilla عميل SFTP متعدد المنصات لـ Windows وmacOS وLinux.
إعداد الاتصال:
- حمّل من filezilla-project.org
- مدير المواقع → موقع جديد:
- البروتوكول: SFTP - SSH File Transfer Protocol
- الخادم: server-ip
- المنفذ: 22
- اتصل
إعداد SSH لاتصالات سهلة
# تعديل ~/.ssh/config
nano ~/.ssh/config
Host my-server
HostName 203.0.113.50
User ubuntu
Port 22
IdentityFile ~/.ssh/id_rsa
# الاتصال الآن باسم مختصر
scp file.txt my-server:/destination/
sftp my-server
rsync -avz /local/ my-server:/remote/
استكشاف الأخطاء وإصلاحها
الاتصال مرفوض
# اختبار اتصال SSH
ssh -v user@server-ip
# التحقق من المنفذ
nmap -p 22 server-ip
# التحقق من جدار الحماية
sudo ufw status
الخلاصة
SCP وSFTP وrsync أدوات لا غنى عنها لنقل الملفات بأمان إلى خوادم Linux. استخدم SCP للنسخ البسيط وSFTP للإدارة التفاعلية وrsync للمزامنة والنسخ الاحتياطي. يمكن لمستخدمي Windows الوصول إلى نفس الوظائف عبر واجهات WinSCP أو FileZilla الرسومية.
مقالات ذات صلة
الاتصال بخادم VDS عبر SSH: PuTTY والطرفية والمفاتيح
دليل شامل للاتصال بخادم Linux VDS عبر SSH: PuTTY، الطرفية، المصادقة بالمفتاح، إنشاء قاعدة تصفية Path Panel، تغيير المنفذ ونصائح الأمان الأساسية.
الاتصال بـ Windows VDS عبر RDP: دليل شامل للمبتدئين
دليل خطوة بخطوة للاتصال بـ Windows Server VDS عبر RDP: الإعداد الكامل، تفعيل NLA للأمان، إنشاء قاعدة تصفية Path Panel واستكشاف الأخطاء وإصلاحها.
تغيير نظام تشغيل خادم VDS: دليل إعادة التثبيت خطوة بخطوة
تغيير نظام تشغيل خادم VDS عبر لوحة REXE: نصائح النسخ الاحتياطي قبل التثبيت، توزيعات Linux المدعومة وإصدارات Windows Server المتاحة للتثبيت الآن.