السلام عليكم ..
حياكم الله جميعا ..
كثيرا ما نسمع عن توقف السيرفر فجأه وارتفاع ال Load وبعد الريستارت للسيرفر تجد انه لم يعد بإمكانه الإقلاع .. وتجد بأن الملفات التي عليه قد ذهبت ولن تستطيع استرجاعها ..
هذا الأمر يحدث كثيرا وربما سمعنا عن قصص فقدان مواقع لعدم وجود باك اب خارجي للسيرفر ..
لذلك من اهم الامور لمدير السيرفر هو الفحص الدوري للقرص الصلب والتاكد من سلامته فعلا ...
درسنا لهذا اليوم يعتمد على اداه SMART Monitoring Tools
هذه الأداه موجوده في Centos تلقائيا .. وان لم تكن موجوده لديك .. يمكنك تنصيبها بسهوله
كود PHP:
yum install smartmontools
يمكنك عرض معلومات القرص الخاص بك بكل سهولة من خلال الامر التالي
كود PHP:
smartctl -a /dev/sda
لاحظ اني اعتبرت ان القرص الصلب لديك هو من نوع sata وكذلك هو الأول في السيرفر
لو كان لديك قرصين من نوع sata
سيكون الثاني هو sdb
اما لو كان الهارد لديك IDE فسيكو /dev/hda او dev/hdb
ــــــــــــــــــــــــ
في الأمر السابق سيعرض كل شيء تقريبا عن الهارد .. وسيعرض ايضا نتائج الفحوصات التي قمت بعملها مسبقا .. ولكنك ستجد انه لايوجد اي فحص ولا يوجد اي أخطاء ..
إذا كيف نقوم بالفحص ؟؟؟
هناك نوعين من الفحوصات في هذه الأداه ..
الأول ال short وهو قصير جدا دقيقه واحده او دقيقتين فقط .. فحص سريع يعني ..
ويتم هذا الفحص من خلال الامر
كود PHP:
smartctl -t short /dev/sda
او نفس الشيء
كود PHP:
smartctl --test=short /dev/sda
النوع الآخر وهو الموسع .. وياخذ وقت طويل جدا حسب حجم الهارد ديسك ..
من ساعتين وأكثر ..
تقريبا هارد 1 تيرا ياخذ 4 ساعات في الفحص ..
امر الفحص
كود PHP:
smartctl -t long /dev/sda
او
كود PHP:
smartctl --test=long /dev/sda
اذا اردت الغاء الفحص على قرص معين او سبب ضغط او شيء من هذا القبيل
يمكن لك الغاء الفحص من خلال الأمر التالي
كود PHP:
smartctl -X /dev/sda
لعرض نتيجه الفحوصات التي قمت بها ومشاهده الأخطاء
كود PHP:
smartctl -a /dev/sda
وسيكون كالتالي
كود PHP:
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Self-test routine in progress 10% 2918 -
بعد الإنتهاء اذا لم يكن هناك اخطاء
كود PHP:
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed without error 00% 2918
لعرض ال Log لعمليات الفحص
كود PHP:
smartctl -l selftest /dev/sda
لعرض ال Log للأخطاء
كود PHP:
smartctl -l error /dev/sda
اخيرا ..
ويحتوي على كل الأوامر التي ذكرتها في الشرح والمزيد .. وشرحها ايضا .. وهو المرجع في كتابه الموضوع ..
بالتوفيق للجميع
دعواتكم
سلام عليكم