عرض مشاركة مفردة
 
  #1  
قديم 10-02-2011, 06:30 AM
HuMaN-BiEnG HuMaN-BiEnG غير متصل
عضو
 
تاريخ التسجيل: Jun 2010
مشاركة: 46
مستوى تقييم العضوية: 0
HuMaN-BiEnG is on a distinguished road
إرسال رسالة عبر MSN إلى HuMaN-BiEnG
Thumbs up اسكربت بسيط جدا, لحذف محتويات مجلد التمب اذا زادت مساحته عن 80%

السلام عليكم ورحمة الله وبركاته,,

اخوانى الكرام,,

ﻻحظت كثيرا اشتكاء اصحاب السيرفرات والمواقع وانشغالهم بمشكلة امتلاء مجلد التمب,,

الى كل من يشتكى من مشكلة امتلاء مجلد التمب اليكم هذا الحل البسيط,,

الحل عبارة عن اسكربت باش (من برمجتى) وهو اسكربت سهل جدا جدا, وظيفته هو التشييك على مجلد التمب وحذف محتوياته اتوماتيكيا فى حالة وصل استهلاك مساحته الى ما يزيد عن 80 فى المئة وايضا يقوم بارسال رسالة الى بريدك لاخبارك بذلك وانه تم افراغ محتويات مجلد التمب,

الاسكربت يجب اضافته الى كرون السيرفر لكى يعمل بشكل دورى فى الميعاد الذى تحدده له, فى رأيى (وفى هذا الشرح) انسب ميعاد لتشغيل اﻻسكربت هو كل يوم (فى تمام الساعة 3 فجرا),

هناك حلول اخرى للقضاء على مشكلة امتلاء مجلد التمب, وهذه الطريقة البسيطة هى احدى الحلول,,

اﻻسكربت ﻻ يحتاج الى التعديل اﻻ ﻻضافة ايميلك فقط ثم تركيبه لكى يعمل بكل بساطة,

محتويات الاسكربت البسيط :

كود:
#!/bin/bash

temptest=`df -h /tmp | egrep "[0-9]%" | awk '{print $5}' | tr -d "%"`

beginpath=`pwd`


if [ "$temptest" -gt 80 ]
then
    cd /tmp
    rm -rf *
    echo "the /tmp directory space was over than %80 & it have been cleared" | mail -s "tmp cleared" youremail@domain.com
    cd $beginpath

else

    echo "the /tmp directory space is less than %80" | mail -s "tmp stat" youremail@domain.com

fi

قم فقط باستبدال youremail@domain.com الى بريدك الشخصى الذى ترغب فى ايصال التنبيه اليه,

ما يقوم به الاسكربت,

1) يفحص مساحة مجلد التمب, فاذا وجد استهلاكه اعلى من 80 فى المئة, يدخل الى المجلد ويقوم بحذف محتوياته, ثم يرسل رسالة الى بريدك يفيدك بان مساحة مجلد التمب كانت اعلى من 80 فى المئه وانه تم افراغ محتوياته

2)
يفحص مساحة مجلد التمب, فاذا وجد استهلاكه اقل من 80 فى المئة,ﻻ يقوم بعمل اى شىء سوى ارسال رسالة الى بريدك يفيدك بان مساحة مجلد التمب أقل من 80 فى المئة


كيفية تركيب اﻻسكربت ,

1) قم بفتح الملف الذى سيتم وضع فيه محتويات اﻻسكربت, هكذا

كود:
vi /bin/tmpcheck

2) تضع محتويات اﻻسكربت فى الملف الخاص به, عن طريق اتباع اﻻتى :
- تنسخ محتويات اﻻسكربت الى ملف نصى وتعدل بريدك, ثم تقوم بعمل كوبى للمحتوى
- ثم لكى تضيف محتويات اﻻسكربت فى الملف تضغط على زر
insert فى الكى بورد لديك
- ثم بداخل الملف تضغط كليك يمين حتى يتم لصق محتويات اﻻسكربت,

3) حفظ محتويات اﻻسكربت,
- تضغط على زر esc فى الكى بورد لديك
- تضغط على زر shift + حرف الكاف لكى تصنع الشكل هذا :
- تضغط وتكتب الحرف w ثم الحرف q لكى يكون فى النهاية اﻻمر بهذا الشكل
كود:
:wq
- تضغط على زر enter

4) ضبط تصاريح اﻻسكربت, بواسطة اﻵمر التالى
كود:
chmod 700 /bin/tmpcheck
5) تركيب اﻻسكربت فى الكرون,
- تقوم بفتح الكرون فى وضع التحرير بواسطة اﻻمر التالى
كود:
crontab -e
- تضيف الى الكرون السطر التالى (كأخر سطر فى الكرون)
كود:
0 3 * * * /bin/tmpcheck > /dev/null 2>&1
- هذا سيجعل اﻻسكربت يعمل كل يوم فى تمام الساعة ال 3 فجرا

6) قم بحفظ ما تم اضافته الى الكرون
- لكى تقوم بحفظ ما تم اضافته اضغط على زر ctrl + x
- ثم تضغط على حرف y
- ثم تقوم بعمل ريستارت للكرون تاب, لتفعيل التغييرات التى تمت اضافتها
كود:
/etc/init.d/crond restart
فى النهاية, اتمنى ان اكون وفقت فى الشرح وفى تقديم المساعدة البسيطة للجميع,

واى استفسار او اقتراح انا متواجد ان شاء الله,,

بالتوفيق للجميع,,

والسلام عليكم ورحمة الله وبركاته,,






التوقيع
"يا الله"
ThiS Is N0t thE EnD, it is Ju$t ThE BEGINING
human.bieng@hotmail.com