السلام عليكم .. 
حياكم الله جميعا .. 
كثيرا ما نسمع عن توقف السيرفر فجأه وارتفاع ال 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 
		
	
 
اخيرا .. 
ويحتوي على كل الأوامر التي ذكرتها في الشرح والمزيد .. وشرحها ايضا .. وهو المرجع في كتابه الموضوع .. 
بالتوفيق للجميع
دعواتكم
سلام عليكم