نمایش نتایج: از شماره 1 تا 9 , از مجموع 9

موضوع: انتقال اطلاعات بین دو سرور لینوکس

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    عضو جدید
    تاریخ عضویت
    Feb 2016
    محل سکونت
    تهران
    نوشته ها
    24
    تشکر تشکر کرده 
    0
    تشکر تشکر شده 
    8
    تشکر شده در
    7 پست

    پیش فرض انتقال اطلاعات بین دو سرور لینوکس

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

    1- استفاده از دستور rsync :

    یکی ازکاربردهای این دستور به جهت کپی برداری و یا بک آپ گیری فایل و فلدرها در مسیری درسیستم لوکال و یا یک سیستم ریموت (با سیستم عامل لینوکس یا یونیکس) استفاده میشود. امنیت، سرعت بالا، مصرف پهنای باند کم و عدم نیاز به هیچگونه پیش نیازی (درسرور مبداء و یا مقصد) از جمله قابلیت های این دستور می باشند.هدف از توضیح این دستور در اینجااعلام نحوه استفاده از آن به جهت انتقال داده ها از یک سرور به سروری جدید میباشد. در این سناریو سرور لینوکس قبلی را لوکال (local) و سرور جدید را ریموت (remote) در نظر می گیریم.

    در ابتدا به سرور لوکال از طریق کاربری روت ssh بزنید و در آن کامند rsync را اجرا نمایید.

    شکل کلی و مناسب برای عملیات انتقال صحیح و با کمترین حجم ممکن این دستور به صورت ذیل اعلام می گردد :
    (توجه داشته باشید که امکان استفاده از سوئیچ های دیگری به جزء مواردی که در نمونه ذیل اعلام شده نیز وجود دارد)

    rsync -avz -e "ssh -p <port-number>" </local-path> root@<server-name>:/<remote-folder>
    توضیح جزئیات دستور :

    سوئیچ a کارهای ذیل را انجام می دهد :

    - رعایت کپی بصورت تو در تو
    - حفظ لینک ها (Symbolic Link )
    - حفظ پرمیشن (Permission)
    - عدم تغییر زمان فایل مقصد با فایل اولیه
    - حفظ مشخصات مالکیت ( owner ، group)

    سوئچ v به جهت نمایش شرح عملیات در هنگام اجرا می باشد.
    سوئیچ z فشرده سازی را فعال می سازد (از این طریق پهنای باند کم تری مصرف می گردد)
    سوئیچ e به جهت استفاده از SSH برای انتقال داده ها استفاده می شود.

    نکته : در صورتیکه پورت SSH سرور ریموت، پورت پیش فرض SSH (یعنی 22) است می توانید به جای عبارت "ssh -p <port-number>" تنها عبارت ssh را وارد نمایید.

    به جای عبارت <port-number> باید پورت SSH مرتبط با سرور مقصد را وارد نمایید.
    به جای عبارت </local-path> باید مسیر فایل یا فلدر موجود در سرور لوکال را وارد نمایید.
    به جای عبارت <server-name> آی پی یا نام سرور ریموت را وارد نمایید.
    به جای عبارت <remote-folder> مسیری که می خواهید فایل یا فلدر مربوطه در سرور ریموت قرار گیرد را وارد نمایید.

    نکته : برای مشاهده درصد پیشرفت فرآیند کپی برداری می توانید از سوئیچ progress قبل از عبارت –e استفاده نمایید. که شکل کلی دستور با این سوئیچ به صورت ذیل می باشد :
    rsync -avz -progress -e "ssh -p <port-number>" </local-path> root@<server-name>:/<remote-folder>

    بعداز وارد نمودن دستور سفارشی شده rsync (با توجه به اطلاعات مورد نظر خود) رمز عبور سرور ریموت از شما خواسته می شود لذا به جهت شروع اجرای عملیات انتقال رمز عبور کاربری روت مرتبط با سرور ریموت را وارد نمایید.

    به جهت آگاهی هرچه بیشتر شما یک نمونه از دستور rsync سفارشی شده به شرح ذیل ارائه می گردد :

    rsync -avz -e "ssh -p 2233" /mnt/data/admin root@192.168.1.1:/mnt/newfolder/repository/

    2- استفاده از دستور scp

    از این دستور برای انتقال فایل یا فلدر از سرور لوکال (سرور مبداء) به سرور ریموت (مقصد) با استفاده از پروتکل ssh استفاده می شود.در این سناریو سرور لینوکس قبلی را لوکال (local) و سرور جدید را ریموت (remote) در نظر می گیریم.

    شکل کلی و مناسب برای عملیات انتقال صحیح و با کمترین حجم ممکن این دستور به صورت ذیل اعلام می گردد :
    (توجه داشته باشید که امکان استفاده از سوئیچ های دیگری به جزء مواردی که در نمونه ذیل اعلام شده نیز وجود دارد)

    scp -Cpv -P <ssh-port-number> </local-path> <user>@<remote-server>:<remote-folder>

    توضیح جزئیات دستور :

    سوئیچ C برای فعالسازی عملیات فشرده سازی استفاده می شود. (دقت داشته باشید که از حرف بزرگ استفاده شده است)
    سوئیچ p به جهت نمایش زمان اصلاح، دسترسی، سرعت ارتباط و همچنین درصد پییشرفت عملیات می باشد.
    سوئیچ v برای نمایش اطلاعات انتقال در صفحه استفاده می شود.
    سوئیچ P به جهت مشخص کردن پورت سفارشی ssh استفاده می شود. در صورتیکه در سرور ریموت از پورت پیش فرض ssh، یعنی 22، استفاده شده است نیازی به استفاده از این سوئیچ نیست. (دقت داشته باشید که از حرف بزرگ استفاده شده است)
    به جای عبارت <port-number> باید پورت SSH مرتبط با سرور مقصد را وارد نمایید.
    به جای عبارت </local-path> باید مسیر فایل یا فلدر موجود در سرور لوکال را وارد نمایید.
    به جای عبارت <user> نام کاربری که برای برقراری ارتباط ssh با سرور ریموت استفاده می نمایید را وارد نمایید.
    به جای عبارت <server-name> آی پی یا نام سرور ریموت را وارد نمایید.
    به جای عبارت <remote-folder> مسیری که می خواهید فایل یا فلدر مربوطه در سرور ریموت قرار گیرد را وارد نمایید.

    بعداز وارد نمودن دستور سفارشی شده scp (با توجه به اطلاعات مورد نظر خود) رمز عبور سرور ریموت از شما خواسته می شود لذا به جهت شروع اجرای عملیات انتقال رمز عبور کاربری روت مرتبط با سرور ریموت را وارد نمایید.

    به جهت آگاهی هرچه بیشتر شما یک نمونه از دستور scp سفارشی شده به شرح ذیل ارائه می گردد :
    scp -Cpv -P 2233 /mnt/data/admin root@192.168.1.1:/mnt/newfolder/repository/

    و ...

    برای مشاهده کامل این مقاله و امکان کپی برداری از دستورات ذکر شده می توانید به منبع اصلی آن در سایت پارس نافع به لینک ذیل مراجعه نمایید :

    ویرایش توسط h.rezazadeh : June 18th, 2016 در ساعت 15:44

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •