شبكة ومنتديات خط الطيران  -  نسخة خفيفة من المنتدى


(يمكن لكم التسجيل مباشرة في المنتدى للمشاركة والتعقيب على الموضوعات المطروحة)


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


AboAbdulla
18-04-2010, 10:31 AM
أمر wget هو أمر مشهور جداً لبساطته وأيضاً للميزات التي يوفرها. wget يعمل على نظامي ويندوز ولينكس
إحدى الميزات المتقدمة ل wget هي القدرة على نسخة من موقع ما وحفظه على حاسب المستخدم. لعمل ذلك نحتاج الأمر التالي

wget -m http://www.domainname.com/yourfilename.tar.gz


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

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

chmod 755 yourfilename.tar.gz

wget -N http://SERVERIP/yourfilename.tar.gz

اذا كنت تقوم بتنزيل ملف حجمه كبير وانقطع الاتصال (http://www.flyingway.com)فجأة أو توقف لسبب ما تستطيع اكمال التزيل باستخدام الخاصية c كما في الأمر التالي

wget -c http://www.domainname.com/yourfilename.tar.gz

تنزيل الملفات الكبيرة قد يستهلك bandwidth للموقع المستهدف وبسرعة وقد يؤدي ذلك إلى أن يقوم الموقع برفض تقديم الخدمة إليك لتلافي ذلك نقوم بعمل توقف لفترة زمنية بأستخدام الخاصية w ونضع التوقيت مثلا مثلاُ 20 ثانية بين كل طلب

باستخدام الأمر التالي:
wget -w 20 http://www.domainname.com/

تقسيم الملفات الكبيرة
إذا كان الملف المراد نقله أكبر من 2GB فالافضل تقسيمة بالصيغة التالية:

split --bytes=1500000000 yourfilename.tar.gz yourfilename.tar.gz.

مع ملاحظة وضع (.) في نهاية سطر الأمر
من خلال الأمر السابق - سوف يتم تقسيم (http://www.flyingway.com/vb/forumdisplay.php?f=5) الملف إلى عدة ملفات ، كل ملف يكون حجمة ~ 1.5 GB وسوف تكون نهاية كل ملف (.aa .ab .ac .ad .ae )

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

cat *.tar.gz.* > yourfilename.tar.gz

توضيحات أكثر (http://www.flyingway.com/vb/forumdisplay.php?f=5)عن هذا الأمر

http://en.wikipedia.org/wiki/Wget
http://www.gnu.org/software/wget/manual/wget.html


أما الطريقة الأخرى لسحب الملفات الكبيرة فهي:
إذا كان الملف الذي تريد نقله أكبر من 2GB ومهما كان حجمة (http://www.flyingway.com/vb/forumdisplay.php?f=5)فيمكن أستخدام دالة scp أو الدالة rsync

scp /home/filename.tar.gz username@newIPaddress:/filename.tar.gz

rsync -avz -e ssh /home/filename.tar.gz username@newipaddress:/home/filename.tar.gz

AboAbdulla
18-04-2010, 11:29 AM
أستخدام الدالة scp لتنقل ملف من سيرفر رقم 1 إلى سيرفر رقم 2
يتطلب منك أن يكون لديك الصلاحية للوصول إلى السيرفر
مثال: إرسال ملف باك اب Backup.tar.gz إلى السيرفر رقم 2 بالامر التالي:
scp Backup.tar.gz USERNAME@SERVERIP:/home

قم بتغيير التالي :
USERNAME = يوزرنيم الاكاونت الي بالسيرفر رقم 2 ، واذا كان روت اكتب root
SERVERIP = آي بي السيرفر رقم 2
/HOME = المسار الذي سوف ينزل عليه ملف الباك اب ، لو كان روت اكتب مثلا : home/ واذا كان اكاونت عادي اكتب مثلا : /public_html ..إلخ

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

rsync -avz -e ssh /home/filename.tar.gz username@newipaddress:/home/filename.tar.gz

AboAbdulla
19-12-2010, 12:58 AM
scp -r /home/new_account/ root@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 = أسم المستخدم للسيرفر المراد سحب المجلد منه