الويب العربي

الويب العربي (http://www.arabwebtalk.com/index.php)
-   خلاصة قسم إدارة و تشغيل السيرفرات (http://www.arabwebtalk.com/forumdisplay.php?f=134)
-   -   سكربت عمل باك اب لمواقع السيرفر ووضع ملف الباك اب داخل المجلد الرئيسي لكل موقع (http://www.arabwebtalk.com/showthread.php?t=140334)

GulfHosted.com 18-06-2010 08:58 PM

سكربت عمل باك اب لمواقع السيرفر ووضع ملف الباك اب داخل المجلد الرئيسي لكل موقع
 
السلام عليكم ورحمة الله وبركاته .

طبعاً مواضيع طويلة وكلامها كتييير :D ، الموضوع دا زي اكتر مواضيعي ، طويييل و كتيييير ، بس هو بسيط جداً جداً جداً .

السكربت اهداء الى الاخ العزيز والصديق د / محمد حافظ ، والى صديقى العزيز / محمد كمال ، وطبعاً عيد ميلاده اللى كان يوم 15/06 ، كل سنة وانت طيب يا محمد ، وعيد ميلاد محمد كمال يا جماعة يوم 15/06 :D ، ووطبعاً اهداء الى جميع الاعضاء والزوار الكرام .

ندخل فى موضوعنا :)

يوجد البعض من اصحاب الاستضافات يقوم بالغاء خاصية الباك اب من داخل السي بانل ، حتى لا يقوم العميل مراراً وتكراراً بعمل باك اب لموقعه بصفة مستمرة ومن الممكن أن يكون الموقع مساحته كبيره مما يؤدي الى عمل ضغط على السيرفر .

وأيضاً لآمان العميل فى حقه فى نسخة باك اب صحيحة وبدون مشاكل لموقعه يقوم صاحب الاستضافة بالغاء هذه الخاصية ، واذا اراد العميل نسخة باك اب من موقعه فى اي وقت ليقوم بتحميلها على جهازه ، فيقوم بطلب ذلك من صاحب الاستضافة ويقوم بعمل الباك اب للعميل واعطائه الرابط الخاص به ليقوم بتحميله ، حيث يضمن له سلامة هذه النسخة وخلوها من أي مشاكل قد تنتج عن اخذ الباك اب من داخل السي بانل أو عدم اكتماله .

اليوم قمت بعمل سكربت يقوم بعمل باك اب للمواقع الموجودة على السيرفر ويقوم بوضعها داخل مجلد www أو عامة ً داخل ملفات موقع العميل ، ليقوم العميل بتحميل الباك اب الخاص بموقعه على جهازه ، كما أن السكربت يمكنك تشغيله من خلال الكرون جوب ليعمل بطريقة تلقائية دون تدخل منك ، اسبوعياً ، شهرياً ، أو كما تريد ، يوم معين من الاسبوع أو يومين فى الاسبوع ، لك حرية الاختيار .

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

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

و كما أن السكربت يقوم بعمل ذلك ، فإنه أيضاً يقوم بالكتابة فوق الملف القديم للباك اب ، أي أنه يقوم باستبداله بالملف الجديد ، أيضاً دون أي تدخل منك .

وأيضاً تقدر تعمل الموضوع دا لمواقع معينة عندك على السيرفر او عملاء معينين هم من يقومون بطلب ذلك وليس لكل العملاء اذا اردت ذلك .

بداية لتشغيل السكربت على سيرفرك ستقوم بعمل ملف لتشغيل السكربت ، وحبيت أن أضع الاوامر التي يقوم السكربت بتنفيذها ، أفضل من أقوم بوضع ملف جاهز تقوم بسحبه على سيرفرك .

أيضاً بعد انتهاء السكربت من عمله يقوم بارسال رسالة الي بريد مدير السيرفر لتخبره أن عملية الباك اب انتهت وتم نقل الملفات داخل المواقع .

طبعاً طريقة عمل السكربت مجرد فكره وحبيت تنفيذها لمن يريدها :) .

لتقوم بتشغيل السكربت على سيرفرك تقوم بسحب الملف الخاص بالتشغيل والذي يتكون من خمس اختيارات تم شرحهم بالاسفل (أولاً - ثانياً - ثالثاً - رابعاً - خامساً) .

طبعاً كنت هعملها انك تسحب كل ملف سكربت لوحده يدوي بـ wget ، لكن محمد كمال أشار أنها لو اتعملت اختيارات 1 و 2 و 3 وهكذا يكون احسن ، وطبعاً عيد ميلاده بقى ومنقدرش نزعله :) .


الان ستقوم بتسجيل الدخول الى سيرفرك من خلال الشل وتقوم بتنفيذ الامر التالي لسحب الملف الخاص بتشغيل السكربت :

كود:

wget http://www.gulfhosted.net/srv/getbackup.sh && chmod 755 getbackup.sh
بعد ذلك تقوم بتشغيل الملف من خلال تنفيذ الامر التالي :

كود:

sh /root/getbackup.sh
سيعرض لك خمس اختيارات وهم :

كود:

[1]- Make Backup & Put It In Public_html For Easy Download
[2]- Make Backup & Put It In User Directory Only
[3]- Transfer User Backup From Internal Backup To Public_html
[4]- Transfer User Backup From Internal Backup To User Directory Only
[5]- Use Script To Backup Special Users



كل اختيار من الاختيارات السابقة يقوم بعمل سحب لملف تشغيل سكربت خاص بالاختيار نفسه ، وشرح كل سكربت من الـ 5 سكربتات موجود بالاسفل .

تأتي لك الـ 5 اختيارات السابقة وبعدها رسالة تطلب منك ادخال رقم الاختيار الذي تريده :

كود:

Enter your Choise : [ 1 - 2 - 3 - 4 -5 ] :
بعد اختيارك للسكربت الذي تريد تشغيله عن طريق ادخال الرقم الخاص به سواء (1 أو 2 أو 3 أو 4 أو 5 ) ، سيقوم السكربت السابق بعمل سحب لملف تشغيل السكربت الذي اخترته ثم يقوم بالخروج ، ليأتي بعد ذلك دورك فى تشغيل السكربت الذي اخترته يدوياً أو تشغيله من خلال الكرون جوب ليعمل بشكل تلقائي كل وقت معين أنت تحدده .

شرح ما يقوم بعمله كل سكربت من الـ 5 سكربتات (كل اختيار من الـ 5 اختيارات السابقة هو سكربت) .

أولاً : تشغيل السكربت ليقوم بأخذ باك اب لجميع مواقع السيرفر ووضع كل باك اب لموقع داخل ملفات الموقع ، والسماح لصاحب الموقع بتحميل الباك اب من خلال المتصفح أو من خلال برنامج تحميل أو من خلال الاف تي بي .


اذا اردت تشغيل السكربت يدوياً ، فقط تقوم بتنفيذ الامر التالي :

كود:

sh /root/backup1.sh
أما اذا اردت تشغيله بشكل تلقائي وليكن مثلاً يوم الجمعة من كل اسبوع الساعة الثالثه صباحاً ، فتقوم بوضع التالي فى الملف الخاص بالكرون جوب على سيرفرك .

قم بفتح الكرون جوب من خلال تنفيذ الامر التالي :

كود:

crontab -e
فى اخر الملف ضع الكود التالي ثم قم بالحفط من خلال ctrl +x ثم y ثم enter :

كود:

0 3 * * 5 sh /root/backup1.sh
حيث 3 هي الساعه الثالثه صباحاً ويمكنك تغييرها كما تريد .
و 5 هو يوم الجمعة ، وأيضاً يمكنك التغيير لاي يوم تريده .

وبذلك سيتم تشغيل السكربت تلقائياً كل يوم جمعه الساعه الثالثه صباحاً ، وسيقوم بعمل باك اب لكل المواقع على السيرفر ، وسيقوم باعطاء الموقع التصريح المناسب على الملف الخاص بالباك اب كملف من ملفات موقعه ليسمح لصاحب الموقع بتحميل الملف ، وسيقوم بنقل ملف الباك اب داخل مجلد www الخاص بالموقع ، وسيتم ذلك كل يوم جمعه الساعه الثالثه صباحاً دون أي تدخل منك ، وأيضاً سيقوم السكربت باستبدال ملف الباك اب القديم بالملف الجديد الذي يتم عمله كل اسبوع .

طيب كدا تمام ، لكن الطريقة اللى فاتت دي أو أوامر السكربت اللى فاتت دي ، هتضع الملف الخاص بالباك اب داخل مجلد www الخاص بالموقع ، ومع الملف تصريح تحميل والحياة جميله :) ، يعني لو حد غير صاحب الموقع عارف اسم يوزر الموقع وعارف ان فيه باك اب على الموقع دا بالطريقة دي ، هيقدر بكل سهوله انه يحمل ملف الباك اب الخاص بالموقع :D .

===========

ثانياً : فيه طريقة تانية :) ، وهي نفس السكربت لكن بدل ما هيضع ملف الباك اب داخل مجلد www ويكون الملف واخد التصريح 666 ، هيعمل لنا ملف الباك اب ويضعه داخل المسار الرئيسي للموقع نفسه خارج www ويكون الملف واخد التصريح 640 ، ويقدر صاحب الموقع يحمل الملف من خلال الاف تي بي فقط .

لهذه الطريقة ستقوم باستخدام السكربت الثاني .

اذا اردت تشغيل السكربت يدوياً ، فقط تقوم بتنفيذ الامر التالي :

كود:

sh /root/backup2.sh

أما اذا اردت تشغيله بشكل تلقائي وليكن مثلاً يوم الجمعة من كل اسبوع الساعة الثالثه صباحاً ، فتقوم بوضع التالي فى الملف الخاص بالكرون جوب على سيرفرك .

قم بفتح الكرون جوب من خلال تنفيذ الامر التالي :

كود:

crontab -e

فى اخر الملف ضع الكود التالي ثم قم بالحفط من خلال ctrl +x ثم y ثم enter :

كود:

0 3 *  * 5 sh /root/backup2.sh

حيث 3 هي الساعه الثالثه صباحاً ويمكنك تغييرها كما تريد .
و 5 هو يوم الجمعة ، وأيضاً يمكنك التغيير لاي يوم تريده .

وبذلك سيتم تشغيل السكربت تلقائياً كل يوم جمعه الساعه الثالثه صباحاً ، وسيقوم بعمل باك اب لكل المواقع على السيرفر ، وسيقوم باعطاء الموقع التصريح المناسب على الملف الخاص بالباك اب كملف من ملفات موقعه ليسمح لصاحب الموقع بتحميل الملف من خلال الاف تي بي ، وسيقوم بنقل ملف الباك اب داخل المسار الرئيسي الخاص بالموقع خارج مجلد www ، وسيتم ذلك كل يوم جمعه الساعه الثالثه صباحاً دون أي تدخل منك ، وأيضاً سيقوم السكربت باستبدال ملف الباك اب القديم بالملف الجديد الذي يتم عمله كل اسبوع .

===========

ثالثاً : وظيفة السكربت الاخرى وهي نقل ملف الباك اب الخاص بكل موقع من داخل مجلد الباك اب الداخلى على السيرفر الى المجلد أو المسار الخاص بالموقع على السيرفر ، ليظهر ملف الباك اب لصاحب الموقع ضمن ملفات موقعه ، وفى هذه الحالة نستخدم السكربت الثالث .


اذا اردت تشغيل السكربت يدوياً ، فقط تقوم بتنفيذ الامر التالي :

كود:

sh /root/backup3.sh

أما اذا اردت تشغيله بشكل تلقائي وليكن مثلاً يوم الجمعة من كل اسبوع الساعة الثالثه صباحاً ، فتقوم بوضع التالي فى الملف الخاص بالكرون جوب على سيرفرك .

قم بفتح الكرون جوب من خلال تنفيذ الامر التالي :

كود:

crontab -e

فى اخر الملف ضع الكود التالي ثم قم بالحفط من خلال ctrl +x ثم y ثم enter :

كود:

0 3 * * 5 sh /root/backup3.sh

حيث 3 هي الساعه الثالثه صباحاً ويمكنك تغييرها كما تريد .
و 5 هو يوم الجمعة ، وأيضاً يمكنك التغيير لاي يوم تريده .

وبذلك سيتم تشغيل السكربت تلقائياً كل يوم جمعه الساعه الثالثه صباحاً ، وسيقوم بنقل ملف الباك اب الخاص بكل موقع من مجلد الباك اب اليومي الى المسار الخاص بالموقع داخل مجلد www، وسيقوم باعطاء الموقع التصريح المناسب على الملف الخاص بالباك اب كملف من ملفات موقعه ليسمح لصاحب الموقع بتحميل الملف ،وسيتم ذلك كل يوم جمعه الساعه الثالثه صباحاً دون أي تدخل منك ، وأيضاً سيقوم السكربت باستبدال ملف الباك اب القديم بالملف الجديد الذي يتم نقله كل اسبوع .

==============

رابعاً : وليس أخيراً ، أيضاً يمكنك استخدام السكربت التالي ليقوم بنقل ملف الباك اب من داخل مجلد الباك اب اليومي على سيرفرك الى المسار الرئيسي الخاص بالموقع خارج مجلد www .

اذا اردت تشغيل السكربت يدوياً ، فقط تقوم بتنفيذ الامر التالي :

كود:

sh /root/backup4.sh

أما اذا اردت تشغيله بشكل تلقائي وليكن مثلاً يوم الجمعة من كل اسبوع الساعة الثالثه صباحاً ، فتقوم بوضع التالي فى الملف الخاص بالكرون جوب على سيرفرك .

قم بفتح الكرون جوب من خلال تنفيذ الامر التالي :

كود:

crontab -e

فى اخر الملف ضع الكود التالي ثم قم بالحفط من خلال ctrl +x ثم y ثم enter :

كود:

0 3 * * 5 sh /root/backup4.sh

حيث 3 هي الساعه الثالثه صباحاً ويمكنك تغييرها كما تريد .
و 5 هو يوم الجمعة ، وأيضاً يمكنك التغيير لاي يوم تريده .

وبذلك سيتم تشغيل السكربت تلقائياً كل يوم جمعه الساعه الثالثه صباحاً ، وسيقوم بنقل ملف الباك اب الخاص بكل موقع من مجلد الباك اب اليومي الى المسار الرئيسي الخاص بالموقع خارج مجلد www، وسيقوم باعطاء الموقع التصريح المناسب على الملف الخاص بالباك اب كملف من ملفات موقعه ليسمح لصاحب الموقع بتحميل الملف من خلال الاف تي بي ،وسيتم ذلك كل يوم جمعه الساعه الثالثه صباحاً دون أي تدخل منك ، وأيضاً سيقوم السكربت باستبدال ملف الباك اب القديم بالملف الجديد الذي يتم نقله كل اسبوع .

================

خامساً وأيضاً ليس أخيراً :D:D : وهو تشغيل السكربت ليقوم بعمل باك اب لمواقع معينه أنت من تحددها له داخل ملف ، ويقوم السكربت بعمل باك اب لهذه المواقع ونقل ملف الباك اب الخاص بكل موقع داخل المسار الخاص به .

وهو الاختيار رقم 5 ، فهذا السكربت يعرض لك جميع اليوزرات الخاصة بالمواقع المستضافة على سيرفرك ، ويقوم بسؤالك عن اليوزر الذي تريد عمل باك اب له :

كود:

Please Enter The Site User You Want To Do BackUp For It :
The First Site User :

تقوم بكتابة اسم اليوزر الذي تريد اضافته ثم تضغط انتر ، ثم سيسألك اذا كنت تريد أن تضيف يوزر آخر أيضاً ليتم عمل باك اب له أم لا :

كود:

Please type ( y ) if you want to Add Another , or type ( n ) to exit :
اذا كنت تريد اضافة يوزر أيضاً ليتم عمل باك اب له تقوم بادخال y ثم تضغط انتر ، وبعدها سيسألك عن اسم اليوزر :

كود:

Thanks For Continue , You will enter the next user
Please Enter The Other Site User You Want To Do BackUp For It
The Second Site User :

تقوم بكتابة اليوزر ثم تضغط انتر ، وبعدها سوف تظهر لك الرسالة السابقة ، ليسألك السكربت اذا كنت تريد الاستمرار وتضيف يوزر اخر أم لا :

كود:

Please type ( y ) if you want to Add Another , or type ( n ) to exit :
وتظل هكذا حتى اذا اردت ان تضيف حتى 20 يوزر ، أما فى حين أنك تكتفي باليوزرات التي ادخلتها ، فتقوم بكتابة n عند ظهور الرسالة السابقة ، ثم تضغط انتر .

وبهذا فإنك قمت بإضافة يوزرات المواقع التي تريد السكربت أن يقوم بعمل باك اب لها ويقوم بدوره وينقل الملف الخاص بالباك اب لكل موقع داخل مجلد www الخاص بالموقع .


اذا اردت تشغيل السكربت يدوياً ، فقط تقوم بتنفيذ الامر التالي :

كود:

sh /root/backup5.sh

أما اذا اردت تشغيله بشكل تلقائي وليكن مثلاً يوم الجمعة من كل اسبوع الساعة الثالثه صباحاً ، فتقوم بوضع التالي فى الملف الخاص بالكرون جوب على سيرفرك .

قم بفتح الكرون جوب من خلال تنفيذ الامر التالي :

كود:

crontab -e

فى اخر الملف ضع الكود التالي ثم قم بالحفط من خلال ctrl +x ثم y ثم enter :

كود:

0 3 * * 5 sh /root/backup5.sh

حيث 3 هي الساعه الثالثه صباحاً ويمكنك تغييرها كما تريد .
و 5 هو يوم الجمعة ، وأيضاً يمكنك التغيير لاي يوم تريده .

وبذلك سيتم تشغيل السكربت تلقائياً كل يوم جمعه الساعه الثالثه صباحاً ، وسيقوم بعمل باك اب للمواقع التي قمت بادخال اليوزرات الخاصة بها كما هو موضح بالأعلى ، وسيقوم باعطاء الموقع التصريح المناسب على الملف الخاص بالباك اب كملف من ملفاته ليسمح لصاحب الموقع بتحميل الملف ، وسيقوم بنقل ملف الباك اب داخل مجلد www الخاص بالموقع ، وسيتم ذلك كل يوم جمعه الساعه الثالثه صباحاً دون أي تدخل منك ، وأيضاً سيقوم السكربت باستبدال ملف الباك اب القديم بالملف الجديد الذي يتم عمله كل اسبوع .


طبعاً خامساً فعلاً ليست أخيراً ، ولكن كي لا أطيل عليكم يمكنك التعديل (لكن مع حفظ الحقوق طبعاً) على طريقة عمل السكربت الذي سيقوم بعمل الباك اب لمواقع معينة انت تقوم باختيارها ، سواء بعمل الباك اب ونقله خارج مجلد الموقع www ، أو بنقل ملف الباك اب من مجلد الباك اب الداخلي الى مجلد الموقع www أو خارجه ، كما تريد :) .

تحياتي للجميع .. وأعتذر لطول الموضوع .. وأتمنى تكون الفكره جيدة الى حد ما .

وأي فكره أو نقاش أو استفسار أرحب به .

سامح الشورى .

سلام عليكم .

mr.7abeb 03-07-2010 08:12 PM

مشكووووووووووور ياغالى

elwhed 31-07-2010 02:33 PM

مشكوووووووووووووووووووور وبارك الله فيك

Maxmiz 03-05-2011 02:19 AM

شكرا شرح ممتاز


جميع الأوقات بتوقيت مكة المكرمة. الساعة الآن » 10:29 PM.

Powered by vBulletin
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © ArabWebTalk.Com 2004-2012