HDDTEMP(8) System Manager's Manual HDDTEMP(8)

hddtemp - ابزار نمایش دمای دیسک‌های سخت از طریق S.M.A.R.T

hddtemp [options] [type:]disk...

دستور hddtemp دمای دیسک سخت شما را با خواندن اطلاعات فناوری خود‌نظارتی، تحلیل و گزارش‌دهی (S.M.A.R.T.) از روی درایوهایی که از این قابلیت پشتیبانی می‌کنند، در اختیارتان قرار می‌دهد. تنها دیسک‌های سخت امروزی دارای حسگر دما هستند. hddtemp از خواندن اطلاعات S.M.A.R.T. از درایوهای SCSI نیز پشتیبانی می‌کند. hddtemp می‌تواند به عنوان یک ابزار ساده خط فرمان یا به عنوان یک دیمن (خدمت پس‌زمینه) عمل کند.

می‌توانید مسیر یک یا چند درایو دستگاه را مشخص کنید؛ هر مسیر می‌تواند با یک type مانند PATA، SATA یا SCSI همراه شود تا hddtemp مجبور به استفاده از یکی از این نوع‌ها شود (چرا که ممکن است تشخیص خودکار با شکست مواجه شود).

این برنامه از ساختار معمول خط فرمان گنو پیروی می‌کند و گزینه‌های طولانی با دو خط تیره (`-') آغاز می‌شوند. خلاصه‌ای از گزینه‌ها در زیر آمده است.

نمایش فایل پایگاه‌داده‌ای که به hddtemp اجازه می‌دهد یک درایو پشتیبانی‌شده را شناسایی کند.
نمایش فیلدهای گوناگون S.M.A.R.T. و مقادیر آن‌ها. برای یافتن مقداری که به نظر می‌رسد با دما همخوانی دارد و/یا برای ارسال گزارش مفید است (این کار برای تمام درایوهای مشخص‌شده انجام می‌شود).
اجرای hddtemp در حالت دیمن TCP/IP (به صورت پیش‌فرض روی پورت ۷۶۳۴).
مشخص کردن فایل پایگاه‌داده برای استفاده.
عدم انتقال فرآیند به پس‌زمینه (fork نشدن) حتی در حالت دیمن. این گزینه هنگام اجرا زیر نظر یک ناظر فرآیند (process supervisor) مفید است.
گوش دادن روی یک آدرس مشخص. addr رشته‌ای حاوی نام میزبان یا یک آدرس عددی میزبان است. آدرس عددی میزبان می‌تواند یک آدرس ده‌دهی نقطه‌دار IPv4 یا یک آدرس هگزادسیمال IPv6 باشد.
چاپ تنها مقدار دما (بدون واحد).
شماره پورت برای گوش دادن (در حالت دیمن TCP/IP).
جداکننده مورد استفاده میان فیلدها (در حالت دیمن TCP/IP). جداکننده پیش‌فرض `|' است.
تغییر به حالت دیمن و ثبت دماها در syslog در هر s ثانیه.
بررسی نکردن پشتیبانی شدن یا نشدن درایو.
اجبار خروجی دما بر حسب سلسیوس یا فارنهایت.
نمایش شماره نسخه hddtemp.
بیدار کردن درایو در صورت نیاز (فقط برای درایوهای ATA).
-4
گوش دادن فقط روی سوکت‌های IPv4.
-6
گوش دادن فقط روی سوکت‌های IPv6.

اگر می‌دانید درایو شما دارای حسگر دما است اما به عنوان درایو پشتیبانی‌نشده گزارش می‌شود، مدل و سازنده آن را اطلاع دهید و/یا به سادگی یک ورودی جدید در فایل /etc/hddtemp.db اضافه کنید. هر خط از فایل hddtemp.db یا یک توضیح (comment) است، یا یک خط خالی، و یا خطی شامل موارد زیر:

- یک عبارت باقاعده که به hddtemp اجازه می‌دهد یک درایو یا مجموعه‌ای از درایوها را از روی نام مدل یا یک نام مدل عمومی شناسایی کند،
- یک مقدار (ATTRIBUTE_ID از S.M.A.R.T.)،
- حرف C یا F برای تنظیم واحد دما روی سلسیوس یا فارنهایت،
- یک توضیح متنی.

از بازخوردها استقبال می‌شود (بخش گزارش دادن را در ادامه ببینید).

نمونه‌ای از اجبار نوع درایو:

# hddtemp SATA:/dev/sda PATA:/dev/hda

برای آزمایش hddtemp در حالت دیمن، آن را به این صورت اجرا کنید:

# hddtemp -d /dev/hd[abcd]

و برای دریافت پاسخ، از telnet یا netcat (که در برخی سیستم‌ها با نام nc شناخته می‌شود) استفاده کنید:

# netcat localhost 7634

پایگاه‌داده درایوها تنها یک بار در زمان راه‌اندازی خوانده می‌شود، بنابراین در صورت به‌روزرسانی پایگاه‌داده، hddtemp باید مجدداً راه‌اندازی شود تا تغییرات اعمال گردند.

از آنجا که گزارش‌های فراوانی دریافت می‌شود، شفاف‌سازی چند نکته ضروری است. هنگام اجرای hddtemp با گزینه‌های اشکال‌زدایی (debug)، این ابزار خروجی نسبتاً کاملی از داده‌های S.M.A.R.T. را نمایش می‌دهد. هر فیلد نشان‌دهنده یک مشخصه اطلاعاتی است. فیلد استاندارد برای دمای درایو، شماره ۱۹۴ است. اما این موضوع همیشه صادق نیست (به‌ویژه در درایوهای قدیمی‌تر). حتی اگر درایو شما قابلیت‌های S.M.A.R.T. داشته باشد، لزوماً به این معنی نیست که می‌تواند دمای خود را گزارش کند. بنابراین، این موضوع باید از طریق آزمون و خطا مشخص شود.

بنابراین، می‌توانید با اجرای hddtemp در فواصل زمانی منظم حدس بزنید که کدام فیلد مناسب است:

- درست پس از راه‌اندازی رایانه/سرور/ایستگاه کاری خود،
- پس از باز کردن پنجره (یک پنجره فیزیکی در اتاق! :)،
- پس از باز کردن درب کیس،
- یا هر اقدام دیگری که به نظرتان می‌رسد...

و سپس به دنبال مقدار فیلدی باشید که بسته به اثری که می‌خواهید ایجاد کنید، افزایش یا کاهش می‌یابد. مراقب باشید، فیلدهای ۴، ۹ و ۱۲ اغلب به عنوان فیلد دما گزارش می‌شوند، اما پس از بررسی مشخص می‌شود که این‌طور نیست. با این حال فیلدهای ۱۹۴ (که فیلد استاندارد دما است) و ۲۳۱ گزینه‌های بسیار مناسبی هستند.

سپس می‌توانید گزارشی شامل خروجی‌های hddtemp --debug ...، smartctl یا hdparm -i ... ارسال کرده و/یا خودتان یک ورودی جدید به hddtemp.db اضافه کنید.

اگر hddtemp به دلایل ناشناخته‌ای متوقف شد یا کرش کرد (بله، ممکن است رخ دهد)، در مسیر /tmp به دنبال فایلی به نام hddtemp.backtrace.<PID>.XXXXXX (که در آن XXXXXX یک عدد تصادفی تولیدشده هنگام اجرا است) بگردید. سپس می‌توانید این فایل را به همراه فایل اجرایی hddtemp برای نویسنده ارسال کنید. قابلیت ردگیری فراخوانی‌ها (backtrace) در حال حاضر فقط روی معماری i386 پشتیبانی می‌شود.

smartctl(8), syslog(3), syslogd(8).

Emmanuel Varagnat (hddtemp@guzu.net).

این صفحه راهنما در ابتدا توسط Aurelien Jarno <aurel32@debian.org> برای سیستم دبیان گنو/لینوکس نوشته شده است (اما ممکن است توسط دیگران نیز استفاده شود).

July 21, 2003