Jump to content

Просмотр информации SMART (здоровья) подключенного жёсткого диска


Recommended Posts

В 18.05.2020 в 14:48, Albram сказал:

Если делать, тогда уж чтобы так было:

А чтобы совсем по феншую было, как в выводе команды df -hT (Filesystem это всё-таки одно слово, и название столбца Use% мне кажется более логичным, чем Capacity).

Скрытый текст

smart_2.png.a8ed83ad3497fc71f9f0fe2f932d4794.png

Я сделал так:

Скрытый текст

~ # diff /opt/usr/bin/smarthtml_old.sh /opt/usr/bin/smarthtml.sh
--- /opt/usr/bin/smarthtml_old.sh
+++ /opt/usr/bin/smarthtml.sh
@@ -65,1 +65,1 @@
-DF_CMD="df -h"
+DF_CMD="df -hT"
@@ -453,1 +453,1 @@
-            printf "<table class=\"info_table\">%s</table><br /><table class=\"info_table\">%s</table><br />\n<table class=\"info_table\"><tr class=\"infoarea\"><td align=\"left\">File system</td><td align=\"left\">Size</td><td align=\"left\">Used</td><td align=\"left\">Available</td><td align=\"left\">Capacity</td><td align=\"left\">Mounted on</td></tr>", disk_info_str, part_info_str >>HTML_OUTPUT;
+            printf "<table class=\"info_table\">%s</table><br /><table class=\"info_table\">%s</table><br />\n<table class=\"info_table\"><tr class=\"infoarea\"><td align=\"left\">Filesystem</td><td align=\"left\">Type</td><td align=\"left\">Size</td><td align=\"left\">Used</td><td align=\"left\">Available</td><td align=\"left\">Use%%</td><td align=\"left\">Mounted on</td></tr>", disk_info_str, part_info_str >>HTML_OUTPUT;
@@ -465,1 +465,1 @@
-                    fs_class=(i == 5 && raw_value >= FS_CAPACITY_LIMIT_WARNING) ? " class= \"degr\"" : "";
+                    fs_class=(i == 6 && raw_value >= FS_CAPACITY_LIMIT_WARNING) ? " class= \"degr\"" : "";
                     df_str=df_str"<td"fs_class" align=\"left\">"$i"</td>";

 

 

  • Upvote 1
Link to comment
Share on other sites

  • 3 weeks later...

Добрый день. Можно ли добавить в графики смарт атрибут 196 (Reallocated Event Count)? Если прописываю как параметр для мониторинга в скрипт, то ругается на отсутствие параметра в rrd.

Link to comment
Share on other sites

23 часа назад, Александр Грищенко сказал:

Добрый день. Можно ли добавить в графики смарт атрибут 196 (Reallocated Event Count)? Если прописываю как параметр для мониторинга в скрипт, то ругается на отсутствие параметра в rrd.

Можно добавить любой атрибут, но для его отображения понадобится заново создать rrd базу.

При создании новой базы все старые значения утратятся. Если вы ими дорожите, то нужно предварительно их сохранить, а затем можно будет вручную их перенести.

Edited by Albram
Link to comment
Share on other sites

9 hours ago, Albram said:

заново создать rrd базу.

Подробнее можно? сделать команду /opt/usr/bin/smarthtml.sh

9 hours ago, Albram said:

все старые значения утратятся

не проблема

Edited by Александр Грищенко
Link to comment
Share on other sites

17 часов назад, Александр Грищенко сказал:

Подробнее можно? сделать команду /opt/usr/bin/smarthtml.sh

Удалить или переместить файл /opt/var/smarthtml/rrd/sdb.rrd (или sda.rrd), после этого запустить скрипт /opt/usr/bin/smarthtml.sh

  • Upvote 1
Link to comment
Share on other sites

On 6/8/2020 at 11:37 AM, Albram said:

Удалить или переместить файл /opt/var/smarthtml/rrd/sdb.rrd (или sda.rrd), после этого запустить скрипт /opt/usr/bin/smarthtml.sh

Сделал, посмотрю как будет себя вести.

Link to comment
Share on other sites

Здравствуйте. Есть ли какая программа под вин способная по сети считать смарт, температуру диска? Пробовал следовать советов в теме, но в какой то момент запутался и энтузиазм иссяк, в том числе что все наработки и советы не систематизированы в каком-то одном посте. 

Link to comment
Share on other sites

29 минут назад, vai73 сказал:

Пробовал следовать советов в теме, но в какой то момент запутался и энтузиазм иссяк, в том числе что все наработки и советы не систематизированы в каком-то одном посте. 

Всё в первом посте, остальные нужно читать если возникает проблема или нужно ещё уведомление на email.

Link to comment
Share on other sites

Скрытый текст

~ # smartctl -a -d scsi /dev/sda
smartctl 7.1 2019-12-30 r5022 [mips-linux-4.9-ndm-4] (localbuild)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Vendor:               WD
Product:              Elements SE 25FF
Revision:             1018
Compliance:           SPC-4
User Capacity:        4,000,752,599,040 bytes [4.00 TB]
Logical block size:   512 bytes
Physical block size:  4096 bytes
LU is resource provisioned, LBPRZ=0
Rotation Rate:        5400 rpm
Form Factor:          2.5 inches
Serial number:        WX11DA94HR45
Device type:          disk
Local Time is:        Fri Jun 12 10:34:53 2020 MSK
SMART support is:     Unavailable - device lacks SMART capability.

=== START OF READ SMART DATA SECTION ===
Current Drive Temperature:     0 C
Drive Trip Temperature:        0 C

Error Counter logging not supported

No Self-tests have been logged

~ #

Я так понимаю, дальше можно не разбираться. Температур не видит.
 

 

Edited by vai73
Link to comment
Share on other sites

1 час назад, vai73 сказал:

Я так понимаю, дальше можно не разбираться. Температур не видит.

А если так:
~ # smartctl -a /dev/sda

  • Upvote 1
Link to comment
Share on other sites

@vai73, хочется усложнить себе жизнь? Вам многое придётся переписать в скрипте чтобы использовать другую команду.

Link to comment
Share on other sites

3 часа назад, vai73 сказал:

Попробую дальше поразбираться

А чего разбираться? SMART ваш диск отдает, т.е. скрипт у вас должен нормально работать.

Link to comment
Share on other sites

Полноценно заставить работать не получилось, ручное обновление не работает, графики не рисует, температуру начинает показывать при ручной команде /opt/usr/bin/smarthtml.sh. Где то ошибка. Каким образом выявить ошибку?

 

Screenshot_2020-06-14 S M A R T Html.png

Link to comment
Share on other sites

4 часа назад, vai73 сказал:

ручное обновление не работает, графики не рисует, температуру начинает показывать при ручной команде /opt/usr/bin/smarthtml.sh

1. Ручное обновление - смотреть в сторону cgi. Проверьте все действия на первой странице, начиная со слов "Для lighttpd нужно установить модуль mod_cgi: opkg install lighttpd-mod-cgi" и заканчивая "Скрипте smarthtml.sh отредактировать и изменить параметр USE_CGI_MODULE=0  на USE_CGI_MODULE=1".

2. Графики начинает рисовать не сразу, а спустя три часа, т.к. при первом запуске нет информации для построения графиков. К тому же, если не работает автоматическое обновление, то и после первого запуска информации для графиков неоткуда взяться.

3. По-поводу показа температур только после ручного запуска скрипта: смотрите командой crontab -e (если не сработает, то cat /opt/etc/crontab) что у вас в задании cron, и запущен ли cron (ps | grep cron).

Попробуйте в строку задания в crontab добавить имя пользователя, от которого будет запускаться, т.е., если сейчас там: "10 */3 * * * /opt/usr/bin/smarthtml.sh", то исправьте на "10 */3 * * * root /opt/usr/bin/smarthtml.sh"

  • Thanks 1
Link to comment
Share on other sites

по 1.

Скрытый текст

server.modules += ( "mod_cgi" )

##
## Plain old CGI handling
##
## For PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini.
##
cgi.assign                 = ( ".pl"  => "/opt/bin/perl",
                               ".cgi" => "/bin/sh",
                               ".rb"  => "/opt/bin/ruby",
                               ".erb" => "/opt/bin/eruby",
                               ".py"  => "/opt/bin/python" )

 

Скрытый текст

############################## Settings ################################
### Devices (example for multiple devices: DEVICES="/dev/sda /dev/sdb /dev/sdc")
DEVICES="/dev/sda"
### Disabled S.M.A.R.T. attributes (ex. vendor specific or unimportant attributes)
DISABLED_SMART_ATTRS="smart211 smart212 smart213 smart214 smart215 smart216 smart217 smart230"
### Temperature warning
TEMP_ALERT=50
### Auto reset warnings (0 - disable; 1 - enable)
WARN_AUTO_RESET=1
WARN_AUTO_RESET_DAYS=30
### Show SCT temperature history (0 - disable; 1 - enable)
TEMP_HISTORY=1
### Write S.M.A.R.T. changes to device log (0 - only critical warnings; 1 - all changes)
LOG_ALL=0
### Partitions info - fdisk support (0 - disable; 1 - enable)
USE_FDISK=1
### Capacity warning (in %)
FS_CAPACITY_LIMIT_WARNING=90
### Write critical warnings to syslog (0 - disable; 1 - enable)
USE_LOGGER=1
### E-mail support for critical warnings (0 - disable; 1 - enable)
USE_MAIL=1
### Mail settings:
MAIL_RECIPIENT="myaddr@mail.com"
#MAIL_SENDER="email@gmail.com"
#MAIL_LOGIN="email@gmail.com"
#MAIL_PASSWORD="password"
#MAIL_SMTP="smtp.gmail.com:25"
### RRD support (0 - disable; 1 - enable)
USE_RRD=1
### RRD database preset (1 - 30mins; 2 - 1hour; 3 - 3hours; 4 - 6hours; 5 - 12hours; 6 - 24hours)
RRD_DB_PRESET=3
### S.M.A.R.T. attributes for RRD
RRD_SMART_ATTRS="smart3 smart194" # Spin-up time & temperature
#RRD_SMART_ATTRS="smart194" # Only a temperature data for RRD
RRD_SMART_ATTR_DEF_PIC="smart194"
### CGI-module smarthtml.cgi (0 - disable; 1 - enable)
USE_CGI_MODULE=1

 

по п.3

Скрытый текст

~ # crontab -e

no crontab for root - using an empty one
/opt/bin/sh: /bin/vi: not found
crontab: "/bin/vi" exited with status 127
~ # cat /opt/etc/crontab
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/opt/bin:/opt/sbin
MAILTO=""
HOME=/
# ---------- ---------- Default is Empty ---------- ---------- #
42 4 1 * * root /opt/bin/run-parts /opt/etc/cron.monthly
# Read the information to the hard drive SMART #
10 */3 * * * root /opt/usr/bin/smarthtml.sh

~ # ps | grep cron
  792 root      4272 S    cron -s
 

 

 

Link to comment
Share on other sites

С виду здесь проблем нет.

Исполняемым файл cgi скрипта сделали?

ls -l /opt/share/www/cgi-bin/smarthtml.cgi

Раздел с Entware на какой файловой системе, не на ntfs случайно?

Edited by Albram
  • Thanks 1
Link to comment
Share on other sites

10 минут назад, Albram сказал:

ls -l /opt/share/www/cgi-bin/smarthtml.cgi

~ # ls -l /opt/share/www/cgi-bin/smarthtml.cgi
-rwxr-xr-x    1 root     root          1112 Jun 14 08:40 /opt/share/www/cgi-bin/smarthtml.cgi
~ #

 

15 минут назад, Albram сказал:

Раздел с Entware на какой файловой системе, не на ntfs случайно?

ext3 или 4,  конечно

Link to comment
Share on other sites

Для построения графика вручную запустите скрипт с параметром makerrdgraph

/opt/usr/bin/smarthtml.sh makerrdgraph

И посмотрите, появится ли график.

  • Thanks 1
Link to comment
Share on other sites

1 час назад, vai73 сказал:

ext3 или 4,  конечно

Заметил, что скрипт у вас, похоже, не последней версии.

В "шапке" скриптов smarthtml.sh и smarthtml.cgi версии одинаковые?

  • Thanks 1
Link to comment
Share on other sites

1 час назад, Albram сказал:

/opt/usr/bin/smarthtml.sh makerrdgraph

пусто

Уточнение - даты файлов sda_smart3_-14days.png и sda_smart3_-30days.png после ввода команды изменились на момент исполнения команды, smart.html и все остальные png в папке share\www\ "старые"

 

57 минут назад, Albram сказал:

В "шапке" скриптов smarthtml.sh и smarthtml.cgi версии одинаковые?


########################################################################
#
# S.M.A.R.T.Html v1.0 (c) 2018
#
# Author:   gSpot at wl500g.info
# License:  GPLv3
# Depends:      smartmontools
# Recommends:   rrdtool, sendmail, openssl
#
########################################################################

########################################################################
#
# This is a part of S.M.A.R.T.Html v1.0 (c) 2018
#
# Author:   gSpot at wl500g.info
# License:  GPLv3
# Depends:      smartmontools
# Recommends:   rrdtool, sendmail, openssl, sudo
#
########################################################################

 

Edited by vai73
уточнил
Link to comment
Share on other sites

24 минуты назад, vai73 сказал:

smart.html и все остальные png в папке share\www\ "старые"

Если это после запуска скрипта с параметром makerrdgraph, то smart.html и не должен переписываться. Остальные файлы переписываются по мере участия их в процессе отображения графиков.

Я про версию скрипта спросил, потому что в оригинальном скрипте версии 1.0 данная секция выглядит так:
 

Скрытый текст

### S.M.A.R.T. attributes for RRD
RRD_SMART_ATTRS="smart3 smart190 smart194"  # Spin-up time & temperature
#RRD_SMART_ATTRS="smart190 smart194"    # Only a temperature data for RRD
RRD_SMART_ATTR_DEF_PIC="smart190 smart194"

 

А вы выше выложили фрагмент, в котором нет параметра 190. Так было в более ранних версиях скрипта, или вы его сами отредактировали.
Может ещё что редактировали?
Приложите ваши скрипты smarthtml.sh и smarthtml.cgi, если это не тайна.

Link to comment
Share on other sites

2 часа назад, vai73 сказал:

конечно не тайна, пожалуйста

Да, у вас не совсем последняя версия скриптов. Вот попробуйте (я убрал атрибут 190, чтобы не было ошибки rrd из-за отсутствия его в вашей базе).

smarthtml.cgi smarthtml.sh

  • Thanks 1
Link to comment
Share on other sites

32 минуты назад, Albram сказал:

Вот попробуйте

Спасибо. Проверю,отпишусь.

ps

Цитата

~ #  /opt/usr/bin/smarthtml.sh makerrdgraph

ERROR: No DS called 'smart190' in '/opt/var/smarthtml/rrd/sda.rrd'
ERROR: No DS called 'smart190' in '/opt/var/smarthtml/rrd/sda.rrd'
ERROR: No DS called 'smart190' in '/opt/var/smarthtml/rrd/sda.rrd'
~ #

 

 

Edited by vai73
Link to comment
Share on other sites

31 минуту назад, vai73 сказал:

ERROR: No DS called 'smart190' in '/opt/var/smarthtml/rrd/sda.rrd'

Значит придется вернуть атрибут 190 на место в файле smarthtml.sh

вместо 

### S.M.A.R.T. attributes for RRD
RRD_SMART_ATTRS="smart3 smart194"  # Spin-up time & temperature
#RRD_SMART_ATTRS="smart190 smart194"    # Only a temperature data for RRD
RRD_SMART_ATTR_DEF_PIC="smart194"

сделайте:

### S.M.A.R.T. attributes for RRD
RRD_SMART_ATTRS="smart3 smart190 smart194"  # Spin-up time & temperature
#RRD_SMART_ATTRS="smart190 smart194"    # Only a temperature data for RRD
RRD_SMART_ATTR_DEF_PIC="smart190 smart194"

Удалите файл /opt/var/smarthtml/rrd/sda.rrd

И запустите скрипт.

Link to comment
Share on other sites

7 часов назад, Albram сказал:

Значит придется вернуть атрибут 190 на место в файле smarthtml.sh

вместо 

### S.M.A.R.T. attributes for RRD
RRD_SMART_ATTRS="smart3 smart194"  # Spin-up time & temperature
#RRD_SMART_ATTRS="smart190 smart194"    # Only a temperature data for RRD
RRD_SMART_ATTR_DEF_PIC="smart194"

сделайте:

### S.M.A.R.T. attributes for RRD
RRD_SMART_ATTRS="smart3 smart190 smart194"  # Spin-up time & temperature
#RRD_SMART_ATTRS="smart190 smart194"    # Only a temperature data for RRD
RRD_SMART_ATTR_DEF_PIC="smart190 smart194"

Удалите файл /opt/var/smarthtml/rrd/sda.rrd

И запустите скрипт.

А по моему  возращать ничего не нужно, нужно просто удалить файл /opt/var/smarthtml/rrd/sda.rrd и запустить скрипт.

У меня в скрипте лишние удалено и ошибок никаких не выдаёт.

Edited by Rootdiv
Link to comment
Share on other sites

4 часа назад, Rootdiv сказал:

У меня в скрипте лишние удалено и ошибок никаких не выдаёт.

А смысл удалять? Сэкономить около ста килобайт? Зато теряется часть универсальности. Например, если заменить, или добавить диск, поддерживающий 190-ый атрибут, то без правки скрипта и пересоздания базы он не будет отражаться, и при обновлении скрипта нужно помнить ещё один "пунктик" того, что нужно поправить.

Я раньше тоже удалял, но потом перестал, т.к. не вижу в этом особого смысла..

Edited by Albram
Link to comment
Share on other sites

1 час назад, Albram сказал:

А смысл удалять? Сэкономить около ста килобайт?

Нет, смысл в том, что если не удалить выводится ошибка, да и экономия если есть, то наверно несколько байт.

И правлю только пару строк, путь HTML_DIR и вместо

RRD_SMART_ATTRS="smart3 smart190 smart194"  # Spin-up time & temperature
#RRD_SMART_ATTRS="smart190 smart194"    # Only a temperature data for RRD

пишу

#RRD_SMART_ATTRS="smart3 smart190 smart194"  # Spin-up time & temperature
RRD_SMART_ATTRS="smart194"    # Only a temperature data for RRD

Так что вернуть обратно не трудно. Ну и для fdisk ставлю 0, cgi не настраиваю т.к. мне это не нужно.

P.S. Скрипт беру отсюда https://github.com/gSpotx2f/smarthtml

Edited by Rootdiv
Link to comment
Share on other sites

2 минуты назад, Rootdiv сказал:

Нет, смысл в том, что если не удалить выводится ошибка, да и экономия если есть, то наверно несколько байт.

Ошибка выводится, если до этого не использовался какой-то атрибут, и его нет в бд, а потом в настройках его включили. Тогда нужно пересоздавать базу.

Я когда переходил на последнюю версию скрипта, которая с поддержкой отдельного файла конфига в /opt/etc/smarthtml.conf, и оставил включенным 190-ый атрибут, то чтобы не было ошибки и не терять данные в базе за два года, просто вручную добавил в базу пустые значение 190-ого атрибута, т.к. диск у меня его всё равно не поддерживает. И никаких ошибок.

Около 5 килобайт прибавляет файл базы, и в районе 70кб весят пустые файлы графиков для 190-ого атрибута.

Я использую "глубину" просмотра графиков до 5 лет, раз уж всё равно в бд есть эти данные, то почему бы их не выводить. Потому у меня и получается разница практически 100кб.

RRD_GRAPH_START="-14days -30days -365days -1825days"    # + 5 years graph
 

  • Upvote 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...