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

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

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

در بیشی از دستورات لینوکسی، به دلیل استفاده از ابزار های جانبی (Third-party Software) نیاز به نصب بسته یا همان پکیج ابزار می باشید اما دستور SCP یک ابزار Native در لینوکس می باشد و نیازی به نصب پیش نیاز نخواهید داشت. در ابتدا توضیحی درباره برخی از مقادیر استفاده شده در این آموزش می پردازیم تا ایده کلی برایتان باز تر شود.

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

مثال های استفاده شده در این آموزش:

SCP : دستور اصلی
mizban24.txt : فایلی که قصد انتقال آن را داریم
remote_server_username : نام کاربری سرور مقصد
remote_server_IP : آدرس IP سرور مقصد
/remote/directory/ : مسیری که در سرور مقصد قصد انتقال فایل خود را داریم

مثال دستور با استفاده از مقادیر بالا:

scp mizban24.txt remote_server_username@remote_server_IP /remote/directory/

حالا یه مثال با مقادیری که بیشتر به واقعیت در استفاده نزدیک است:

scp mizban24.txt root@192.168.1.104 /home/

دستور بالا در واقع فایل mizban24.txt رو از سرور مبدا به سرور مقصد در پوشه /home/ ذخیره می کنn. اگر این دستور را در SSH صادر کنید، سیستم از شما سوال خواهد پرسید که آیا از انتقال این فایل اطمینان دارید یا خیر که با no و yes می توانید پاسخ دهید. البته یادتون باشد که اگر دو سرور را با public SSH Key به هم متصل نکرده باشید، در هنگام اتصال از شما رمز سرور مقصد ر درخواست خواهد کرد.

Are you sure you want to continue connecting (yes/no)?

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

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

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

scp root@192.168.1.104:/home/mizban24.txt /local/directory

با دستور بالا در واقع فایل mizban24.txt را که در مسیر home قرار دارد را به از سرور مقصد به سرور مبدا در مسیر /local/directory/ انتقال خواهید داد.

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

همچنین می توانید با استفاده از دستور SCP، فایل های واقع در یک سرور ریموت را به سرور ریموت دیگری انتقال دهید. برای انجام این کار فقط کافی است با استفاده از دستور زیر فایل مورد نظر خود را منتقل کنید. البته می بایست مسیر فایلی که قصد انتقال آن را دارید را بندانید.

scp root@192.168.1.104:/home/mizban24.txt root@192.168.1.105:/home

با دستور بالا فایل mizban24.txt را از سرور با آی پی ۱۰۴ به سرور با آی پی ۱۰۵ انتقال خواهید داد.

دیگر دستورات کاربردی SCP

انتقال چندین فایل مختلف به صورت همزمان:

scp mizban24-1.txt mizban24-2.txt mizban24.zip root@192.168.1.104:/home

انتقال یک دایرکتوری کامل با اضافه کردن دستور -r به دستور اصلی:

با این دستور دایرکتوری backups واقع در دایرکتوری home را تمام و کمال به دایرکتوری سرور مبدا واقع در /home/ منتقل خواهید کرد.

scp -r /home/backups root@192.168.1.104:/home

انتقال اطلاعات با استفاده از پورت کاستوم SSH

تغییر پورت SSH یک امر رایج می باشد زیرا این پورت مدام مورد حمله قرار میگیرد. چنانچه از پورت کاستوم برای سرور خود استفاده می کنید، می توانید با اضافه کردن دستور -P به دستور اصلی، پورت کاستوم خود را مطابق با مثال زیر اضافه کنید. در مثال زیر ۱۲۳۴ در واقع پورت کاستوم سرور شما می باشد.

scp -P 1234 mizban24.txt root@192.168.1.104:/home

امیدوارم این آموزش مورد توجه شما کاربر گرامی قرار گرفته باشه.

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

قبلا حساب کاربری ایجاد کرده اید؟
گذرواژه خود را فراموش کرده اید؟
Loading...