میلاد فشی
کارشناس فناوری اطلاعات

آموزش مدیریت و مانیتورینگ دمای سخت افزار در لینوکس و ویندوز

چگونه دمای سخت افزار کامپیوتر را مدیریت کنیم؟ در اوایل فصل تابستان هستیم.بچه مدرسه ای ها تعطیل میشوند و در این گرمای تابستان میخواهند روزی چند ساعت با لپ تاپ یا PC خودشون بازی کنند.البته خود من خیلی وقته که دیگه علاقه ای به Game ندارم و سال هاست که اهل Game نیستم.ولی خوب برای احترام به کوچکترها و علاقه مندان به گیم این مطلب رو مینویسم.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

موقعی که دارید با لپ تاپ بازی می کنید ، همه قطعات درگیر میشن . پردازنده ، کارت گرافیک ، رم ، هارد ، نمایشگر ، کیبورد و تاچ پد و خلاصه همه قطعات همزمان باید کار کنن . این یعنی باتری باید تمام این قطعات رو پشتیبانی کنه . باتری لپ تاپ های معمولی ، بین 2 تا 6 سلول هستن . هر چی تعداد سلول ها بیشتر باشه ، یعنی باتری قوی تر و جون دار تره ( البته استثنا هم هست ،

یه سلول می تونه به قدرت 2 تا سلول باشه ) باتری لپ تاپ معمولی نمی تونه همزمان ، برق همه قطعات رو تامین کنه ، بخاطر همین ، موقعی که شارژر به لپ تاپ وصل نیست و شما بازی می کنید ، بازی به اصطلاح لگ Lag می زنه . یعنی بازی روان اجرا نمیشه و هی تیکه تیکه میشه و با تاخیر اجرا میشه . دلیلشم همینه که گفتم ! باتری نمی تونه برق همه قطعات رو تامین کنه . اما اگه همون لحظه شارژر رو به لپ تاپ بزنید ، بازی روون اجرا میشه .

درسته که شارژر باعث میشه بازی روون اجرا بشه اما یه مشکل هم این وسط وجود داره .وقعی که شارژر رو وصل می کنید ، باتری درگیر شارژ و دشارژ میشه و بازم بهش فشار میاد . درسته ، باتری برای شارژ و دشارژ شدن هست ، اما هر چی بیشتر در معرض شارژ و دشارژ قرار بگیره ، زودتر عمرش تموم میشه . پس بازی با لپ تاپ می تونه در طول زمان روی باتری لپ تاپ تاثیر منفی بذاره .همچنین دمای لپ تاپ خیلی بالا میره.

شما میتونید با لپ تاپ هم بازی کنید ولی باید بدونید لپ تاپ ها برای بازی ساخته نشدند.مگر سری های خاص از یک برند.مثلاً سری G از شرکت ASUS برای طرفداران Game است.اما برای اینکه خیالتون راحت باشه که فشاری به سخت افزارتون حین بازی نمیاد باید اجازه ندهید دمای سیستم خیلی بالا بره.از Coolpad استفاده کنید و برای مانیتورینگ و مدیریت دمای سخت افزار راه های سخت افزاری و نرم افزاری متفاوتی وجود دارد.

در گنو//لینوکس نرم افزاری که من دوستش دارم و به نظرم از هر Tools ویندوزی عملکرد بهتری داره نرم افزار متن باز Psensor هستش.این نرم افزار واقعاً ایده آله و به خوبی با محیط GUI گنوم و یونیتی هماهنگ و مجتمع میشه.Psensor قابلیت appindicator داره و این یعنی همیشه دما و CPU Percentage رو بر روی نوار تیره بالای صفحه یونیتی (پنل یونیتی) نشون میده و قابلیت تنظیم Alarm داره.

محیط نرم افزار psensor در یونیتی

نرم افزار Psensor میتونه سخت افزارهای زیر رو مانیتور کنه :

  • دمای CPU و مادربرد
  • دمای GPU های Nvidia
  • دمای GPU های ATI/AMD
  • دمای HDD
  • سرعت فن
  • تمام درجه های حرارت در یک گراف یکجا به ما نشان داده میشود
  • با استفاده از alarm و alert این اطمینان حاصل می شود که ما همواره حواسمان به سیستم باشد
  • و CPU Usage

برای نصب Psensor بر روی گنو/لینوکس

ابتدا شما باید بسته های lm-sensors و hddtemp رو نصب کنید.چون Psensor به این دو بسته وابسته است.به کمک این بسته ها این نرم افزار میتونه دمای سنسورهای سخت افزاری رو بخونه.هر دوی اینها در تمام repository های مربوط به distribution های معروف وجود دارند.

نصب بر روی debian

apt-get install lm-sensors hddtemp

نصب بر روی Redhat,CentOS و Fedora

yum install epel-release  yum install lm_sensors hddtemp  

وقتی که این پیش نیاز ها را نصب کردید. حالا وقت آن است که خود برنامه را نصب کنیم برای این کار در سیستم عامل های خانواده debian به صورت زیر عمل می کنیم.

 apt-get install psensor  

این نرم افزار در سیستم عامل های خانواده RedHat وجود ندارند وباید آن را compile کرد.با دستور زیر پیشنیازهای لازم جهت انجام عملیات کامپایل را نصب کنید.

 yum install gcc gtk3-devel GConf2-devel cppcheck libatasmart-devel libcurl-devel json-c-devel libmicrohttpd-devel help2man libnotify-devel libgtop2-devel make  

سپس باید یک نسخه از Psensor را دانلود کنیم و کامپایل کنیم.این دستور همزمان اقدام به بارگیری کد منبع psensor کرده و آن را کامپایل میکند.

 wget http://wpitchoune.net/psensor/files/psensor-1.1.3.tar.gz  tar zxvf psensor-1.1.3.tar.gz  cd psensor-1.1.3/  ./configure  make  make install  

اگر می خواستید که Psensor-server را هم نصب کنید دستور زیر را می زنید بدانید که این مورد اختیاری است.

 apt-get install psensor-server  

نحوه استفاده و تست Psensor :

دستور زیر را می زنیم و هر بار که سوالی می پرسد yes را می زنیم.

 sensors-detect  

سپس دستور sensors را با کاربر root می زنیم. (در اوبونتو به صورت sudo sensors)که این به ما اطلاعات دمای تمام دیوایس ها را می دهد. و بعد از منوی دسکتاپ نرم افزار را اجرا می کنیم.در پایان لازم به ذکر است که برنامه Psensor قابلیت شخصی‌سازی و تنظیمات متنوعی را در خود جای داده است که می‌توان با کمی جستجو در تنظیمات برنامه به آنها دست یافت.اگر هم قابلیتی رو نداره که شما لازم دارید.آستین ها روبالا بزنید و شروع کنید به کد نویسی.این برنامه Open Source هستش و تحت لایسنس GPLv2.

تنظیمات Psensor

ابزارهای ویندوزی برای مانیتورینگ و مدیریت دمای سخت افزار

نرم افزار SpeedFan هم همه قابلیت های نرم افزار Psensor رو داره بعلاوه امکان دسترسی به اطلاعات S.M.A.R.T هارد دیسک.منظور از SMART بررسی وضعیت سلامت هارد دیسک میباشد و به معنی Self-Monitoring, Analysis and Reporting Technology میباشد.از این تکنولوژی در هاردهای HDD و رسانه های ذخیره ساز SSD برای شناسایی خطاها و مشکلات اونها استفاده میشه.این نرم افزار قابلیت خوندن SMART هاردها رو داره.محیط نرم افزار به این شکل است :

محیط SpeedFan

بدیهی است که در این شکل منظور از GPU دمای پردازنده کارت گرافیک است و HDD دمای هارد دیسک Internal را نشان میدهد.Temp1 دمای مادربرد است و Core0 , Core1 هم دمای هسته های CPU به سانتی گراد میباشد.اگر دمای یکی از قطعات سخت افزاری شما رو به شکل TempX نشون داد و همیشه هم دمای اون خیلی بالا بود ، نگران نباشید این یک باگ و خطای نرم افزاری است.ولی همیشه سعی کنید بدونید که منظورش از Temp1 و Temp2 و ... چیه !؟ خوشبختانه در لپ تاپ من فقط یک عدد Temp داره و اون هم قطعاً دمای مادربورد هستش.

خاموش شدن خودکار سیستم با بالا رفتن دمای سخت افزار

وقتی دمای سخت افزار خیلی بالا میره ، بهترین کار خاموش کردن اون برای جلوگیری از سوختن احتمالی قطعات است.در بایوس بعضی از مادربرد ها این قابلیت وجود داره.برخی از مادربردها در قسمت Power امکانات Hardware Monitor دارند.و به کمک مقداردهی Option هایی مثل "TEMP Overheat Protection" دمای سخت افزار رو کنترل کنید.ولی شما میتونید به کمک SpeedFan هم این کار رو انجام بدهید.یکی از قابلیت های جالب نرم افزار SpeedFan اجرای Event های شرطی است.برای مثال اگر دمای GPU بزرگتر یا مساوی 90 درجه سانتیگراد شد ، سیستم را خاموش کن.برای انجام این کار دکمه Configure رو بزنید و به تب Events بروید.

وب سایت توسینسو

همانطور که در شکل بالا مشاهده میکنید ما یک Event شرطی برای برنامه تعریف کرده ایم که اگر دمای GPU بیشتر از 90 درجه سانتیگراد شد دستور shutdown.exe را با پارامترهای 20 s //f //t// اجرا کن.اگر با دستور shutdown.exe و پارامترهایش آشنا باشید.این دستور یعنی کامپیوتر رو بعد از 20 ثانیه خاموش کن و همه برنامه ها و فرآیندها رو هم بکش و هرطور شده سیستم رو خاموش کن.

پارامتر s// یعنی shutdown ، پارامتر f// یعنی با زور همه برنامه ها رو Terminate کن و اگر به صورت طبیعی برنامه ها Close نشدند و برای مثال نیاز به تایید کاربر برای خروج داشتند ، اونها رو بکش ! و t// هم به ثانیه است.برای ریستارت کردن کامپیوتر هم میتونید از دستور shutdown.exe //r //t 0 استفاده کنید و برای هایبرنت کردن از دستور shutdown.exe //h استفاده کنید.

توجه کنید منظور از allow every در تنظیمات برنامه این است که در بازه زمانی X ثانیه این دستور رو Execute یا اجرا کن و درواقع مثل یک loop عمل میکنه.مراقب باشید که Interval اون برای اجرای دستورات خیلی کم نباشه که کامپیوترتون توی loop بیفته چون هر X ثانیه اون Event رو triggered میکنه.در این قسمت به هر تعداد که دوست دارید میتونید Event شرطی اضافه کنید.در قسمت IF نام سخت افزاری رو که میخواهید کنترل کنید انتخاب کنید و بسته به سناریویی که دارید فیلدهای دیگه رو هم تکمیل میکنید.

خیلی راحت حالت های < یا => یا =< یا < رو برای شرطتون میتونید از Drop down list انتخاب کنید و تعیین کنید که اگر شرط برقرار باشه مثلاً یه فایل صوتی مثل beep رو اجرا کنه یا یک پیغام هشدار (Popup Message) رو نشون بده ، بهتره این عدد خیلی بزرگ باشه که مزاحم کارتون نشه.همون طور که در عکس میبیند ، قابلیت افزودن آدرس ایمیل برای پیغام رو هم داره ! البته با تستی که بنده انجام دادم این برنامه Popup message رو در ویندوز 10 نشون نداد !

علت هم اینه قابلیت balloon hints در ویندوز 10 فعال نیست و این برنامه هم از همین قابلیت برای نمایش Notification هاش استفاده میکنه ! در ویندوز 10 از قابلیت toasts به جای balloon notification استفاده میشه و به صورت پیشفرض این قابلیت غیرفعال شده.اما شما میتونید قابلیت جدید Toasts رو غیرفعال کنید تا دوباره روش قدیمی balloon notification رو فعال کنید.برای اینکار به gpedit.msc بروید و درپنجره Local Group Policy Editor به آدرس زیر بروید :

User Configuration > Administrative Templates > Start Menu and Taskbar > Disable showing balloon notifications as toasts

ارسال ایمیل اگر دمای سخت افزار شما سیر صعودی داشت !

قابلیت ارسال ایمیل از قابلیت Popup message هم مهمتر است.هرچند در اتاق سرورها باید از تجهیزات سخت افزاری و نرم افزاری خیلی قوی تری برای مانیتورینگ و کنترل دمای سیستم ها استفاده بشه.ولی خوب هزینه این تجهیزات خیلی بالاست و ادمین شبکه با همین ابزار رایگان میتونه خیالش راحت باشه که دمای سرورهاش رو مدیریت کنه و برای مثال اگر دمای HDD سرورش بالا رفت ، ایمیلی رو دریافت کنه . به دلیل اطلاعات مهم سرورها هم دمای هارد دیسک های سرور هم خیلی مهمه.خوشبختانه این نرم افزار از هاردهای EIDE, SATA و حتی SCSI رو شناسایی میکنه.برای تنظیم ایمیل بر روی پروفایل این نرم افزار شما باید ابتدا به قسمت Configure و تب Mail بروید. و به شکل زیر فیلدها رو پرکنید :

وب سایت توسینسو

همانطور که در شکل میبینید ، در این نرم افزار از آدرس Gmail و از پروتکل SMTP و سرور smtp.gmail.com استفاده کردیم.پروتکل SMTP سرویس جیمیل رایگان میباشد.شما برای پروتکل SMTP میتوانید از پورت های 25 و 465 و 587 استفاده کنید.پورت‌های ۲۵ و ۴۶۵ از رمزگذاری SSL و پورت ۵۸۷ از TLS استفاده می‌کنند و باید به توجه به پورت، یکی از حالت‌های SSL یا TLS استفاده شود.با تستی که انجام دادم متوجه شدم این نرم افزار فقط با پورت 587 کار میکند.

به همین دلیل از پورت 587 استفاده کردیم و گزینه Use StartTLS را تیک زدیم.بعد برای تست Send Test Mail رو بزنید.باید توجه کنید که بعد از تست ، با پیغام خطا مواجه میشوید.با بررسی که انجام دادم متوجه شدم که درخواست Sign-in رو گوگل بلوکه میکنه .علت اینه که نرم افزار SpeedFan از modern security standards استفاده نمیکنه.

شرکت گوگل به خاطر امنیت بیشتر Account شما تلاش برای sign-in کردن از طریق نرم افزارهای قدیمی رو Block میکنه! SpeedFan هم از استانداردهای امنیتی مدرن استفاده نمیکند.نرم افزارهایی مثل Mail app ها رو گوشی های iPhone ورژن پایین تر از 6 و برخی از Desktop Mail Client ها مثل Microsoft Outlook و Mozilla Thunderbird هم در این دسته هستند!!!

البته شما میتونید با رفتن به قسمت My Account و گزینه Sign-in & security رو انتخاب نمایید و تیک Allow less secure apps رو ON کنید.هرچند گوگل به خاطر امنیت ایمیلتون توصیه به این کار نمیکنه و توصیه میکنه از نرم افزار به روزتری استفاده کنید ولی خوب چاره ای نیست و نرم افزار بروزتری نداریم ! ولی خوب میتونید از ایمیل جداگانه ای برای مانیتورینگ استفاده کنید.

بعد از تنظیم پروفایل Default برای ایمیل خود که در حال حاظر فقط یک ایمیل هم میشه روی اون تنظیم کرد باید تنظیم کنید که اگر دمای هارد دیسک سرور شما بالا رفت به آدرس ایمیلی که در پروفایل Default تعریف کردید پیغام هشداری بفرستد.برای این کار به قسمت Event رفته و طبق شکل زیر آن را تنظیم کنید :

وب سایت توسینسو

برنامه نویس این نرم افزار برای ارسال ایمیل ، پارامتر اولی رو برای موضوع ایمیل شما در نظر گرفته و پارامتر دوم رو هم برای پروفایل ایمیل شما درنظر گرفته است که به صورت پیشفرض Default میباشد و ما آن را تنظیم و تست کردیم.درشکل بالا تعریف کریدم اگر دمای هارد دیسک بیشتر از 50 درجه شد هر 3600 ثانیه (یک ساعت) ایمیلی رو دریافت کنیم.خود برنامه هم موضوع ایمیل رو Database Server : HDD Temperature is high مینویسه و متن ایمیل هم به صورت خودکار توسط برنامه در اون دمای همه سنسورهای سخت افزار سیستمتون و وضعیت هارد دیسک و سرعت فن و ولتاژ رو مینویسه و میفرسته.

دماهای خطرناک و بالا برای سخت افزارهایتان را بشناسید

دمای مناسب برای هارد دیسک : شاید فکر کنید بهترین مرجع برای شناخت دمای مناسب برای هر سخت افزاری ، شرکت سازنده اون Hardware میباشد.باید بدونید به صورت مشترک دمای ایده ال برای اغلب هارد دیسک ها 25 تا 40 درجه سانتیگراد میباشد.و دمای بالای 50 درجه نیز زیاد است و زنگ خطری است برای آسیب دیدگی اطلاعات روی هارد و خرابی آن.همانطور که دمای بالا مناسب نیست ، دمای کمتر از 25 درجه خیلی پایین و سرد است و مناسب نیست.

دمای 41 تا 50 درجه سانتیگراد هم قابل قبول است.ولی هرچقدر دما از 45 درجه عبور میکند ریسک خرابی هارد هم بالا میرود.در صورتی که بعضی از شرکت های تولید کننده هارد دیسک هم به مشتری اطلاعات غلط میدهند و عنوان میکنند که هارد دیسک میتواند در دمای بین صفر درجه سانتیگراد تا 60 درجه سانتیگراد کار کند !!! در صورتی که به شما نمیگویند که در دمای پایین و یا در دمای بالا چقدر میتواند سرویس دهی کند و چه مقدار از عمرش کاسته میشود ! و آیا راندمان آن پایین نمی آید !؟ پس همیشه هم به اطلاعات شرکت های سازنده اکتفا نکنید.

دمای مناسب برای کارت گرافیک

شنیده میشه که حین گیم و کارهای سنگین گرافیکی دمای کارت گرافیک ها تا 105 درجه سانتیگراد هم میتونه افزایش داشته باشه!!! کارت گرافیک به نسبت CPU تحمل دمای بیشتری رو داره.ولی خوب بستگی به شرکت سازنده و مدل کارت گرافیک هم داره.برای مثال کارت گرافیک لپ تاپ من geforce GT520 هستش.از نظر تئوری حداکثر دمای 102 درجه سانتیگراد رو تحمل میکنه.ولی خوب اگر میخواهید کارت گرافیک لپ تاپ شما دچار مشکل نشود ، بهتر است هرگز اجازه ندهید دمای اون بیشتر از 80 درجه بشود.و تا دمای 70 درجه زیر بار سنگین گرافیکی(Under Load) مناسب است.

دمای مناسب برای CPU

دمای ایده آل برای CPU عددی بین 45 تا 50 درجه میباشد.ولی خوب در استفاده طولانی مدت از پردازنده حداکثر دمای CPU بهتر است بیشتر از 60 درجه نباشد.هرچند CPU میتواند دماهای بالاتر را نیز تحمل کند.البته در زمان idle یا زمانی که شما کار سنگینی رو انجام نمیدهد و فقط وبگردی میکنید یا موزیک گوش میدهید ، دمای 70 درجه سانتیگراد اصلا خوب نیست. هرچه زودتر باید فن ها و خنک کننده های سیستمتون رو تمیز یا تعویض کنید.ولی زیر بارسنگین پردازشی دمای 70 درجه خوب است.ولی خوب زنگ خطر برای آسیب دیدن CPU دماهای بالای 70 درجه است و توصیه میشود اجازه ندهید دمای CPU برای طولانی مدت 70 درجه سانتیگراد باشد.

دمای مناسب برای مادربرد

دمای 50 درجه برای مادربرد نرماله.البته بستگی به مادربرد هم داره.تا دمای 70 درجه سانتی گراد حین Game مناسب هست.


میلاد فشی
میلاد فشی

کارشناس فناوری اطلاعات

میلاد فشی ، کارشناس نرم افزار ، کتاب Mobile Web Application With MoSync Framework را برای برنامه نویسی Cross-Platform برای موبایل ها یا تبلت ها به رشته تحریر درآوردم.به نرم افزارهای آزاد و متن باز (FOSS) علاقه دارم. با توزیع های محبوب گنو/لینوکس نیز کار کرده ام.به شبکه های کامپیوتری بیشتر از برنامه نویسی علاقه دارم و به همین دلیل بیشتر در حوزه شبکه های کامپیوتری مطالعه و تحقیق و پژوهش دارم و خودم رو یک دانشجوی مادام العمر میدونم...

نظرات