.ig Copyright (C) 2002-10 Bruce Allen Copyright (C) 2004-25 Christian Franke SPDX-License-Identifier: GPL-2.0-or-later $Id: smartd.8.in 5693 2025-04-22 12:00:11Z chrfranke $ .. .\" Macros borrowed from pages generated with Pod::Man .de Sp \" Vertical space (when we can't use .PP) .if t .sp 0.4v .if n .sp .. .de Vb \" Begin verbatim text .if t .ft CW .if n .ft R .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Use groff extension \(aq (apostrophe quote, ASCII 0x27) if possible .ie \n(.g .ds Aq \(aq .el .ds Aq ' .TH SMARTD 8 "2025-04-30" "smartmontools-7.5" "ابزارهای پایش SMART" .SH "نام (NAME)" \fBsmartd\fP \- دیمن پایش دیسک بر پایه SMART .Sp .SH "خلاصه دستور (SYNOPSIS)" .B smartd [گزینه‌ها] .Sp .SH "توضیحات (DESCRIPTION)" .\" %IF NOT OS ALL [این صفحه راهنما برای نسخه لینوکس smartmontools تولید شده است. اطلاعات ویژه سایر پلتفرم‌ها در آن گنجانده نشده است.] .PP .\" %ENDIF NOT OS ALL برنامه \fBsmartd\fP یک دیمن است که سیستم Self-Monitoring, Analysis and Reporting Technology (SMART) تعبیه‌شده در اکثر درایوهای دیسک سخت و حالت جامد (SSD) از نوع ATA/SATA و SCSI/SAS را پایش می‌کند. هدف SMART نظارت بر قابلیت اطمینان دیسک، پیش‌بینی خرابی‌های درایو و اجرای انواع مختلف خودآزمایی‌های (self-tests) درایو است. این نسخه از \fBsmartd\fP با استانداردهای ACS-3، ACS-2، ATA8-ACS، ATA/ATAPI-7 و استانداردهای قدیمی‌تر سازگار است (بخش \fBمراجع (REFERENCES)\fP در زیر را ببینید). .PP برنامه \fBsmartd\fP تلاش خواهد کرد تا پایش SMART را روی دستگاه‌های ATA فعال کند (معادل \fBsmartctl \-s on\fP) و این دستگاه‌ها و دستگاه‌های SCSI را هر ۳۰ دقیقه یک‌بار (قابل پیکربندی) بررسی دوره‌ای (poll) کند و خطاهای SMART و تغییرات ویژگی‌های (Attributes) آن را از طریق رابط SYSLOG ثبت نماید. محل پیش‌فرض برای این اعلان‌ها و هشدارهای SYSLOG وابسته به سیستم است (معمولاً \fB/var/log/messages\fP یا \fB/var/log/syslog\fP). برای تغییر این محل پیش‌فرض، لطفاً گزینه خط فرمان \*(Aq\-l\*(Aq را که در زیر شرح داده شده ببینید. .PP علاوه بر ثبت در فایل، \fBsmartd\fP می‌تواند طوری پیکربندی شود که در صورت شناسایی مشکلات، هشدارهای ایمیلی ارسال کند. بسته به نوع مشکل، ممکن است بخواهید خودآزمایی‌هایی روی دیسک اجرا کنید، از داده‌های دیسک نسخه پشتیبان بگیرید، دیسک را تعویض کنید، یا از ابزار اختصاصی سازنده برای تخصیص مجدد سکتورهای خراب یا غیرقابل خواندن استفاده نمایید. اگر مشکلاتی در دیسک شناسایی شد، لطفاً برای راهنمایی بیشتر به صفحه راهنمای \fBsmartctl\fP و وب‌سایت/پرسش‌های متداول \fBsmartmontools\fP مراجعه کنید. .PP اگر سیگنال \fBUSR1\fP را به \fBsmartd\fP ارسال کنید، بلافاصله وضعیت دیسک‌ها را بررسی کرده و سپس به چرخه پایش هر ۳۰ دقیقه یک‌بار بازمی‌گردد. گزینه \*(Aq\-i\*(Aq در زیر را برای جزئیات بیشتر ببینید. .PP برنامه \fBsmartd\fP می‌تواند در زمان راه‌اندازی با استفاده از فایل پیکربندی \fB/etc/smartd.conf\fP (در ویندوز: \fBEXEDIR/smartd.conf\fP) پیکربندی شود. اگر فایل پیکربندی بعداً تغییر یابد، می‌توان با ارسال سیگنال \fBHUP\fP به \fBsmartd\fP آن را وادار به خواندن مجدد فایل پیکربندی کرد، به عنوان مثال با دستور: .br \fBkillall \-HUP smartd\fP. .br .\"# .\" %IF OS Windows .\"# (Windows: See NOTES below.) .\"# .\" %ENDIF OS Windows .PP در زمان راه‌اندازی، اگر \fBsmartd\fP خطای نگارشی در فایل پیکربندی بیابد، یک پیام خطا چاپ کرده و سپس خارج می‌شود. با این حال اگر \fBsmartd\fP از قبل در حال اجرا باشد و سپس با سیگنال \fBHUP\fP دستور خواندن مجدد فایل پیکربندی را دریافت کند، و در این فایل خطای نگارشی بیابد، پیام خطا چاپ کرده و به کار خود ادامه می‌دهد، و محتویات فایل پیکربندی معیوب را طوری نادیده می‌گیرد که گویی سیگنال \fBHUP\fP هرگز دریافت نشده است. .PP هنگامی که \fBsmartd\fP در حالت اشکال‌زدایی (debug) اجرا می‌شود، با سیگنال \fBINT\fP (که معمولاً از پوسته با CONTROL-C ایجاد می‌شود) همانند سیگنال \fBHUP\fP رفتار می‌شود: این سیگنال باعث می‌شود \fBsmartd\fP فایل پیکربندی خود را دوباره بارگذاری کند. برای خروج از \fBsmartd\fP از CONTROL-\e استفاده کنید. .\"# .\" %IF OS Windows .\"# (Windows: CONTROL-Break). .\"# .\" %ENDIF OS Windows .\" %IF ENABLE_SYSTEMD_NOTIFY .PP [فقط لینوکس] اگر \fBsmartd\fP به عنوان یک سرویس \fBsystemd\fP(1) شروع شود و \*(AqType=Notify\*(Aq در فایل سرویس مشخص شده باشد، پس از راه‌اندازی موفقیت‌آمیز به مدیر سرویس اطلاع داده می‌شود. سایر تغییرات وضعیت از طریق پیام‌های systemd notify STATUS گزارش می‌شوند. اعلان بارگذاری‌های مجدد موفق (پس از سیگنال \fBHUP\fP) پشتیبانی نمی‌شود. برای تشخیص این نوع راه‌اندازی فرآیند، \fBsmartd\fP بررسی می‌کند که آیا متغیر محیطی \*(AqNOTIFY_SOCKET\*(Aq تنظیم شده است یا خیر. توجه داشته باشید که اگر \*(AqType=Notify\*(Aq استفاده شود، تنظیم گزینه \*(Aq\-n\*(Aq (\*(Aq\-\-nofork\*(Aq) در خط فرمان \*(AqExecStart=/usr/bin/smartd\*(Aq الزامی است. .\" %ENDIF ENABLE_SYSTEMD_NOTIFY .PP در زمان راه‌اندازی، در صورت نبود فایل پیکربندی \fB/etc/smartd.conf\fP، دیمن \fBsmartd\fP ابتدا تمام دستگاه‌هایی را که از SMART پشتیبانی می‌کنند اسکن می‌کند. این اسکن به صورت زیر انجام می‌شود: .\" %IF OS Linux .IP \fBLINUX:\fP 9 بررسی تمام ورودی‌های \fB"/dev/hd[a\-t]"\fP برای دستگاه‌های IDE/ATA، و \fB"/dev/sd[a\-z]"\fP، \fB"/dev/sd[a\-z][a\-z]"\fP برای دستگاه‌های ATA/SATA یا SCSI/SAS. دیسک‌های پشت کنترلرهای RAID گنجانده نمی‌شوند. .Sp اگر دستورالعمل \*(Aq\-d nvme\*(Aq .\" %IF ENABLE_NVME_DEVICESCAN یا هیچ دستورالعمل \*(Aq\-d\*(Aq .\" %ENDIF ENABLE_NVME_DEVICESCAN مشخص نشده باشد، تمام ورودی‌های \fB"/dev/nvme[0\-99]"\fP برای دستگاه‌های NVMe بررسی می‌شوند. .\" %ENDIF OS Linux .\"# .\" %IF OS FreeBSD .\"# .IP \fBFREEBSD:\fP 9 .\"# Authoritative list of disk devices is obtained from SCSI (CAM) and ATA .\"# subsystems. .\"# Disks behind RAID controllers are not included. .\"# .\" %ENDIF OS FreeBSD .\"# .\" %IF OS NetBSD OpenBSD .\"# .IP \fBNETBSD/OPENBSD:\fP 9 .\"# Authoritative list of disk devices is obtained from sysctl .\"# \*(Aqhw.disknames\*(Aq. .\"# .\" %ENDIF OS NetBSD OpenBSD .\"# .\" %IF OS Solaris .\"# .IP \fBSOLARIS:\fP 9 .\"# Examine all entries \fB"/dev/rdsk/*s0"\fP for IDE/ATA and SCSI disk .\"# devices, and entries \fB"/dev/rmt/*"\fP for SCSI tape devices. .\"# .\" %ENDIF OS Solaris .\"# .\" %IF OS Darwin .\"# .IP \fBDARWIN:\fP 9 .\"# The IOService plane is scanned for ATA block storage devices. .\"# .\" %ENDIF OS Darwin .\"# .\" %IF OS Windows Cygwin .\"# .IP \fBWINDOWS\fP: 9 .\"# Examine all entries \fB"/dev/sd[a\-z]"\fP, \fB"/dev/sd[a\-c][a\-z]"\fP .\"# and \fB"/dev/sdd[a\-x]"\fP ("\\\\.\\PhysicalDrive[0\-127]") for .\"# IDE/(S)ATA and SCSI disk devices. .\"# .Sp .\"# If a 3ware 9000 controller is installed, examine all entries .\"# \fB"/dev/sdX,N"\fP for the first logical drive (\*(Aqunit\*(Aq .\"# \fB"/dev/sdX"\fP) and all physical disks (\*(Aqports\*(Aq \fB",N"\fP) .\"# detected behind this controller. .\"# Same for a second controller if present. .\"# .Sp .\"# If directive \*(Aq\-d csmi\*(Aq or no \*(Aq\-d\*(Aq directive is specified, .\"# examine all entries \fB"/dev/csmi[0\-9],N"\fP for drives behind an Intel .\"# ICHxR controller with RST driver. .\"# .Sp .\"# Disks behind Areca RAID controllers are not included. .\"# .Sp .\"# If directive \*(Aq\-d nvme\*(Aq .\"# .\" %IF ENABLE_NVME_DEVICESCAN .\"# or no \*(Aq\-d\*(Aq directive .\"# .\" %ENDIF ENABLE_NVME_DEVICESCAN .\"# is specified, examine all entries \fB"/dev/sd[...]"\fP (see above) .\"# and all entries \fB"/dev/nvme[0\-9]"\fP for NVMe devices. .\"# .\" %ENDIF OS Windows Cygwin .PP سپس \fBsmartd\fP تمامی خطاهای ممکن SMART را پایش می‌کند (متناظر با دستورالعمل \*(Aq\-a\*(Aq در فایل پیکربندی؛ صفحه راهنمای \fBsmartd.conf\fP(5) را ببینید). .Sp .SH "گزینه‌ها (OPTIONS)" .TP .B \-A PREFIX, \-\-attributelog=PREFIX نوشتن اطلاعات ویژگی‌های (attributes) درایو در فایل‌های .br \*(AqPREFIX\*(Aq\*(AqMODEL\-SERIAL[\-NSID].PRT.csv\*(Aq. .br اگر PREFIX شامل یک اسلش انتهایی باشد، دایرکتوری مقصد را مشخص می‌کند. در غیر این صورت آخرین مؤلفه مسیر، پیشوند نام فایل را تعیین می‌نماید. مسیر باید مطلق باشد، مگر اینکه حالت اشکال‌زدایی فعال شده باشد. MODEL و SERIAL بر اساس اطلاعات شناسایی درایو ساخته می‌شوند، کاراکترهای نامعتبر با خط زیرین (underline) جایگزین می‌گردند. اگر یک فضای نام مجزا آدرس‌دهی شود، NSID شناسه فضای نام NVMe خواهد بود. PRT یکی از مقادیر \*(Aqata\*(Aq، \*(Aqscsi\*(Aq یا \*(Aqnvme\*(Aq است. .Sp .\"# .\" %IF ENABLE_ATTRIBUTELOG .\"# If this option is not specified, attribute information is written to files .\"# .br .\"# \*(Aq/usr/local/var/lib/smartmontools/attrlog.MODEL\-SERIAL[\-NSID].PRT.csv\*(Aq. .\"# .br .\"# If \*(Aq\-\*(Aq is specified as the argument, attribute log files are .\"# disabled. .\"# .Sp .\"# .\" %ENDIF ENABLE_ATTRIBUTELOG در هر چرخه بررسی، ویژگی‌ها به صورت یک خط از چندتایی‌های جدا شده با برگه (tab) ثبت می‌شوند که از نام‌ها یا مقادیر جدا شده با نقطه‌ویرگول تشکیل شده است. هر خط با یک رشته تاریخ به فرمت "yyyy-mm-dd HH:MM:SS" (در زمان محلی) آغاز می‌شود. بخش باقی‌مانده وابسته به پروتکل است: .br [ATA] ویژگی‌های SMART مربوط به ATA را به صورت "id;normalized-value;raw-value;" می‌نویسد. .br [SCSI] شمارنده‌های خطای SCSI و دما را به صورت "name;value;" می‌نویسد. .br [NVMe: قابلیت تجربی جدید در SMARTD 7.5] اطلاعات SMART/Health مربوط به NVMe را به صورت "name;value;" می‌نویسد. .TP .B \-B [+]FILE, \-\-drivedb=[+]FILE [فقط ATA] خواندن پایگاه‌داده درایو از FILE. پایگاه‌داده جدید به طور پیش‌فرض جایگزین پایگاه‌داده داخلی می‌شود. اگر \*(Aq+\*(Aq مشخص شده باشد، ورودی‌های جدید به ابتدای ورودی‌های داخلی افزوده می‌شوند. لطفاً برای جزئیات بیشتر به صفحه راهنمای \fBsmartctl\fP(8) مراجعه فرمایید. .TP .B \-c FILE, \-\-configfile=FILE خواندن دستورالعمل‌های پیکربندی \fBsmartd\fP از FILE، به جای محل پیش‌فرض \fB/etc/smartd.conf\fP (در ویندوز: \fBEXEDIR/smartd.conf\fP). اگر FILE وجود \fBنداشته باشد\fP، آن‌گاه \fBsmartd\fP یک پیام خطا چاپ کرده و با وضعیت غیرصفر خارج می‌شود. بنابراین، \*(Aq\-c /etc/smartd.conf\*(Aq می‌تواند برای بررسی وجود فایل پیکربندی پیش‌فرض استفاده شود. .Sp با استفاده از \*(Aq\-\*(Aq به جای FILE، پیکربندی از ورودی استاندارد خوانده می‌شود. این مورد برای دستوراتی مانند: .br .B echo /dev/sdb \-m user@home \-M test | smartd \-c \- \-q onecheck .br جهت انجام بررسی‌های سریع و ساده بدون فایل پیکربندی مفید است. .\" %IF ENABLE_CAPABILITIES .TP .B \-C, \-\-capabilities[=mail] [فقط لینوکس] استفاده از libcap-ng برای انداختن (drop) قابلیت‌های \fBcapabilities\fP(7) غیرضروری پردازش در لینوکس. قابلیت‌های زیر در مجموعه‌های مؤثر (effective) و مجاز (permissive) نگه داشته می‌شوند: CAP_SYS_ADMIN، CAP_SYS_RAWIO، CAP_MKNOD. اگر گزینه \*(Aq\-u, \-\-warn_as_user\*(Aq (زیر را ببینید) به همراه یک کاربر یا گروه غیرمجاز استفاده شود، قابلیت‌های زیر نیز حفظ می‌شوند: CAP_SETGID، CAP_SETUID. مجموعه محدودکننده (bounding set) قابلیت‌ها پاک می‌شود. اینکه آیا امکان ارسال ایمیل از یک پردازش root با تمام قابلیت‌های ساقط‌شده وجود دارد یا خیر، به MTA محلی بستگی دارد. این قابلیت با MTA \fBpostfix\fP کار می‌کند. .Sp اگر \*(Aq\-\-capabilities=mail\*(Aq مشخص شده باشد، قابلیت‌های زیر به مجموعه محدودکننده اضافه می‌شوند: CAP_SETGID، CAP_SETUID، CAP_CHOWN، CAP_FOWNER، CAP_DAC_OVERRIDE. این به کاربر اجازه می‌دهد تا با MTA \fBexim\fP ایمیل ارسال کند. .\" %ENDIF ENABLE_CAPABILITIES .TP .B \-d, \-\-debug اجرای \fBsmartd\fP در حالت "اشکال‌زدایی" (debug). در این حالت، اطلاعات وضعیت به جای ثبت در SYSLOG در خروجی استاندارد (STDOUT) نمایش داده می‌شود و برنامه به پس‌زمینه انشعاب (\fBfork\fP(2)) پیدا نکرده و از ترمینال کنترل‌کننده جدا نمی‌شود. در این حالت، \fBsmartd\fP همچنین اطلاعات با جزئیات بیشتری نسبت به اجرای در حالت "دیمن" درباره کارهایی که انجام می‌دهد چاپ می‌کند. در این حالت، سیگنال \fBINT\fP (که معمولاً با CONTROL-C از یک ترمینال تولید می‌شود) باعث می‌شود \fBsmartd\fP فایل پیکربندی خود را دوباره بارگذاری کند. لطفاً برای خروج از CONTROL-\e استفاده کنید. .\"# .\" %IF OS Windows .\"# (Windows: CONTROL-Break). .\"# .Sp .\"# [Windows only] The "debug" mode can be toggled by the command .\"# \fBsmartd sigusr2\fP. .\"# A new console for debug output is opened when debug mode is enabled. .\"# .\" %ENDIF OS Windows .TP .B \-D, \-\-showdirectives چاپ فهرستی (در STDOUT) از تمام دستورالعمل‌های ممکنی که ممکن است در فایل پیکربندی /etc/smartd.conf ظاهر شوند، و سپس خروج. این دستورالعمل‌ها در صفحه راهنمای \fBsmartd.conf\fP(5) توضیح داده شده‌اند. آن‌ها ممکن است در فایل پیکربندی پس از نام دستگاه بیایند. .TP .B \-h, \-\-help, \-\-usage چاپ پیام نحوه استفاده در خروجی استاندارد و خروج. .TP .B \-i N, \-\-interval=N تنظیم فاصله بین بررسی‌های دیسک به \fIN\fP ثانیه، که در آن \fIN\fP یک عدد صحیح ده‌دهی است. کمترین مقدار مجاز ۱۰ و بیشترین مقدار بزرگ‌ترین عدد صحیح مثبتی است که می‌تواند در سیستم شما نمایش داده شود (اغلب 2^31\-1). مقدار پیش‌فرض ۱۸۰۰ ثانیه است. فاصله زمانی می‌تواند با دستورالعمل \*(Aq\-c i=N\*(Aq بازنویسی شود، به صفحه راهنمای \fBsmartd.conf\fP(5) مراجعه فرمایید. .Sp توجه داشته باشید که کاربر ارشد (superuser) می‌تواند با ارسال سیگنال \fBSIGUSR1\fP به \fBsmartd\fP در هر زمان وضعیت دیسک‌ها را بررسی کند، به عنوان مثال با دستور: .br .B kill \-SIGUSR1 .br که در آن \fB\fP شماره شناسه فرآیند \fBsmartd\fP است. همچنین می‌توان از: .br .B killall \-USR1 smartd .br برای همین منظور استفاده کرد. .br .\"# .\" %IF OS Windows .\"# (Windows: See NOTES below.) .\"# .\" %ENDIF OS Windows .TP .B \-l FACILITY, \-\-logfacility=FACILITY استفاده از تسهیلات سیستمی (syslog facility) FACILITY برای ثبت پیام‌های \fBsmartd\fP. در اینجا FACILITY یکی از مقادیر \fIlocal0\fP، \fIlocal1\fP، ...، \fIlocal7\fP یا \fIdaemon\fP [پیش‌فرض] است. اگر از این گزینه خط فرمان استفاده نشود، پیام‌های \fBsmartd\fP به طور پیش‌فرض در تسهیلات \fIdaemon\fP ثبت می‌شوند. .Sp اگر مایلید پیام‌های \fBsmartd\fP در محلی غیر از محل پیش‌فرض ثبت شوند، به عنوان مثال \*(Aq\-l local3\*(Aq را در فهرست آرگومان‌های راه‌اندازی آن بگنجانید. به دیمن syslog بگویید که تمام پیام‌های تسهیلات \fBlocal3\fP را (برای مثال) در \*(Aq/var/log/smartd.log\*(Aq ثبت کند. .Sp برای اطلاعات دقیق‌تر، لطفاً به صفحات راهنمای دیمن محلی syslog، معمولاً \fBsyslogd\fP(8)، \fBsyslog-ng\fP(8) یا \fBrsyslogd\fP(8) مراجعه کنید. .\"# .\" %IF OS Cygwin .\"# .Sp .\"# Cygwin: If no \fBsyslogd\fP is running, the \*(Aq\-l\*(Aq option has no effect. .\"# In this case, all \fBsyslog\fP messages are written to Windows event log. .\"# .\" %ENDIF OS Cygwin .\"# .\" %IF OS Windows .\"# .Sp .\"# Windows: Some \fBsyslog\fP functionality is implemented .\"# internally in \fBsmartd\fP as follows: If no \*(Aq\-l\*(Aq option .\"# (or \*(Aq\-l daemon\*(Aq) is specified, messages are written to Windows .\"# event log or to file \fB./smartd.log\fP if event log is not available .\"# (access denied). .\"# By specifying other values of FACILITY, log output is redirected as follows: .\"# \*(Aq\-l local0\*(Aq to file \fB./smartd.log\fP, .\"# \*(Aq\-l local1\*(Aq to standard output (redirect with \*(Aq>\*(Aq to any file), .\"# \*(Aq\-l local2\*(Aq to standard error, .\"# \*(Aq\-l local[3\-7]\*(Aq: to file \fB./smartd[1\-5].log\fP. .\"# .\" %ENDIF OS Windows .TP .B \-n, \-\-no\-fork عدم انشعاب به پس‌زمینه؛ این مورد زمان اجرا از طریق شیوه‌های مدرن init مانند initng، minit، supervise یا systemd سودمند است. .\"# .\" %IF OS Cygwin .\"# .Sp .\"# On Cygwin, this allows running \fBsmartd\fP as service via cygrunsrv, .\"# see NOTES below. .\"# .\" %ENDIF OS Cygwin .\"# .\" %IF OS Windows .\"# .Sp .\"# On Windows, this option is not available, use \*(Aq\-\-service\*(Aq instead. .\"# .\" %ENDIF OS Windows .TP .B \-p NAME, \-\-pidfile=NAME نوشتن pidfile با نام \fINAME\fP حاوی شماره شناسه فرآیند (PID) برنامه \fBsmartd\fP. برای جلوگیری از حملات پیوند نمادین (symlink attacks)، مطمئن شوید دایرکتوری‌ای که pidfile در آن نوشته می‌شود فقط برای root قابل نوشتن باشد. بدون این گزینه، یا اگر گزینه \-\-debug داده شود، در زمان راه‌اندازی هیچ فایل PID نوشته نمی‌شود. اگر \fBsmartd\fP با یک سیگنال ماسک‌پذیر (maskable) کشته شود، فایل PID حذف خواهد شد. .TP .B \-q WHEN, \-\-quit=WHEN مشخص می‌کند که \fBsmartd\fP در صورت لزوم، در چه زمانی باید خارج شود. آرگومان‌های معتبر برای این گزینه عبارتند از: .Sp .I nodev \- خروج در صورتی که هیچ دستگاهی برای پایش وجود نداشته باشد، یا اگر در زمان راه‌اندازی هرگونه خطایی در فایل پیکربندی یافت شود. این حالت پیش‌فرض است. .Sp .I errors \- خروج در صورتی که هیچ دستگاهی برای پایش وجود نداشته باشد، یا اگر در زمان راه‌اندازی یا هر بار بازخوانی فایل پیکربندی /etc/smartd.conf خطایی یافت شود. .Sp .I nodevstartup \- خروج در صورتی که در زمان راه‌اندازی هیچ دستگاهی برای پایش وجود نداشته باشد. اما اگر در هنگام بازخوانی فایل پیکربندی دستگاهی یافت نشد، به اجرای خود ادامه دهد. .Sp .I never \- فقط در صورتی خارج شود که خطای مهلکی رخ دهد (نبود حافظه باقی‌مانده در سیستم، آرگومان‌های خط فرمان نامعتبر). در این حالت، حتی اگر هیچ دستگاهی برای پایش نباشد، یا اگر فایل پیکربندی \fB/etc/smartd.conf\fP دارای خطا باشد، \fBsmartd\fP به اجرای خود ادامه داده و منتظر بارگذاری یک فایل پیکربندی شامل دستگاه‌های معتبر می‌ماند. .Sp .I nodev0 \- مشابه \*(Aqnodev\*(Aq، با این تفاوت که اگر دستگاهی برای پایش وجود نداشته باشد، وضعیت خروج ۰ خواهد بود. .Sp .I nodev0startup \- مشابه \*(Aqnodevstartup\*(Aq، با این تفاوت که اگر دستگاهی برای پایش وجود نداشته باشد، وضعیت خروج ۰ خواهد بود. .Sp .I errors,nodev0 \- مشابه \*(Aqerrors\*(Aq، با این تفاوت که اگر دستگاهی برای پایش وجود نداشته باشد، وضعیت خروج ۰ خواهد بود. .Sp .I onecheck \- اجرای \fBsmartd\fP در حالت اشکال‌زدایی، سپس ثبت دستگاه‌ها، سپس یک‌بار بررسی وضعیت SMART دستگاه، و خروج با وضعیت صفر در صورتی که تمام این مراحل به درستی عمل کنند. .Sp این گزینه آخر برای توسعه‌دهندگان توزیع‌ها در نظر گرفته شده که می‌خواهند اسکریپت‌های خودکاری ایجاد کنند تا مشخص شود آیا پس از نصب smartmontools باید \fBsmartd\fP را به طور خودکار راه‌اندازی کرد یا خیر. پس از شروع \fBsmartd\fP با این گزینه خط فرمان، اسکریپت‌های نصب توزیع باید مدت زمان معقولی (مثلاً ۱۰ ثانیه) منتظر بمانند. اگر \fBsmartd\fP تا آن زمان با وضعیت صفر خارج نشد، اسکریپت باید یک SIGTERM یا SIGKILL به \fBsmartd\fP ارسال کرده و فرض کند که \fBsmartd\fP روی این میزبان به درستی کار نخواهد کرد. برعکس، اگر \fBsmartd\fP با وضعیت صفر خارج شود، اجرای \fBsmartd\fP در حالت عادی دیمن ایمن است. اگر \fBsmartd\fP قادر به پایش هیچ دستگاهی نباشد یا با مشکلات دیگری مواجه شود، با وضعیت خروج غیرصفر بازخواهد گشت. .Sp .I showtests \- اجرای \fBsmartd\fP در حالت اشکال‌زدایی، سپس ثبت دستگاه‌ها، سپس نوشتن فهرستی از خودآزمایی‌های زمان‌بندی‌شده آینده در خروجی استاندارد (stdout)، و در نهایت خروج با وضعیت صفر در صورت کارکرد صحیح تمام مراحل. وضعیت SMART دستگاه در این حالت بررسی نمی‌شود. .Sp این گزینه برای آزمایش این نکته در نظر گرفته شده که آیا دستورالعمل‌های \*(Aq\-s REGEX\*(Aq در smartd.conf اثر مطلوب را خواهند داشت یا خیر. خروجی زمان‌بندی آزمون‌های بعدی را فهرست می‌کند که به ۵ آزمون برای هر نوع و هر دستگاه محدود می‌شود. پس از این، خلاصه‌ای از تمام آزمون‌های هر دستگاه در طول ۹۰ روز آینده ارائه می‌گردد. .TP .B \-r TYPE, \-\-report=TYPE اساساً برای کمک به توسعه‌دهندگان .B smartmontools جهت درک رفتار .B smartmontools روی سخت‌افزارهایی که تطابق استاندارد ضعیف دارند یا نامنطبق هستند طراحی شده است. این گزینه جزئیات تراکنش‌های \fBsmartd\fP با دستگاه را گزارش می‌دهد. این گزینه می‌تواند چندین بار استفاده شود. اگر تنها یک بار استفاده شود، رکوردی از تراکنش‌های ioctl() با دستگاه را نشان می‌دهد. در صورت استفاده بیش از یک بار، جزئیات این تراکنش‌های ioctl() با تفصیل بیشتری گزارش می‌گردند. آرگومان‌های معتبر برای این گزینه عبارتند از: .Sp .I ioctl \- گزارش تمام تراکنش‌های ioctl(). .Sp .I ataioctl \- فقط گزارش تراکنش‌های ioctl() با دستگاه‌های ATA. .Sp .I scsiioctl \- فقط گزارش تراکنش‌های ioctl() با دستگاه‌های SCSI. .Sp .I nvmeioctl \- فقط گزارش تراکنش‌های ioctl() با دستگاه‌های NVMe. .Sp هر آرگومان می‌تواند شامل یک عدد صحیح مثبت برای تعیین سطح جزئیات گزارش‌شده باشد. آرگومان باید با یک کاما و سپس عدد صحیح بدون فاصله دنبال شود؛ برای مثال: \fIataioctl,2\fP. سطح پیش‌فرض ۱ است، بنابراین \*(Aq\-r ataioctl,1\*(Aq و \*(Aq\-r ataioctl\*(Aq معادل یکدیگرند. .TP .B \-s PREFIX, \-\-savestates=PREFIX خواندن/نوشتن اطلاعات وضعیت \fBsmartd\fP از/به فایل‌های .br \*(AqPREFIX\*(Aq\*(AqMODEL\-SERIAL[\-NSID].PRT.state\*(Aq. .br برای PREFIX، MODEL، SERIAL، NSID و PRT، گزینه \*(Aq-A\*(Aq در بالا را ببینید. .Sp .\"# .\" %IF ENABLE_SAVESTATES .\"# If this option is not specified, state information is maintained in files .\"# .br .\"# \*(Aq/usr/local/var/lib/smartmontools/smartd.MODEL\-SERIAL[\-NSID].PRT.state\*(Aq. .\"# .br .\"# If \*(Aq\-\*(Aq is specified as the argument, state files are disabled. .\"# .Sp .\"# .\" %ENDIF ENABLE_SAVESTATES فایل‌های اطلاعات وضعیت، داده‌های گوناگون را در طول بازراه‌اندازی‌های smartd حفظ می‌کنند؛ برای مثال: ویژگی‌های SMART، حداقل و حداکثر دمای درایو (دستورالعمل \*(Aq\-W\*(Aq)، اطلاعات آخرین ایمیل هشدار ارسالی (دستورالعمل \*(Aq\-m\*(Aq)، زمان بررسی بعدی REGEXP خودآزمایی (دستورالعمل \*(Aq\-s\*(Aq) و اطلاعات مربوط به آخرین ورودی‌های لاگ خطای گزارش‌شده (دستورالعمل‌های \*(Aq\-l [x]error\*(Aq). .Sp فایل‌های اطلاعات وضعیت در زمان راه‌اندازی smartd خوانده می‌شوند. این فایل‌ها همیشه پس از خواندن فایل پیکربندی، قبل از بازخوانی مجدد فایل پیکربندی (SIGHUP)، قبل از خاموش شدن smartd و پس از یک بررسی اجباری توسط SIGUSR1 (باز)نوشته می‌شوند. پس از یک چرخه بررسی عادی، فایل تنها در صورتی بازنویسی می‌شود که تغییر مهمی (که معمولاً به خروجی SYSLOG منجر می‌شود) رخ داده باشد. .TP .B \-w PATH, \-\-warnexec=PATH اجرای فایل اجرایی PATH به جای اسکریپت پیش‌فرض در زمانی که smartd نیاز به ارسال پیام‌های هشدار دارد. PATH باید به یک فایل باینری اجرایی یا یک اسکریپت اشاره کند. اسکریپت پیش‌فرض عبارت است از: .\" %IF NOT OS Windows \fB/usr/share/smartmontools/smartd_warning.sh\fP. .\" %ENDIF NOT OS Windows .\"# .\" %IF OS ALL .\"# (Windows: EXEDIR/smartd_warning.cmd) .\"# .\" %ENDIF OS ALL .\"# .\" %IF OS Windows .\"# .\"! \fBEXEDIR/smartd_warning.cmd\fP. .\"# .\" %ENDIF OS Windows .\" %IF OS Darwin FreeBSD Linux NetBSD OpenBSD Solaris Cygwin .TP .B \-u USER[:GROUP], \-\-warn\-as\-user=USER[:GROUP] اجرای اسکریپت هشدار به عنوان یک کاربر فاقد امتیاز به جای root. مقادیر USER و GROUP اختیاری ممکن است به صورت شناسه‌های عددی یا نام‌ها مشخص شوند. اگر هیچ گروهی (GROUP) مشخص نشود، گروه پیش‌فرض USER به جای آن استفاده می‌شود. .Sp در صورت وقوع هشدار، یک فرآیند فرزند با \fBfork\fP(2) ایجاد می‌شود. این فرآیند تمام توصیف‌کننده‌های فایل موروثی را می‌بندد، ورودی/خروجی استاندارد را به /dev/null متصل می‌کند، شناسه‌های کاربر و گروه را تغییر می‌دهد، هرگونه شناسه‌های گروه تکمیلی را حذف می‌کند و سپس تابع \fBpopen\fP(3) از کتابخانه استاندارد را فرامی‌خواند. .Sp اگر \*(Aq0:0\*(Aq مشخص شده باشد، کاربر و گروه تغییر نمی‌کنند، اما سایر اقدامات همچنان اعمال می‌شوند. .Sp اگر \*(Aq-\*(Aq مشخص شده باشد، \fBpopen\fP(3) به طور مستقیم فراخوانی می‌شود. این حالت پیش‌فرض است. .\" %ENDIF OS Darwin FreeBSD Linux NetBSD OpenBSD Solaris Cygwin .\"# .\" %IF OS Windows .\"# .TP .\"# .B \-u MODE, \-\-warn\-as\-user=MODE .\"# [Windows only] Run the warning script with a modified access token. .\"# The valid arguments to this option are: .\"# .Sp .\"# .I restricted .\"# \- Run the warning script with a restricted access token. .\"# The local \*(AqAdministrator\*(Aq group and most privileges .\"# (all except \*(AqSeChangeNotifyPrivilege\*(Aq) are removed. .\"# This is not effective if the current user is the local \*(AqSYSTEM\*(Aq .\"# or \*(AqAdministrator\*(Aq account. .\"# If this is the case, \fBsmartd\fP logs an error message during startup .\"# and exits. .\"# .Sp .\"# .I unchanged .\"# \- Run the warning script without changing the access token. .\"# This is the default. .\"# .TP .\"# .B \-\-service .\"# [Windows only] Enables \fBsmartd\fP to run as a Windows service. .\"# The option must be specified in the service command line as the first .\"# argument. .\"# It should not be used from console. .\"# See NOTES below for details. .\"# .\" %ENDIF OS Windows .TP .B \-V, \-\-version, \-\-license, \-\-copyright چاپ اطلاعات نسخه، حق نشر، مجوز، صفحه اصلی و ویرایش SVN مربوط به این نسخه از \fBsmartd\fP در خروجی استاندارد (STDOUT) و سپس خروج. .Sp .SH "مثال‌ها (EXAMPLES)" .B smartd .br دیمن را در حالت انشعاب‌یافته (forked) اجرا می‌کند. این شیوه معمول اجرای \fBsmartd\fP است. ورودی‌ها در SYSLOG ثبت می‌شوند. .Sp .B smartd \-d \-i 30 .br اجرا در حالت پیش‌زمینه (اشکال‌زدایی)، با بررسی وضعیت دیسک در هر ۳۰ ثانیه. .Sp .B smartd \-q onecheck .br دستگاه‌ها را ثبت کرده و وضعیت دستگاه‌ها را دقیقاً یک بار بررسی می‌کند. در صورت انجام موفق تمام مراحل، وضعیت خروج (متغیر .B $? در پوسته) صفر خواهد بود، و در صورتی که هیچ دستگاهی شناسایی نشود یا مشکل دیگری رخ دهد، غیرصفر خواهد بود. .\"# .\" %IF ENABLE_INITSCRIPT .\"# .Sp .\"# Note that \fBsmartmontools\fP provides a start-up script in .\"# \fB/usr/local/etc/rc.d/init.d/smartd\fP which is responsible for starting and .\"# stopping the daemon via the normal init interface. Using this script, .\"# you can start \fBsmartd\fP by giving the command: .\"# .br .\"# .B /usr/local/etc/rc.d/init.d/smartd start .\"# .br .\"# and stop it by using the command: .\"# .br .\"# .B /usr/local/etc/rc.d/init.d/smartd stop .\"# .\" %ENDIF ENABLE_INITSCRIPT .Sp .SH "پیکربندی (CONFIGURATION)" نحوه نگارش فایل \fBsmartd.conf\fP(5) به طور جداگانه بررسی شده است. .Sp .SH "نکات (NOTES)" برنامه \fBsmartd\fP اگر مقادیر نرمال‌شده ویژگی‌های SMART بر اساس گزارش دستورالعمل‌های .B \*(Aq\-t\*(Aq، .B \*(Aq\-p\*(Aq یا .B \*(Aq\-u\*(Aq تغییر کرده باشد، ورودی‌های لاگ را در سطح لاگ .B LOG_INFO ثبت خواهد کرد. به عنوان مثال: .br .B \*(AqDevice: /dev/sda, SMART Attribute: 194 Temperature_Celsius changed from 94 to 93\*(Aq .br توجه داشته باشید که در این پیام، مقدار داده‌شده مقدار ویژگی «نرمال‌شده» (Normalized) است نه مقدار «خام» (Raw) (دمای دیسک در این حالت حدود ۲۲ درجه سانتی‌گراد است). دستورالعمل‌های .B \*(Aq\-R\*(Aq و .B \*(Aq\-r\*(Aq این رفتار را تغییر می‌دهند تا اطلاعات همراه با مقادیر خام نیز چاپ شوند، به عنوان مثال: .br .B \*(AqDevice: /dev/sda, SMART Attribute: 194 Temperature_Celsius changed from 94 [Raw 22] to 93 [Raw 23]\*(Aq .br در اینجا مقادیر خام دمای واقعی دیسک بر حسب سانتی‌گراد هستند. نحوه چاپ مقادیر خام و نام‌هایی که ویژگی‌ها تحت آن گزارش می‌شوند، توسط دستورالعمل‌های مختلف .B \*(Aq\-v Num,Description\*(Aq که قبلاً شرح داده شد تعیین می‌گردد. .PP لطفاً برای توضیحات بیشتر درباره تفاوت‌های میان مقادیر نرمال‌شده و مقادیر خام ویژگی‌ها، به صفحه راهنمای .B smartctl مراجعه کنید. .PP برنامه \fBsmartd\fP اگر یکی از ویژگی‌های SMART دچار شکست یا خرابی شده باشد، ورودی‌های لاگ را در سطح لاگ .B LOG_CRIT ثبت خواهد کرد، به عنوان مثال: .br .B \*(AqDevice: /dev/sdc, Failed SMART Attribute: 5 Reallocated_Sector_Ct\*(Aq .br این سطح لاگ برای گزارش‌دهی فعال‌شده توسط دستورالعمل‌های .B \*(Aq\-H\*(Aq، .B \*(Aq\-f\*(Aq، .B \*(Aq\-l\ selftest\*(Aq و .B \*(Aq\-l\ error\*(Aq استفاده می‌شود. ورودی‌هایی که خرابی ویژگی‌های پیش‌خرابی (Prefailure) در SMART را گزارش می‌دهند نباید نادیده گرفته شوند: این‌ها به این معنا هستند که دیسک در حال خراب شدن است. برای بررسی دقیق‌تر از ابزار .B smartctl استفاده کنید. .\"# .\" %IF OS Solaris .\"# .PP .\"# Under Solaris with the default \fB/etc/syslog.conf\fP configuration, .\"# messages below loglevel \fBLOG_NOTICE\fP will \fBnot\fP be recorded. .\"# Hence all \fBsmartd\fP messages with loglevel \fBLOG_INFO\fP will be .\"# lost. If you want to use the existing daemon facility to log all .\"# messages from \fBsmartd\fP, you should change \fB/etc/syslog.conf\fP .\"# from: .\"# .Vb 1 .\"# ...;daemon.notice;... /var/adm/messages .\"# .Ve .\"# to read: .\"# .Vb 1 .\"# ...;daemon.info;... /var/adm/messages .\"# .Ve .\"# Alternatively, you can use a local facility to log messages: please .\"# see the \fBsmartd\fP \*(Aq\-l\*(Aq command-line option described above. .\"# .\" %ENDIF OS Solaris .\"# .\" %IF OS Cygwin .\"# .PP .\"# The Cygwin Version of \fBsmartd\fP can be run as a service via the .\"# cygrunsrv tool. .\"# .\"# .\" %IF ENABLE_INITSCRIPT .\"# .\"# The start-up script provides Cygwin-specific commands to install and .\"# .\"# remove the service: .\"# .\"# .br .\"# .\"# .B /usr/local/etc/rc.d/init.d/smartd install [options] .\"# .\"# .br .\"# .\"# .B /usr/local/etc/rc.d/init.d/smartd remove .\"# .\"# .br .\"# .\"# The service can be started and stopped by the start-up script as usual .\"# .\"# (see \fBEXAMPLES\fP above). .\"# .\"# .\" %ENDIF ENABLE_INITSCRIPT .\"# .\" %ENDIF OS Cygwin .\"# .\" %IF OS Windows .\"# .PP .\"# On Windows, the log messages are written to the event log or to a file. .\"# See documentation of the \*(Aq\-l FACILITY\*(Aq option above for details. .\"# .PP .\"# On Windows, the following built-in commands can be used to control .\"# \fBsmartd\fP, if running as a daemon: .\"# .PP .\"# \*(Aq\fBsmartd status\fP\*(Aq \- check status .\"# .br .\"# \*(Aq\fBsmartd stop\fP\*(Aq \- stop smartd .\"# .br .\"# \*(Aq\fBsmartd reload\fP\*(Aq \- reread config file .\"# .br .\"# \*(Aq\fBsmartd restart\fP\*(Aq \- restart smartd .\"# .br .\"# \*(Aq\fBsmartd sigusr1\fP\*(Aq \- check disks now .\"# .br .\"# \*(Aq\fBsmartd sigusr2\fP\*(Aq \- toggle debug mode .\"# .PP .\"# The Windows Version of \fBsmartd\fP has buildin support for services: .\"# .PP .\"# \*(Aq\fBsmartd install [options]\fP\*(Aq installs a service .\"# named "smartd" (display name "SmartD Service") using the command line .\"# \*(Aq/INSTALLPATH/smartd.exe \-\-service [options]\*(Aq. .\"# This also installs smartd.exe as a event message file for the Windows .\"# event viewer. .\"# .PP .\"# This does not work if the option \*(Aq--warn-as-user=restricted\*(Aq is .\"# specified because the local \*(AqSYSTEM\*(Aq account cannot be restricted. .\"# The service must then be manually reconfigured to run as a another user .\"# which is a member of the local \*(AqAdministrator\*(Aq group. .\"# .PP .\"# \*(Aq\fBsmartd remove\fP\*(Aq can later be used to remove the service and .\"# event message entries from the registry. .\"# .PP .\"# Upon startup, the smartd service changes the working directory .\"# to its own installation path. If smartd.conf and blat.exe are stored .\"# in this directory, no \*(Aq\-c\*(Aq option and \*(Aq\-M exec\*(Aq directive .\"# is needed. .\"# .PP .\"# The debug mode (\*(Aq\-d\*(Aq, \*(Aq\-q onecheck\*(Aq) does not work if .\"# smartd is running as service. .\"# .PP .\"# The service can be controlled as usual with Windows commands \*(Aqnet\*(Aq .\"# or \*(Aqsc\*(Aq (\*(Aq\fBnet start smartd\fP\*(Aq, .\"# \*(Aq\fBnet stop smartd\fP\*(Aq). .\"# .PP .\"# Pausing the service (\*(Aq\fBnet pause smartd\fP\*(Aq) sets the interval .\"# between disk checks (\*(Aq\-i N\*(Aq) to infinite. .\"# .PP .\"# Continuing the paused service (\*(Aq\fBnet continue smartd\fP\*(Aq) resets the .\"# interval and rereads the configuration file immediately (like \fBSIGHUP\fP). .\"# The \*(AqPARAMCHANGE\*(Aq service control command (\*(Aq\fBsc control smartd .\"# paramchange\fP\*(Aq) has the same effect regardless of paused state. .\"# .PP .\"# Continuing a still running service (\*(Aq\fBnet continue smartd\fP\*(Aq without .\"# preceding \*(Aq\fBnet pause smartd\fP\*(Aq) does not reread configuration but .\"# checks disks immediately (like \fBSIGUSR1\fP). .\"# .\" %ENDIF OS Windows .Sp .SH "منطقه زمانی برچسب زمان لاگ (LOG TIMESTAMP TIMEZONE)" هنگامی که \fBsmartd\fP ورودی‌های لاگ را ثبت می‌کند، برچسب زمانی به آن‌ها اختصاص می‌دهد. برچسب‌های زمانی در منطقه زمانی محلی رایانه هستند که عموماً یا با استفاده از متغیر محیطی \*(Aq\fBTZ\fP\*(Aq یا با استفاده از یک فایل منطقه زمانی مانند \fB/etc/localtime\fP تنظیم می‌شود. ممکن است بخواهید در حین اجرای \fBsmartd\fP منطقه زمانی را تغییر دهید (مثلاً اگر لپ‌تاپ را به منطقه زمانی جدیدی ببرید و آن را بازراه‌اندازی نکنید). به دلیل وجود یک باگ در تابع \fBtzset\fP(3) بسیاری از کتابخانه‌های استاندارد C یونیکس، ممکن است برچسب‌های منطقه زمانی \fBsmartd\fP تغییر نکنند. برای برخی سیستم‌ها، \fBsmartd\fP این مشکل را \fIدر صورتی که\fP منطقه زمانی با استفاده از \fB/etc/localtime\fP تنظیم شده باشد دور خواهد زد. اگر منطقه زمانی با استفاده از متغیر \*(Aq\fBTZ\fP\*(Aq (یا فایلی که به آن اشاره می‌کند) تنظیم شده باشد، این راهکار دور زدن مشکل با \fIشکست مواجه می‌شود\fP. .Sp .SH "وضعیت خروج (EXIT STATUS)" وضعیت خروج (مقدار بازگشتی) برنامه \fBsmartd\fP می‌تواند مقادیر زیر را داشته باشد: .TP .B 0: راه‌اندازی موفقیت‌آمیز دیمن، یا کشته شدن \fBsmartd\fP توسط SIGTERM (یا در حالت اشکال‌زدایی، توسط SIGQUIT). .TP .B 1: خط فرمان تجزیه نشد (خطای تحلیل دستورات). .TP .B 2: یک خطای نگارشی (syntax error) در فایل پیکربندی وجود داشت. .TP .B 3: انشعاب (forking) دیمن با شکست مواجه شد. .TP .B 4: امکان ایجاد فایل PID وجود نداشت. .TP .B 5: فایل پیکربندی وجود ندارد (تنها همراه با گزینه \*(Aq\-c\*(Aq بازگردانده می‌شود). .TP .B 6: فایل پیکربندی وجود دارد، اما قابل خواندن نیست. .TP .B 8: حافظه \fBsmartd\fP در زمان راه‌اندازی به اتمام رسید. .TP .B 10: یک ناهماهنگی در ساختارهای داده داخلی \fBsmartd\fP یافت شد. این مورد هرگز نباید رخ دهد و ناشی از باگ در کدنویسی یا کامپایلر است. \fIلطفاً\fP چنین خطاهایی را به توسعه‌دهندگان smartmontools گزارش دهید؛ بخش «گزارش باگ‌ها» در زیر را ببینید. .TP .B 16: دستگاهی که صریحاً در .B /etc/smartd.conf فهرست شده است، قابل پایش نیست. .TP .B 17: برنامه \fBsmartd\fP هیچ دستگاهی برای پایش نیافت. این مقدار می‌تواند با یکی از گزینه‌های \*(Aq-q *nodev0*\*(Aq به \fB0\fP (موفقیت) تغییر یابد، در بالا ببینید. .TP .B 254: در حالت دیمن، \fBsmartd\fP یک سیگنال SIGINT یا SIGQUIT دریافت کرد. (توجه داشته باشید که در حالت اشکال‌زدایی، SIGINT همان اثر SIGHUP را دارد و باعث بارگذاری مجدد فایل پیکربندی توسط \fBsmartd\fP می‌شود. SIGQUIT همان اثر SIGTERM را دارد و باعث خروج \fBsmartd\fP با وضعیت صفر می‌شود). .TP .B 132 و بالاتر برنامه \fBsmartd\fP توسط سیگنالی که صریحاً در بالا ذکر نشده کشته شده است. وضعیت خروج در این حالت برابر ۱۲۸ به علاوه شماره سیگنال خواهد بود. برای مثال اگر \fBsmartd\fP توسط SIGKILL (سیگنال ۹) کشته شود، وضعیت خروج ۱۳۷ خواهد بود. .Sp .\" %IF NOT OS Windows .SH "فایل‌ها (FILES)" .TP .B /usr/bin/smartd مسیر کامل این فایل اجرایی. .TP .B /etc/smartd.conf فایل پیکربندی (صفحه راهنمای \fBsmartd.conf\fP(5) را ببینید). .TP .B /usr/share/smartmontools/smartd_warning.sh اسکریپتی که هنگام بروز هشدارها اجرا می‌شود (گزینه \*(Aq\-w\*(Aq در بالا و دستورالعمل \*(Aq\-M exec\*(Aq در صفحه راهنمای \fBsmartd.conf\fP(5) را ببینید). .\" %IF ENABLE_SMARTDPLUGINDIR .TP .B /usr/share/smartmontools/smartd_warning.d/ دایرکتوری افزونه‌ها برای اسکریپت هشدار smartd (دستورالعمل \*(Aq\-m\*(Aq در صفحه راهنمای \fBsmartd.conf\fP(5) را ببینید). .\" %ENDIF ENABLE_SMARTDPLUGINDIR .\" %IF ENABLE_DRIVEDB .TP .B /usr/share/smartmontools/drivedb.h پایگاه‌داده درایو (گزینه \*(Aq\-B\*(Aq را ببینید). .\" %ENDIF ENABLE_DRIVEDB .TP .B /etc/smart_drivedb.h پایگاه‌داده محلی اختیاری درایو (گزینه \*(Aq\-B\*(Aq را ببینید). .Sp .\" %ENDIF NOT OS Windows .SH "نویسندگان (AUTHORS)" \fBBruce Allen\fP (بنیان‌گذار پروژه)، .br \fBChristian Franke\fP (مدیر پروژه، پورت ویندوز و وظایف دیگر)، .br \fBDouglas Gilbert\fP (زیرسیستم SCSI)، .br \fBVolker Kuhlmann\fP (مدیر فهرست پستی پشتیبانی و پایگاه‌داده)، .br \fBGabriele Pohl\fP (پشتیبانی ویکی و تیم توسعه)، .br \fBAlex Samorukov\fP (پورت FreeBSD و موارد دیگر، ویکی جدید Trac). .PP بسیاری از افراد دیگر مشارکت‌ها و اصلاحاتی انجام داده‌اند؛ فایل‌های AUTHORS، ChangeLog و فایل‌های مخزن را ببینید. .PP نخستین کدهای smartmontools از بسته smartsuite، نوشته شده توسط Michael Cornwell و Andre Hedrick مشتق شده بود. .Sp .SH "گزارش باگ‌ها (REPORTING BUGS)" برای ارسال گزارش باگ، در ویکی smartmontools یک تیکت ثبت کنید: .br <\fBhttps://www.smartmontools.org\fP>. .br یا اطلاعات را به فهرست پستی پشتیبانی smartmontools بفرستید: .br <\fBhttps://listi.jpberlin.de/mailman/listinfo/smartmontools-support\fB>. .Sp .SH "همچنین ببینید (SEE ALSO)" \fBsmartd.conf\fP(5)، \fBsmartctl\fP(8). .\" %IF ENABLE_UPDATE_SMART_DRIVEDB .br \fBupdate-smart-drivedb\fP(8). .\" %ENDIF ENABLE_UPDATE_SMART_DRIVEDB .\" %IF ENABLE_SYSTEMD_NOTIFY .br \fBsystemd.exec\fP(5). .\" %ENDIF ENABLE_SYSTEMD_NOTIFY .Sp .SH "مراجع (REFERENCES)" لطفاً برای اطلاعات بیشتر به وب‌سایت زیر مراجعه فرمایید: <\fBhttps://www.smartmontools.org\fP> .PP یک مقاله مقدماتی درباره smartmontools مقاله \fIMonitoring Hard Disks with SMART\fP، نوشته Bruce Allen در Linux Journal، ژانویه ۲۰۰۴، صفحات ۷۴\(en۷۷ است. ببینید: <\fBhttps://www.linuxjournal.com/article/6983\fP>. .PP اگر مایلید چگونگی عملکرد SMART و وظایف آن را بهتر درک کنید، نقطه شروع مناسب بخش‌های ۴.۸ و ۶.۵۴ از جلد اول مشخصات \*(AqAT Attachment with Packet Interface-7\*(Aq (ATA/ATAPI-7) نسخه 4b است. این بخش کارکرد SMART را که ابزارهای \fBsmartmontools\fP امکان دسترسی به آن را فراهم می‌آورند مستند می‌کند. .PP عملکرد SMART در ابتدا با مشخصات SFF-8035i ویرایش ۲ و SFF-8055i ویرایش ۱.۴ تعریف شد. این‌ها نشریات کمیته Small Form Factors (SFF) هستند. .PP پیوندهای مربوط به این اسناد و سایر مدارک را می‌توان در صفحه پیوندهای ویکی \fBsmartmontools\fP در <\fBhttps://www.smartmontools.org/wiki/Links\fP> یافت. .Sp .SH "نسخه بسته (PACKAGE VERSION)" smartmontools-7.5 2025-04-30 r5714 .br $Id: smartd.8.in 5693 2025-04-22 12:00:11Z chrfranke $