الدالة wget لسحب الملفات الكبيرة من خلال الشل SSH

تقليص
X
 
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة
  • AboAbdulla
    ابوعبدالله

    • 23 - 12 - 2004
    • 5061



    • (( قُلْ يَا عِبَادِيَ الَّذِينَ أَسْرَفُوا عَلَى أَنفُسِهِمْ لَا تَقْنَطُوا مِن رَّحْمَةِ اللَّهِ
      إِنَّ اللَّهَ يَغْفِرُ الذُّنُوبَ جَمِيعًا إِنَّهُ هُوَ الْغَفُورُ الرَّحِيمُ ))

      اللهم إني استودعتك قلبي فلا يبقى فيه إلا أنت
      واستودعتك لا إله الا الله فذكرنيها في كل وقت

    الدالة wget لسحب الملفات الكبيرة من خلال الشل SSH

    أمر wget هو أمر مشهور جداً لبساطته وأيضاً للميزات التي يوفرها. wget يعمل على نظامي ويندوز ولينكس
    إحدى الميزات المتقدمة ل wget هي القدرة على نسخة من موقع ما وحفظه على حاسب المستخدم. لعمل ذلك نحتاج الأمر التالي

    كود PHP:
    wget -m http://www.domainname.com/yourfilename.tar.gz 

    سوف لن تعمل هذه الدالة أن كان الملف أكبر من 2GB +

    يجب ان يكون تصريح الملف الذي تريد نقلة على الأقل (644)
    ويمكن أستخدام الأمر التالي لتغيير تصريح الملف:

    كود PHP:
    chmod 755 yourfilename.tar.gz 
    كود PHP:
    wget -N http://SERVERIP/yourfilename.tar.gz 
    اذا كنت تقوم بتنزيل ملف حجمه كبير وانقطع الاتصال فجأة أو توقف لسبب ما تستطيع اكمال التزيل باستخدام الخاصية c كما في الأمر التالي

    كود PHP:
    wget -c http://www.domainname.com/yourfilename.tar.gz 
    تنزيل الملفات الكبيرة قد يستهلك bandwidth للموقع المستهدف وبسرعة وقد يؤدي ذلك إلى أن يقوم الموقع برفض تقديم الخدمة إليك لتلافي ذلك نقوم بعمل توقف لفترة زمنية بأستخدام الخاصية w ونضع التوقيت مثلا مثلاُ 20 ثانية بين كل طلب

    باستخدام الأمر التالي:
    كود PHP:
    wget  -w 20 http://www.domainname.com/ 
    تقسيم الملفات الكبيرة
    إذا كان الملف المراد نقله أكبر من 2GB فالافضل تقسيمة بالصيغة التالية:

    كود PHP:
    split --bytes=1500000000 yourfilename.tar.gz yourfilename.tar.gz
    مع ملاحظة وضع (.) في نهاية سطر الأمر
    من خلال الأمر السابق - سوف يتم تقسيم الملف إلى عدة ملفات ، كل ملف يكون حجمة ~ 1.5 GB وسوف تكون نهاية كل ملف (.aa .ab .ac .ad .ae )

    عند إكتمال نقل كل الملفات المقسمة بأستخدام الأمر (wget) نأتي على تجميع تلك الملفات في ملف واحد بالأمر التالي:

    كود PHP:
    cat *.tar.gz.* > yourfilename.tar.gz 
    توضيحات أكثر عن هذا الأمر





    أما الطريقة الأخرى لسحب الملفات الكبيرة فهي:
    إذا كان الملف الذي تريد نقله أكبر من 2GB ومهما كان حجمة فيمكن أستخدام دالة scp أو الدالة rsync

    كود PHP:
    scp /home/filename.tar.gz username@newIPaddress:/filename.tar.gz 
    كود PHP:
    rsync -avz -e ssh /home/filename.tar.gz username@newipaddress:/home/filename.tar.gz 
  • AboAbdulla
    ابوعبدالله

    • 23 - 12 - 2004
    • 5061



    • (( قُلْ يَا عِبَادِيَ الَّذِينَ أَسْرَفُوا عَلَى أَنفُسِهِمْ لَا تَقْنَطُوا مِن رَّحْمَةِ اللَّهِ
      إِنَّ اللَّهَ يَغْفِرُ الذُّنُوبَ جَمِيعًا إِنَّهُ هُوَ الْغَفُورُ الرَّحِيمُ ))

      اللهم إني استودعتك قلبي فلا يبقى فيه إلا أنت
      واستودعتك لا إله الا الله فذكرنيها في كل وقت

    #2
    رد: الدالة wget لسحب الملفات الكبيرة من خلال الشل SSH


    أستخدام الدالة scp لتنقل ملف من سيرفر رقم 1 إلى سيرفر رقم 2
    يتطلب منك أن يكون لديك الصلاحية للوصول إلى السيرفر
    مثال: إرسال ملف باك اب Backup.tar.gz إلى السيرفر رقم 2 بالامر التالي:
    كود PHP:
    scp Backup.tar.gz USERNAME@SERVERIP:/home 
    قم بتغيير التالي :
    USERNAME = يوزرنيم الاكاونت الي بالسيرفر رقم 2 ، واذا كان روت اكتب root
    SERVERIP = آي بي السيرفر رقم 2
    /HOME = المسار الذي سوف ينزل عليه ملف الباك اب ، لو كان روت اكتب مثلا : home/ واذا كان اكاونت عادي اكتب مثلا : /public_html ..إلخ

    ثم اضغط Enter ، الان بيطلب منك باسورد الروت او الاكاونت الي على السيرفر رقم 2 ، واكتب الباسورد واضغط انتر مرة ثانية

    كود PHP:
    rsync -avz -e ssh /home/filename.tar.gz username@newipaddress:/home/filename.tar.gz 

    تعليق

    • AboAbdulla
      ابوعبدالله

      • 23 - 12 - 2004
      • 5061



      • (( قُلْ يَا عِبَادِيَ الَّذِينَ أَسْرَفُوا عَلَى أَنفُسِهِمْ لَا تَقْنَطُوا مِن رَّحْمَةِ اللَّهِ
        إِنَّ اللَّهَ يَغْفِرُ الذُّنُوبَ جَمِيعًا إِنَّهُ هُوَ الْغَفُورُ الرَّحِيمُ ))

        اللهم إني استودعتك قلبي فلا يبقى فيه إلا أنت
        واستودعتك لا إله الا الله فذكرنيها في كل وقت

      #3
      scp -r /path/to/copy/recursive user@host:/home/new_account/public_html/

      كود PHP:
      scp -r  /home/new_accountroot@127.0.1.1.0:/home/oldwebsite_account/directory
      الخانة الأولى
      السيرفر الجديد
      كود:
      /home/new_account/public_html/

      الخانة الثانية
      المجلد المراد سحبة من السيرفر القديم
      لابد يكون مجلد وليس ملف

      كود:
      /home/old_website_account/directory/
      directory = المجلد المطلوب سحبة مثلا public_html

      127.0.1.1.0 = رقم الأي بي الخاص بالسيرفر المراد سحب الملف منه
      root = أسم المستخدم للسيرفر المراد سحب المجلد منه

      تعليق

      يعمل...