آموزش انتقال اطلاعات بین دو سرور مجازی ویندوز

زمان مطالعه: 7 دقیقه

انتقال اطلاعات بین دو سرور مجازی ویندوز زمانی اهمیت پیدا می‌کند که بخواهید سایت، نرم‌افزار، پایگاه داده یا فایل‌های یک سرور را به VPS دیگری منتقل کنید. برای مثال، ممکن است سرور فعلی شما به منابع بیشتری نیاز داشته باشد و تصمیم بگیرید اطلاعات را به یک سرور مجازی جدید منتقل کنید. همچنین در زمان جابه‌جایی سرویس بین سرور مجازی ایران و سرور مجازی خارج یا برعکس، انتقال صحیح فایل‌ها یکی از مراحل مهم کار است.

برای انتقال فایل بین دو سرور ویندوز روش‌های مختلفی وجود دارد. اگر حجم اطلاعات زیاد باشد، استفاده از ابزارهای خط فرمان ویندوز مانند Robocopy معمولاً گزینه مناسبی است؛ زیرا می‌تواند تعداد زیادی فایل را با قابلیت ادامه انتقال مدیریت کند. در کنار آن، می‌توان از File Sharing ویندوز، نرم‌افزارهایی مانند WinSCP یا حتی Remote Desktop نیز استفاده کرد.

در این مقاله روش‌های کاربردی انتقال اطلاعات بین دو VPS ویندوز را بررسی می‌کنیم تا بتوانید بر اساس حجم فایل‌ها و شرایط سرورها، روش مناسب را انتخاب کنید.

نکته: در این آموزش فرض می‌کنیم به هر دو سرور دسترسی مدیریتی دارید و سرویس‌های شبکه و فایروال سرورها امکان برقراری ارتباط بین آن‌ها را فراهم می‌کنند.

آموزش انتقال داده بین دو سرور مجازی ویندوزی
آموزش انتقال داده بین دو سرور مجازی ویندوزی

انتقال اطلاعات بین دو سرور مجازی ویندوز چگونه انجام می‌شود؟

فرض کنید دو سرور داریم:

  • سرور مبدا: سروری که فایل‌ها در آن قرار دارند.
  • سرور مقصد: سروری که قرار است فایل‌ها به آن منتقل شوند.

در این شرایط می‌توان اطلاعات را مستقیماً بین دو سرور منتقل کرد و نیازی نیست ابتدا تمام فایل‌ها را روی کامپیوتر شخصی دانلود و سپس دوباره روی سرور مقصد آپلود کنید.

این موضوع به‌خصوص زمانی اهمیت دارد که حجم اطلاعات چندین گیگابایت یا حتی بیشتر باشد.

چه زمانی به انتقال اطلاعات بین دو VPS ویندوز نیاز داریم؟

از جمله کاربردهای رایج انتقال اطلاعات بین دو سرور ویندوز می‌توان به موارد زیر اشاره کرد:

  • انتقال سایت از یک سرور به سرور دیگر
  • جابه‌جایی فایل‌های یک نرم‌افزار
  • انتقال فایل‌های پشتیبان
  • مهاجرت به یک VPS با منابع بیشتر
  • انتقال اطلاعات هنگام تغییر دیتاسنتر
  • انتقال فایل‌های حجیم بین سرورها
  • ساخت یک نسخه از اطلاعات روی سرور دیگر

در چنین شرایطی بهتر است قبل از شروع انتقال، حجم اطلاعات، فضای خالی سرور مقصد و روش مناسب انتقال را مشخص کنید.

قبل از انتقال فایل چه مواردی را بررسی کنیم؟

قبل از شروع کار، موارد زیر را بررسی کنید:

  • فضای خالی سرور مقصد را بررسی کنید. فضای آزاد باید برای نگهداری فایل‌های موردنظر کافی باشد.
  • IP هر دو سرور را مشخص کنید.
  • اتصال شبکه بین دو سرور را بررسی کنید.
  • فایروال ویندوز و فایروال شبکه را بررسی کنید.
  • اطمینان حاصل کنید حساب کاربری مورد استفاده مجوز دسترسی به فایل‌ها و پوشه‌ها را دارد.
  • اگر اطلاعات مربوط به یک سایت یا نرم‌افزار فعال است، بررسی کنید انتقال فایل‌ها در زمان اجرای سرویس باعث ایجاد مشکل نشود.

هشدار: اگر فایل‌های برنامه، سایت یا پایگاه داده در حال استفاده هستند، صرفاً کپی کردن فایل‌ها همیشه به معنی انتقال کامل سرویس نیست. برای اطلاعاتی که دائماً تغییر می‌کنند، باید وضعیت سرویس و داده‌های در حال تغییر نیز در نظر گرفته شود.

روش اول: انتقال فایل بین دو سرور ویندوز با Shared Folder و Robocopy

یکی از روش‌های مناسب برای انتقال حجم زیادی از فایل‌ها بین دو سرور ویندوز، استفاده از File Sharing ویندوز در کنار ابزار Robocopy است.

Robocopy مخفف Robust File Copy است و ابزار داخلی ویندوز برای کپی کردن فایل‌ها و پوشه‌ها محسوب می‌شود. این ابزار امکانات بیشتری نسبت به Copy و Paste معمولی دارد و برای انتقال تعداد زیادی فایل یا فایل‌های حجیم کاربردی است.

در این روش، یک پوشه روی سرور مبدا به اشتراک گذاشته می‌شود و سرور مقصد از طریق شبکه به آن دسترسی پیدا می‌کند.

فعال کردن File Sharing در سرور مقصد

ابتدا باید در سرور مقصد پوشه‌ای را که قرار است فایل‌ها در آن قرار بگیرند ایجاد کنید.

برای مثال:

				
					D:\ServerTransfer
				
			

سپس باید دسترسی مناسب برای این پوشه تنظیم شود.
در ویندوز روی پوشه راست‌کلیک کرده و وارد Properties شوید. سپس از قسمت Sharing، گزینه Advanced Sharing را انتخاب کنید.

گزینه Share this folder را فعال کنید.

در این مرحله بهتر است به‌جای دادن دسترسی گسترده به همه کاربران، دسترسی را فقط برای حساب کاربری موردنظر تنظیم کنید.

اتصال سرور مبدا به پوشه اشتراکی

پس از ایجاد Share، باید از سرور مبدا به پوشه اشتراکی سرور مقصد متصل شوید.

برای این کار می‌توانید در File Explorer مسیر زیر را وارد کنید:

				
					\\IP-Server-Destination\ServerTransfer
				
			

به جای IP-Server-Destination، آدرس IP سرور مقصد را قرار دهید.

برای مثال:

				
					\\192.168.1.20\ServerTransfer
				
			

اگر ویندوز درخواست نام کاربری و رمز عبور کرد، اطلاعات حسابی را وارد کنید که روی سرور مقصد مجوز دسترسی به پوشه را دارد.

نکته امنیتی: اگر سرورها از طریق اینترنت با یکدیگر ارتباط دارند، باز کردن سرویس‌های اشتراک‌گذاری فایل ویندوز برای اینترنت عمومی می‌تواند خطر امنیتی داشته باشد. در حالت ایده‌آل، ارتباط SMB باید روی یک شبکه خصوصی یا مسیر امن بین دو سرور انجام شود.

انتقال فایل‌ها با Robocopy

پس از برقرار شدن دسترسی به پوشه مقصد، می‌توانید از سرور مبدا Command Prompt یا PowerShell را باز کنید.

فرض کنید فایل‌های شما در مسیر زیر قرار دارند:

				
					D:\Website
				
			

و پوشه مقصد به شکل زیر در دسترس است:

				
					\\192.168.1.20\ServerTransfer
				
			

دستور زیر فایل‌ها و زیرپوشه‌های موجود را منتقل می‌کند:

				
					robocopy "D:\Website" "\\192.168.1.20\ServerTransfer" /E
				
			

در این دستور:

  • robocopy ابزار انتقال فایل ویندوز است.
  • مسیر اول، پوشه مبدا است.
  • مسیر دوم، پوشه مقصد است.
  • /E باعث می‌شود زیرپوشه‌ها نیز منتقل شوند؛ حتی اگر بعضی از آن‌ها خالی باشند.

اگر تعداد فایل‌ها زیاد است، Robocopy می‌تواند نسبت به کپی معمولی مدیریت بهتری روی عملیات انتقال داشته باشد.

انتقال پوشه‌های حجیم با Robocopy

یکی از قابلیت‌های مهم Robocopy این است که می‌توانید در صورت قطع شدن ارتباط، عملیات را دوباره اجرا کنید تا فایل‌هایی که قبلاً به مقصد منتقل شده‌اند دوباره کپی نشوند.

برای مثال:

				
					robocopy "D:\Website" "\\192.168.1.20\ServerTransfer" /E /Z /R:3 /W:5
				
			

در این دستور:

  • E/زیرپوشه‌ها را نیز منتقل می‌کند.
  • Z/حالت Restartable را فعال می‌کند تا انتقال فایل‌ها در شرایط مناسب قابلیت ادامه داشته باشد.
  • R:3/تعداد تلاش مجدد برای فایل ناموفق را روی ۳ بار قرار می‌دهد.
  • W:5/بین تلاش‌های مجدد ۵ ثانیه صبر می‌کند.

این قابلیت برای انتقال فایل‌های حجیم یا تعداد زیادی فایل مفید است؛ زیرا در صورت بروز خطای موقت، لازم نیست همیشه کل عملیات را از ابتدا انجام دهید.

نکته: قبل از اجرای دستورات Robocopy روی اطلاعات مهم، بهتر است ابتدا آن را روی یک پوشه آزمایشی اجرا کنید تا با ساختار دستور و نتیجه آن آشنا شوید.

روش دوم: انتقال اطلاعات بین دو سرور ویندوز با WinSCP

روش دیگر برای انتقال فایل بین سرورها، استفاده از WinSCP است. WinSCP یک نرم‌افزار انتقال فایل است که از پروتکل‌هایی مانند SFTP پشتیبانی می‌کند.

مزیت این روش این است که می‌توانید فایل‌ها را از طریق یک رابط گرافیکی مدیریت کنید و لازم نیست تمام عملیات را با Command Prompt انجام دهید.

البته برای استفاده از SFTP، سرور مقصد باید یک سرویس SSH/SFTP فعال داشته باشد.

نصب و راه‌اندازی WinSCP

WinSCP را روی سروری که قرار است عملیات انتقال از آن انجام شود نصب کنید.

پس از اجرای برنامه، باید اطلاعات اتصال را وارد کنید. برای اتصال SFTP معمولاً اطلاعات زیر موردنیاز است:

  • File protocol: SFTP
  • Host name: آی‌پی سرور مقصد
  • Port: پورت SSH سرور مقصد
  • User name: نام کاربری
  • Password: رمز عبور

پس از برقراری اتصال، فایل‌های سیستم محلی و فایل‌های سرور مقصد را می‌توانید در محیط برنامه مشاهده کنید.

اتصال به سرور مقصد

فرض کنیم IP سرور مقصد 192.168.1.20 است و سرویس SFTP روی پورت پیش‌فرض SSH فعال شده است.

در بخش Host name آدرس زیر را وارد می‌کنید:

192.168.1.20

سپس پروتکل را روی SFTP قرار داده و اطلاعات حساب کاربری را وارد می‌کنید.

هشدار: شماره پورت SSH را فقط در صورتی روی مقدار دیگری قرار دهید که سرویس SSH سرور مقصد واقعاً روی همان پورت فعال باشد.

انتقال فایل‌ها بین دو سرور

پس از اتصال، فایل‌های موردنظر را از پنل مربوط به سرور مبدا انتخاب کرده و به مسیر مقصد منتقل کنید.

این روش برای زمانی مناسب است که:

  • رابط گرافیکی را به خط فرمان ترجیح می‌دهید.
  • سرویس SFTP روی سرور مقصد فعال است.
  • می‌خواهید فایل‌ها را به‌صورت دستی انتخاب و منتقل کنید.
  • تعداد فایل‌ها و حجم اطلاعات آن‌قدر زیاد نیست که مدیریت آن‌ها با رابط گرافیکی دشوار شود.

روش سوم: انتقال فایل با Remote Desktop

اگر از Remote Desktop Protocol یا RDP برای مدیریت سرور ویندوز استفاده می‌کنید، امکان انتقال فایل نیز وجود دارد.

با این حال، RDP بیشتر برای مدیریت سرور طراحی شده و برای انتقال حجم بسیار زیاد اطلاعات معمولاً انتخاب اول نیست.

فعال کردن انتقال فایل از طریق RDP

هنگام ایجاد اتصال Remote Desktop در ویندوز، می‌توانید در تنظیمات اتصال به بخش مربوط به Local Resources بروید.

در قسمت مربوط به Local devices and resources، گزینه More را انتخاب کنید و درایو موردنظر کامپیوتر خود را برای استفاده در جلسه Remote Desktop در دسترس قرار دهید.

پس از اتصال به سرور، در File Explorer می‌توانید درایو اشتراک‌گذاری‌شده را مشاهده کنید.

از این طریق می‌توان فایل‌ها را بین سیستم محلی و سرور منتقل کرد.

کپی فایل از کامپیوتر به سرور

این روش بیشتر برای انتقال فایل‌های کم‌حجم مناسب است. برای مثال، اگر یک فایل نصبی یا فایل تنظیمات دارید، می‌توانید آن را از کامپیوتر خود به سرور منتقل کنید.

اما اگر هدف شما انتقال ده‌ها یا صدها گیگابایت اطلاعات بین دو VPS است، بهتر است از روش مستقیم بین سرورها استفاده کنید.

چرا RDP برای انتقال حجم زیاد مناسب نیست؟

این روش بیشتر برای انتقال فایل‌های کم‌حجم مناسب است. برای مثال، اگر یک فایل نصبی یا فایل تنظیمات دارید، می‌توانید آن را از کامپیوتر خود به سرور منتقل کنید.

اما اگر هدف شما انتقال ده‌ها یا صدها گیگابایت اطلاعات بین دو VPS است، بهتر است از روش مستقیم بین سرورها استفاده کنید.

چرا RDP برای انتقال حجم زیاد مناسب نیست؟

در RDP مسیر انتقال اطلاعات از طریق جلسه Remote Desktop مدیریت می‌شود و در بسیاری از سناریوها شما عملاً فایل را ابتدا از سرور به سیستم خود و سپس به سرور دیگر منتقل می‌کنید.

این کار می‌تواند:

  • زمان انتقال را افزایش دهد.
  • پهنای باند اینترنت سیستم شخصی شما را مصرف کند.
  • در صورت قطع شدن ارتباط، مدیریت انتقال را دشوارتر کند.

به همین دلیل، برای انتقال مستقیم اطلاعات بین دو VPS بهتر است از روش‌هایی مانند Robocopy یا SFTP استفاده شود.

مقایسه روش‌های انتقال اطلاعات بین دو سرور مجازی ویندوز

روش
مناسب برای
نیاز به رابط گرافیکی
مناسب برای حجم زیاد
Robocopy + SMB
انتقال حجم زیاد فایل
خیر
بله
WinSCP + SFTP
انتقال ساده و مدیریت گرافیکی
بله
تا حد زیادی
RDP
فایل‌های کم‌حجم و مدیریت سرور
بله
معمولاً خیر

اگر هر دو سرور ویندوز هستند و ارتباط شبکه‌ای مناسبی بین آن‌ها دارید، Robocopy یکی از گزینه‌های کاربردی برای انتقال تعداد زیادی فایل و داده است. اگر استفاده از محیط گرافیکی برایتان راحت‌تر است، WinSCP می‌تواند گزینه مناسبی باشد.

بدون دیدگاه

دیدگاهتان را بنویسید

هاستvpsسرور اختصاصی