Перейти к содержанию

Рекомендуемые сообщения

Опубликовано (изменено)

Нашёл одну интересную статью в которой предлогается просматривать информацию SMART (температуру жёсткого диска, его модель, версию прошивки и др.) подключенного по USB жёсткого диска. Вся информация отображается в браузере и сохраняется в базу данных для последующего просмотра статистики за несколько дней. Для обновления информации используется планировщик задач cron.

Для снятия показаний SMART используется программа smartmontools, для учёта статистики и построения графиков - rrdtool. Всё это работает с помощью веб-сервера на базе lighttpd на основе скрипта smarthtml_0.8.2.

Скрипт получает данные из вывода smartctl, сравнивает их с сохранёнными значениями предыдущей проверки и создаёт html-страницу (/opt/share/www/smart.html) с таблицей атрибутов, отображая в ней последние изменения параметров. Также пишет в лог при изменении критически важных атрибутов и может отсылать сообщение по e-mail (sendmail).

Перед началом использования, естественно, необходимо установить smartmontools и rrdtool с помощью комманды:

opkg install smartmontools rrdtool

Сам скрипт нужно положить, к примеру, в /opt/usr/bin/smarthtml.sh (после этого не забыв: chmod +x /opt/usr/bin/smarthtml.sh). Затем добавить в cron для регулярного запуска.

Cron устанавливается с помощью комманды:

opkg install cron

После установки cron нужно отредактировать фаил crontab, который находится по адресу /opt/etc/crontab. В предлогаемой конфигурации файла crontab время обновления информации SMART равно 3 часам.

42 4 1 * * root /opt/bin/run-parts /opt/etc/cron.monthly    
# Read the information to the hard drive SMART #
10 */3 * * * /opt/usr/bin/smarthtml.sh

Далее нужно узнать как определяется в системе жёсткий диск, для этого нужно ввести комманду: smartctl --scan. В терминале можно посмотреть информацию смарт с помощью комманды: smartctl -a /dev/sdb. Чтоб узнать температуру жёсткого диска нужно ввести комманду: smartctl -d sat /dev/sdb -l scttemp |grep Temperature. Для просмотра более подробной информации о винчестере можно набрать комманду: smartctl --xall /dev/sdb.

~ # smartctl --scan
/dev/sdb -d sat # /dev/sdb [SAT], ATA device

~ # smartctl -a /dev/sdb
smartctl 6.5 2016-05-07 r4318 [mips-linux-2.6.22.15] (localbuild)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Family:     Western Digital AV
Device Model:     WDC WD3200BUCT-63TWBY0
Serial Number:    WD-WX11E33PU344
LU WWN Device Id: 5 0014ee 6ae1231e9
Firmware Version: 01.01A01
User Capacity:    320 072 933 376 bytes [320 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    5400 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS (minor revision not indicated)
SATA Version is:  SATA 2.6, 3.0 Gb/s
Local Time is:    Sat Oct  8 18:21:49 2016 YEKT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

При первом запуске (комманда sh /opt/usr/bin/smarthtml.sh) скрипт сам создаст каталог /opt/var/smarthtml/ и необходимые файлы для работы.

~ # sh /opt/usr/bin/smarthtml.sh
 + New dir /opt/var/smarthtml ...
 + New dir /opt/var/smarthtml/db ...
 + New dir /opt/var/smarthtml/log ...
 + New dir /opt/var/smarthtml/rrd ...
 + RRD DB /opt/var/smarthtml/rrd/sda.rrd was created...
~ #

Параметры вызова скрипта:

/opt/usr/bin/smarthtml.sh              # запуск основной процедуры выполнения (запускается cron'ом по расписанию)
/opt/usr/bin/smarthtml.sh resetwarn    # сброс предупреждения после изменения критического параметра
/opt/usr/bin/smarthtml.sh resetcount   # сброс счётчиков изменений параметров
/opt/usr/bin/smarthtml.sh makerrdgraph # только отрисовка графиков rrd без проверки SMART и без изменения данных
/opt/usr/bin/smarthtml.sh mailtest     # отправка тестового email (в случае использования e-mail оповещений)

Про cgi-модуль smarthtml.cgi... Он позволяет обновлять данные SMART прямо с веб-страницы в любой момент, что может быть удобно для мониторинга в реальном времени. Эта процедура не затрагивает rrd (rrd обновляется cron'ом по расписанию), а поэтому может производиться в любое время когда требуется получить текущие данные. Для работы модуля необходимо в настройках веб-сервера указать выполнение .cgi файлов с помощью /bin/sh.

Для lighttpd нужно установить модуль mod_cgi: opkg install lighttpd-mod-cgi

~ # opkg install lighttpd-mod-cgi
Installing lighttpd-mod-cgi (1.4.38-1) to root...
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/lighttpd-mod-cgi_1.4.38-1_keenle.ipk.
Installing lighttpd (1.4.38-1) to root...
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/lighttpd_1.4.38-1_keenle.ipk.
Installing libpcre (8.39-1) to root...
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/libpcre_8.39-1_keenle.ipk.
Configuring libpcre.
Configuring lighttpd.
Configuring lighttpd-mod-cgi.
~ #

Далее в конфиге модуля /opt/etc/lighttpd/conf.d/30-cgi.conf изменить строку  ".cgi" => "/opt/bin/perl",  на ".cgi" => "/bin/sh",

cgi.assign                 = ( ".pl"  => "/opt/bin/perl",
                               ".cgi" => "/bin/sh",
                               ".rb"  => "/opt/bin/ruby",
                               ".erb" => "/opt/bin/eruby",
                               ".py"  => "/opt/bin/python" )

Это изменение заставит сервер выполнять .cgi файлы программой /bin/sh. Сам smarthtml.cgi нужно положить в /opt/share/www/cgi-bin/ и разрешить на выполнение:

chmod +x /opt/share/www/cgi-bin/smarthtml.cgi.

Скрипте smarthtml.sh отредактировать и изменить параметр USE_CGI_MODULE=0  на USE_CGI_MODULE=1. Так же в этом скрипте стоит обратить внимание на параметр Devices (example for multiple devices: DEVICES="/dev/sda /dev/sdb /dev/sdc" Там дожна стоять буква соответствующая вашему винчестеру, в моём случае это b - DEVICES="/dev/sdb". Если подключен только 1 винчестер, то скоре всего это будет буква a.

### Devices (example for multiple devices: DEVICES="/dev/sda /dev/sdb /dev/sdc")
DEVICES="/dev/sdb"

Есть один нюанс с правами доступа... Доступ к дисковым устройствам (/dev/sda и пр.) доступен лишь пользователю root (admin), в случае если ваш веб-сервер запускается с правами суперюзера (что в принципе нехорошо, но для embedded-систем является обычным делом), то нет никаких проблем. Если же сервер, скажем, публичный и запускается с правами специально созданного непривелегированного юзера, то можно использовать утилиту sudo из Entware для работы cgi-сценария. В smarthtml.cgi нужно выставить USE_SUDO=1. Затем установить и настроить sudo:

~ # opkg install sudo
Installing sudo (1.8.14p3-1) to root...
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/sudo_1.8.14p3-1_keenle.ipk.
Configuring sudo.
~ #

Далее нужно отредактировать фаил sudoers ( /opt/etc/sudoers ). В оригинальной инструкции это предлагается сделать с помощью редактора vi используя комманду /opt/sbin/visudo. У меня почему то фаил не открылся для редактирования и я скопировал его на ПК, убрал атрибут "Только для чтения", отредактировал его с помощью Notepad++, сохранил изменения, вернул атрибут "Только для чтения" и вернул на прежнее место заменив старый фаил. В файле sudoers нужно добавить следующие строки (предположим, что веб-сервер запускается под юзером www) :

admin ALL=(ALL) ALL
www ALL=(admin) NOPASSWD:/opt/bin/smartctl, /opt/usr/bin/smarthtml.sh

Вторая строка разрешит пользователю www запускать /opt/bin/smartctl и /opt/usr/bin/smarthtml.sh с правами admin без ввода пароля (это важно!), что необходимо для выполнения .cgi сценария.
В случае успешной настройки при "клике" по ссылке "Check Now" в верхней части страницы таблица SMART должна обновиться вместе с датой последней проверки в заголовке таблицы.

В результате получится:

## User privilege specification
##
root ALL=(ALL) ALL
admin ALL=(ALL) ALL
www ALL=(admin) NOPASSWD:/opt/bin/smartctl, /opt/usr/bin/smarthtml.sh

 

Чтоб заработал планировщик cron нужно перезагрузить роутер или просто запустить cron вручную с помощью комманды: /opt/etc/init.d/S10cron start

~ # /opt/etc/init.d/S10cron start
 Starting cron...              already running.
~ #

smarthtml_0.8.2.tar.gz

Чтоб открыть страничку с информацией SMART нужно зайти по адресу \opt/share/www/ и открыть фаил smart.html

Выглядит результат примерно так:

wrbbqku5lk_tn.jpg

Изменено пользователем beowulf0208
  • Ответов 204
  • Создана
  • Последний ответ

Топ авторов темы

Опубликовано

Не знаю почему, но у меня обновление информации происходит только при ручном запуске скрипта: /opt/usr/bin/smarthtml.sh

Нашёл на одном сайте способ проверки работы cron.

В рамках тестирования работы cron в каталоге /opt/etc/cron.5mins размещаем тестовый файлик test.sh следующего содержания:

#!/bin/sh
date >> /tmp/crontest.txt


Не забываем сделать его исполняемым:


chmod 755 /opt/etc/cron.5mins/test.sh


Пробуем перезагрузить роутер, ждем около 15 минут. Затем смотрим в файл /tmp/crontest.txt, там должно быть время срабатывания скрипта, если это так, то cron работает. Пробовал комманду:

chmod +x /opt/etc/cron.5mins/test.sh

Но результата работы cron я так и не увидел. И ещё у меня не срабатывает кнопка Check Now в браузере, может кто-нибудь сможет это исправить?

 

Опубликовано
В 08.10.2016 в 18:47, beowulf0208 сказал:

Но результата работы cron я так и не увидел.

Если установлен обычный cron через opkg install cron, и файловая система на диске с поддержкой opkg ntfs или fat, то работать задачи из cron не будут.

Нужно поменять файловую систему на ext2/ext3 или установить crontab из busybox (п.2)

Опубликовано (изменено)
29 минут назад, gvan сказал:

Если установлен обычный cron через opkg install cron, и файловая система на диске с поддержкой opkg ntfs или fat, то работать задачи из cron не будут.

Нужно поменять файловую систему на ext2/ext3 или установить crontab из busybox (п.2)

У меня винчестер разделён на 2 раздела (NTFS и EXT3). На первом разделе размещена папка загрузок Transmission и aMule и ещё кое какие файлы, а на втором разделе (EXT3) установлен Entware. Установлен обычный cron.

Изменено пользователем beowulf0208
Опубликовано (изменено)
8 минут назад, beowulf0208 сказал:

а на втором разделе (EXT3) установлен Entware. Установлен обычный cron.

Хорошо. Покажите содержимое файлов /opt/etc/crontab и вывод команды:

ls -l /opt/etc/crontab
ls -l /opt/etc/cron.5mins/test.sh
ps | grep cron

Также в test.sh лучше написать

date >> /opt/tmp/crontest.txt

Также, с учетом того, что cron работает "поверх" основной системы, то свои логи в веб-интерфейсе роутера он не показывает. Желательно включить логирование через ng-syslog, тогда свои сообщения (в т.ч. и об ошибках cron будет бросать в /opt/var/log/messages).

Изменено пользователем gvan
Дополнение
Опубликовано
10 минут назад, gvan сказал:

Хорошо. Покажите содержимое файлов /opt/etc/crontab и вывод команды:


ls -l /opt/etc/crontab
ls -l /opt/etc/cron.5mins/test.sh

Также в test.sh лучше написать


date >> /opt/tmp/crontest.txt

 

~ # opkg install cron
Installing cron (4.1-3) to root...
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/cron_4.1-3_keenle.ipk.
Configuring cron.
~ # chmod +x /opt/etc/cron.5mins/test.sh
~ # sh /opt/etc/cron.5mins/test.sh
~ # /opt/etc/init.d/S10cron start
 Starting cron...              done.
~ # ls -l /opt/etc/crontab
-rw-------    1 root     root           492 Sep 14 16:30 /opt/etc/crontab
~ # ls -l /opt/etc/cron.5mins/test.sh
-rwxrwxrwx    1 root     root            29 Oct 10 13:24 /opt/etc/cron.5mins/test.sh
~ # ps | grep cron
 1037 root       920 S    cron -s
 1051 root      1576 S    grep cron
~ #

Опубликовано
1 минуту назад, beowulf0208 сказал:

Installing cron (4.1-3) to root

Вроде все нормально. Не хватает содержимого конф-файла /opt/etc/crontab

Опубликовано
5 минут назад, gvan сказал:

Вроде все нормально. Не хватает содержимого конф-файла /opt/etc/crontab

Спасибо за помощь. Теперь буду знать какие права должны быть у файлов. И ещё я похоже понял почему "мой" тестовый фаил не заработал, а Ваш работает.

Мой test.sh   date >> /tmp/crontest.txt

Ваш test.sh  date >> /opt/tmp/crontest.txt

Опубликовано
1 минуту назад, beowulf0208 сказал:

Спасибо за помощь

Пожалуйста. Т.е. в итоге заработало? 

Еще нужно не забывать в конце конф-файлов и текстовых скриптов добавлять пустую строку (иногда это может быть критично для нормального выполнения задач).

  • 1 год спустя...
Опубликовано (изменено)

не со всеми hdd работает :(

Unsupported USB bridge [0x13fd:0x1040 (0x106)

максимум, что "выжал":
 

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

 

~ # smartctl -a -d scsi /dev/sda
smartctl 6.6 2017-11-05 r4594 [mips-linux-3.4.113] (localbuild)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Vendor:               Initio
Product:              MK6026GAX
Revision:             1.06
User Capacity:        60,011,642,880 bytes [60.0 GB]
Logical block size:   512 bytes
Device type:          disk
Local Time is:        Sun Feb 18 22:37:08 2018 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

Device does not support Self Test logging
 

 

Изменено пользователем miltt
  • 3 недели спустя...
Опубликовано

Захотел добавить e-mail оповещение, но в Entware нет sendmail. Внес изменения в скрипт для работы с msmtp.

1. Устанавливаем msmtp:

opkg install msmtp

2. Правим файл /opt/etc/msmtprc

Для отправки с gmail.com у меня он выглядит так (закомментированные строки из него пропущены):

account default
logfile /opt/var/log/msmtp.log
    #эту строку можно не создавать, если не нужен логфайл
host smtp.gmail.com
port 587
tls on
tls_certcheck off
syslog LOG_MAIL
auth login
user e-mail@gmail.com
   #ваш аккаунт на gmail
password  ........    #пароль в аккаунт на gmail
from any_words_or_address    #любой адрес или слово, оно будет отправляться серверу как параметр From

3. Правим строки в файле скрипта /opt/usr/bin/smarthtml.sh

USE_MAIL=1

MAIL_RECIPIENT="recipient@gmail.com"     #здесь указываем на какой адрес будут отправляться уведомления

Следующие строки нужно закомментировать или удалить, они не нужны, т.к. openssl не используется, и он не установлен:

#OPENSSLCMD=`which openssl`
#if [ $USE_MAIL -eq 1 -a $? -ne 0 ]; then
#    echo " Error! openssl doesn't exists..." >&2
#    USE_MAIL=0
#fi

Меняем MTA c

MTA=`which sendmail`

на:

MTA=`which msmtp`

Меняем MTACMD на:

MTACMD="${MTA} -t $MAIL_RECIPIENT"

3. Сохраняем сделанные изменения и пробуем отправить тестовое уведомление:

/opt/usr/bin/smarthtml.sh mailtest

Если всё сделано правильно, то получаем тестовое уведомление на указанный адрес.

 

Опубликовано

На GitHub есть версия этого скрипта 1.0 в которой добавлено отображение информации о разделах и свободном месте диска.

https://github.com/gSpotx2f/smarthtml

Установка в принципе аналогична, только ещё fdisk нужно установить, чтобы использовать отображение сведений о разделе и указать правильный HTML_DIR:

HTML_DIR="/opt/share/www"
  • 1 год спустя...
Опубликовано (изменено)
В 14.03.2018 в 11:40, Albram сказал:

На GitHub есть версия этого скрипта 1.0 в которой добавлено отображение информации о разделах и свободном месте диска.

https://github.com/gSpotx2f/smarthtml

Установка в принципе аналогична, только ещё fdisk нужно установить, чтобы использовать отображение сведений о разделе и указать правильный HTML_DIR:


HTML_DIR="/opt/share/www

Сделал всё по инструкции, но не работает график температур

.

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

graf.thumb.JPG.6ddebd81201ee421919519037a408842.JPG

 

и..мгновенное обновление

chek.JPG.8b5777e91ec7442418f188dea5299861.JPG

За обновление не жалко, а вот график критичен.. С чем может быть проблема?

Изменено пользователем X-MATSE
Опубликовано (изменено)
В 16.03.2019 в 02:23, X-MATSE сказал:

Сделал всё по инструкции, но не работает график температур

.и..мгновенное обновление

За обновление не жалко, а вот график критичен.. С чем может быть проблема?

В скрипте /opt/usr/bin/smarthtml.sh использование rrd и cgi задается параметрами:

### 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

Проверьте эти параметры.

Также при первом запуске скрипта должны были создаться каталоги:

/opt/var/smarthtml
 /opt/var/smarthtml/db
 /opt/var/smarthtml/log
 /opt/var/smarthtml/rrd

и файл:
 /opt/var/smarthtml/rrd/sda.rrd

Каталог скрипта cgi (для запуска проверки вручную со страницы), картинки графика и сам html файл страницы лежат здесь:

~ # ls -l /opt/share/www/
drwxr-xr-x    2 root     root          1024 Oct 16 00:08 cgi-bin
-rw-r--r--    1 root     root         30307 Mar 17 12:10 sdb_smart194_-14days.png
-rw-r--r--    1 root     root         30525 Mar 17 12:10 sdb_smart194_-30days.png
-rw-r--r--    1 root     root         37439 Mar 17 12:10 sdb_smart194_-365days.png
-rw-r--r--    1 root     root         25929 Mar 17 12:10 sdb_smart3_-14days.png
-rw-r--r--    1 root     root         23785 Mar 17 12:10 sdb_smart3_-30days.png
-rw-r--r--    1 root     root         25338 Mar 17 12:10 sdb_smart3_-365days.png
-rw-r--r--    1 root     root         20975 Mar 17 12:10 smart.html

Смотрите что у вас не так.



Изменено пользователем Albram
Опубликовано (изменено)
3 часа назад, Albram сказал:

### 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

В моём случае :

### 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 часа назад, Albram сказал:

Также при первом запуске скрипта должны были создаться каталоги:

Всё есть.


Вроде всё так.. 

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

smart.JPG.0837fe30f647b167faa0720711bde322.JPG

А можете кинуть сам скрипт smarthtml.sh и  smarthtml.cgi

Думаю, что криво работает 
rrdtool или smartmontools 

И меня очень напряг этот этап: 

 

В 08.10.2016 в 18:38, beowulf0208 сказал:

".cgi" => "/opt/bin/perl",  на ".cgi" => "/bin/sh",

Разве не на orp/bin/sh нужно переименовать...?

Благодарю за помощь!

Изменено пользователем X-MATSE
Опубликовано
Скрытый текст

 


➜ ssh root@192.168.861.291 -p 222222
root@192.168.861.291's password: 
-bash-4.4# 
-bash-4.4# /bin/sh -h
NDM Shell Wrapper, version 1.0.7
Copyright (C) 2015 NDM Systems, Inc.

Usage:
  sh                        - start ndm CLI session
  sh script-file [args...]  - run script-file via /opt/bin/sh
  sh -c command             - run command via /opt/bin/sh or execvp()
-bash-4.4# 
-bash-4.4# /bin/sh
Login: admin
Password: *****
(config)> 

           system - maintenance functions
              ntp - configure NTP
         schedule - schedule configuration
            known - manage lists of known network objects
      access-list - configure network access lists
             user - configure user account
           dyndns - configure DynDns profiles
             ndns - configure NDNS
        interface - network interface configuration
               ip - configure IP parameters
              ppe - Packet Processing Engine configuration
    igmp-snooping - configure IGMP snooping
             snmp - configure SNMP service
          service - manage services
             cifs - manage CIFS service
        dns-proxy - manage DNS proxy service
              mws - manage Modular Wi-Fi System
           whoami - display info about the current management session
          printer - printer configuration
             more - view text file
               ls - list directory contents
             copy - copy files
            erase - erase file or empty directory
            mkdir - create a new directory
           access - set user access for directory
          monitor - manage monitor services
             show - display various diagnostic information
            tools - tools for testing the environment
             opkg - Open Package configuration
          bwmeter - bandwidth meter
       components - manage firmware components
            cloud - manage cloud services

(config)> exit
Core::Configurator: Bye.
-bash-4.4#
-bash-4.4# /bin/sh /opt/etc/init.d/S10crond restart
 Shutting down crond...              done. 
 Starting crond...              done. 
-bash-4.4# 
-bash-4.4# /bin/sh -c /opt/bin/sh

BusyBox v1.29.2 () built-in shell (ash)

~ # exit
-bash-4.4#  

 

 

37 минут назад, X-MATSE сказал:

Разве не на orp/bin/sh нужно переименовать...?

с одной стороны - без разницы, с другой - неизвестно, что может принести очередное обновление

Опубликовано
2 минуты назад, Kiborg_Man сказал:

строки относящиеся к температуре нужно скорректировать под конкретный диск.

Так он темпиратуру считывает нормально! Только вот график не строит(

 

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

1878481192_smarthtml.thumb.JPG.f9047b1ac06c43eee2bee29e149746ff.JPG

 

Опубликовано
1 минуту назад, X-MATSE сказал:

Так он темпиратуру считывает нормально! Только вот график не строит(

На вашем скрине в корне web сервера есть файлы png для построения картинки графика, т.е. rrdtool отработал.

А вот почему он не отображается, это уже другой вопрос. Посмотрите что у вас в этой части smarthtml.sh

SCRIPT_ROOT="/opt/var/smarthtml"
DB_DIR="${SCRIPT_ROOT}/db"
LOG_DIR="${SCRIPT_ROOT}/log"
MTA_MSG_FILE="${SCRIPT_ROOT}/email"
HTML_DIR="/opt/share/www"
HTML_OUTPUT="${HTML_DIR}/smart.html"
CGI_MODULE_WWW_PATH="/cgi-bin/smarthtml.cgi"
RRD_DB_DIR="${SCRIPT_ROOT}/rrd"
RRD_DB_EXT="rrd"
RRD_GRAPH_DIR="$HTML_DIR"
RRD_GRAPH_WWW_PATH="."
RRD_GRAPH_TYPE="PNG"
RRD_GRAPH_EXT="png"
RRD_GRAPH_WIDTH=600
RRD_GRAPH_HEIGHT=240
 

Опубликовано
4 минуты назад, X-MATSE сказал:

Только вот график не строит(

В ручную скрипт запускали? Он выдал, что rrd база создана?

Опубликовано (изменено)
11 минуту назад, Albram сказал:

На вашем скрине в корне web сервера есть файлы png для построения картинки графика, т.е. rrdtool отработал.

Они пустые, увы...

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

 

 

sda_smart3_-14days.png.a934370ce2fcfde18bc225e5aa7fc3bc.pngsda_smart3_-30days.png.5e9bacb1bad0d78e2a7bee9ecba35fef.pngsda_smart3_-365days.png.a7155b9dffa1514f1fcc4b956bba5ef7.pngsda_smart194_-14days.png.53f58dd2a719d53a4674e01150c5b26b.pngsda_smart194_-30days.png.7969fb1440aca0bb8428bcb07619c9e4.pngsda_smart194_-365days.png.d6a71c1df96d01b590a57e5879ed1cc1.png

sda_smart3_-14days.png.a934370ce2fcfde18bc225e5aa7fc3bc.pngsda_smart3_-30days.png.5e9bacb1bad0d78e2a7bee9ecba35fef.pngsda_smart3_-365days.png.a7155b9dffa1514f1fcc4b956bba5ef7.pngsda_smart194_-14days.png.53f58dd2a719d53a4674e01150c5b26b.pngsda_smart194_-30days.png.7969fb1440aca0bb8428bcb07619c9e4.pngsda_smart194_-365days.png.d6a71c1df96d01b590a57e5879ed1cc1.png

 

 

Так что скорее всего  rrdtool

Изменено пользователем X-MATSE
Опубликовано
6 минут назад, Kiborg_Man сказал:

В ручную скрипт запускали? Он выдал, что rrd база создана?

Запускал, уже после первого запуска:


~ # /opt/usr/bin/smarthtml.sh start
df: /dev/sda2: can't find mount point
~ #

 

Опубликовано
9 минут назад, Albram сказал:

А вот почему он не отображается, это уже другой вопрос. Посмотрите что у вас в этой части smarthtml.sh

SCRIPT_ROOT="/opt/var/smarthtml"
DB_DIR="${SCRIPT_ROOT}/db"
LOG_DIR="${SCRIPT_ROOT}/log"
MTA_MSG_FILE="${SCRIPT_ROOT}/email"
HTML_DIR="/opt/share/www"
HTML_OUTPUT="${HTML_DIR}/smart.html"
CGI_MODULE_WWW_PATH="/cgi-bin/smarthtml.cgi"
RRD_DB_DIR="${SCRIPT_ROOT}/rrd"
RRD_DB_EXT="rrd"
RRD_GRAPH_DIR="$HTML_DIR"
RRD_GRAPH_WWW_PATH="."
RRD_GRAPH_TYPE="PNG"
RRD_GRAPH_EXT="png"
RRD_GRAPH_WIDTH=600
RRD_GRAPH_HEIGHT=240

Всё так же

Опубликовано

 

6 минут назад, X-MATSE сказал:

~ # /opt/usr/bin/smarthtml.sh start df:

/dev/sda2: can't find mount point

Имя диска правильно указано в скрипте, как на скрине /dev/sda ? А то бывает, что после переподключения sda и sdb местами меняются.

Опубликовано
7 минут назад, X-MATSE сказал:

Запускал, уже после первого запуска:



~ # /opt/usr/bin/smarthtml.sh start
df: /dev/sda2: can't find mount point
~ #

 

Вот и причина: 1) start не нужно; 2) путь к диску должен быть указан как /dev/sda

Опубликовано
1 минуту назад, Albram сказал:

Имя диска правильно указано в скрипте, как на скрине /dev/sda ? А то бывает, что после переподключения sda и sdb местами меняются.

Там два раздела.. sda1 и sda2, в 1 - файты и остальное, 2 - свап

Цитата
Device Boot Start End Sectors Size Id Type
/dev/sda1 no 2048 2928228351 2928226304 1.4T 83 Linux
/dev/sda2 no 2928228352 2930276351 2048000 1000M 82 Linux swap / Solaris

 

3 минуты назад, Kiborg_Man сказал:

1) start не нужно

Логи не меняются
 

 

3 минуты назад, Kiborg_Man сказал:

путь к диску должен быть указан как /dev/sda

############################## Settings ################################
### Devices (example for multiple devices: DEVICES="/dev/sda /dev/sdb /dev/sdc")
DEVICES="/dev/sda"

Всё так

Опубликовано
1 час назад, X-MATSE сказал:

А можете кинуть сам скрипт smarthtml.sh и  smarthtml.cgi

smarthtml.cgi

smarthtml.sh

Вот мои файлы.

А вы с правами как в конце инструкции написано (где про sudo) ничего не делали?

Опубликовано
6 минут назад, Albram сказал:

А вы с правами как в конце инструкции написано (где про sudo) ничего не делали?

Нет, а зачем? У меня же не сервак.

Повторюсь - у меня графики пустые создаются в папке www? тут корень проблемы(

-----

Заменил файлы на ваши и, о чуда, появилось!

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

sda_smart194_-14days.png.80aa26224d471cd4d3ba6867e1b5168f.png

Спасибо всем за участие! А что скрипт обновы не работает - это не важно!

Опубликовано
4 минуты назад, X-MATSE сказал:

Нет, а зачем? У меня же не сервак.

Ну мало ли, может вы с правами что-то сделали, потому, например, и не работало.

 

5 минут назад, X-MATSE сказал:

Заменил файлы на ваши и, о чуда, появилось!

Осталось найти разницу))

Опубликовано
20 часов назад, Albram сказал:

Ну мало ли, может вы с правами что-то сделали, потому, например, и не работало.

А есть программа для анализа 2-х файлов на несоответствие?
 

Глянул в логи загрузки, а там..
 

Mar 18 13:24:30 root: Failed to start lighttpd from .

Т е при включении он не стартует таки

Опубликовано

#offtop

1 час назад, X-MATSE сказал:

А есть программа для анализа 2-х файлов на несоответствие?

пакет `diffutils`

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.