Ferramenta de monitoramento em tempo real para o NAS WD ShareSpace — dispositivo legado com kernel ARM 2.6.12.6 e PHP 4.4.2.
O WD ShareSpace é um NAS (Network Attached Storage) antigo que não possui suporte oficial a agentes de monitoramento modernos. Este projeto oferece uma solução leve e compatível para monitorar o dispositivo em tempo real diretamente pelo navegador, além de integração com o Zabbix via HTTP Agent.
| Arquivo | Descrição |
|---|---|
wd_sharespace_monitor.php |
Página de monitoramento em tempo real (interface web + endpoint Zabbix/JSON) |
zabbix_template_wd_sharespace.yaml |
Template Zabbix 7.0 com itens, triggers e alertas pré-configurados |
- Sistema — Hostname, Kernel, Uptime, Load Average, Temperatura CPU e HDD
- Memória — Total, Usada, Livre e percentual de uso (com barra visual)
- Volumes / RAID — Status de cada volume md (RAID0/1/5/10/JBOD), estado dos discos membros e detecção de rebuild
- Armazenamento — Espaço total, usado e livre do volume principal (com barra visual)
- SMART Health — Status de saúde de cada disco físico (sda, sdb, sdc, sdd)
- Partições — Listagem completa de todos os pontos de montagem com uso detalhado
- Rede — Bytes recebidos (RX) e enviados (TX) pela interface principal
A página atualiza automaticamente a cada 60 segundos e mantém cache local de 55 segundos para não sobrecarregar o hardware limitado do dispositivo.
- Acesso administrativo ao painel web do WD ShareSpace
- Acesso SSH/SCP habilitado no dispositivo
- Cliente SSH/SCP no computador (ex:
ssh,scp, PuTTY, WinSCP)
1. Habilitar o acesso SSH no painel da Storage
Acesse o painel de administração do WD ShareSpace via navegador e habilite o acesso SSH nas configurações de administrador.
2. Conectar via SSH
ssh root@<IP_DA_STORAGE>Credenciais padrão de fábrica:
- Usuário:
root- Senha:
welc0me
3. Copiar os arquivos para a Storage
Em outro terminal (na sua máquina local), use SCP para transferir os arquivos:
scp wd_sharespace_monitor.php root@<IP_DA_STORAGE>:/proto/SxM_webui/
scp zabbix_template_wd_sharespace.yaml root@<IP_DA_STORAGE>:/proto/SxM_webui/4. Ajustar as permissões dos arquivos
De volta ao terminal SSH na Storage:
chmod a+x /proto/SxM_webui/wd_sharespace_monitor.php
chmod a+x /proto/SxM_webui/zabbix_template_wd_sharespace.yaml
⚠️ O servidor web interno (mini_httpd) executa arquivos.phpcomo CGI. O bit de execução é obrigatório para o funcionamento correto.
5. Acessar pelo navegador
http://<IP_DA_STORAGE>/wd_sharespace_monitor.php
O arquivo PHP expõe endpoints específicos para o Zabbix via parâmetro mode=zabbix:
http://<IP_DA_STORAGE>/wd_sharespace_monitor.php?mode=zabbix&metric=<METRICA>
Métricas disponíveis:
| Métrica | Descrição |
|---|---|
uptime |
Uptime em segundos |
load1 / load5 / load15 |
Load Average (1, 5 e 15 minutos) |
mem_total / mem_used / mem_free |
Memória em KB |
mem_percent |
Uso de memória em % |
disk_total / disk_used / disk_free |
Disco em KB |
disk_percent |
Uso de disco em % |
raid_status |
Status geral dos volumes RAID |
raid_md0_status / raid_md2_status |
Status individual por volume |
temp_cpu / temp_hdd |
Temperatura em °C |
net_rx_bytes / net_tx_bytes |
Tráfego de rede em bytes |
disk_health_sda ... disk_health_sdd |
Status SMART por disco |
Importar o template no Zabbix:
- Acesse Configuration → Templates → Import
- Selecione o arquivo
zabbix_template_wd_sharespace.yaml - Confirme a importação
- Vincule o template ao host do WD ShareSpace (use o IP como
{HOST.CONN})
O template inclui triggers pré-configuradas para alertas de:
- Storage offline (sem dados por 5 minutos) — HIGH
- Load Average alto — WARNING
- Temperatura CPU acima de 70°C — AVERAGE
- Memória acima de 90% — AVERAGE
- Disco acima de 80% — WARNING
- Disco acima de 90% — HIGH
- Status RAID degradado — HIGH
- Falha SMART em qualquer disco — HIGH
Para obter todos os dados coletados em formato JSON:
http://<IP_DA_STORAGE>/wd_sharespace_monitor.php?mode=json
- O script foi desenvolvido para ser compatível com PHP 4.4.2 (sem funções modernas)
- O servidor web
mini_httpdrequer que os headers HTTP sejam emitidos manualmente - O PATH do ambiente CGI é limitado; o script força
/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin - O cache de 55 segundos é armazenado em
/tmp/wd_monitor_cache.dat
The WD ShareSpace is a legacy NAS (Network Attached Storage) device with no official support for modern monitoring agents. This project provides a lightweight, fully compatible solution to monitor the device in real time via a web browser, along with Zabbix integration via HTTP Agent.
| File | Description |
|---|---|
wd_sharespace_monitor.php |
Real-time monitoring page (web interface + Zabbix/JSON endpoint) |
zabbix_template_wd_sharespace.yaml |
Zabbix 7.0 template with pre-configured items, triggers and alerts |
- System — Hostname, Kernel, Uptime, Load Average, CPU and HDD temperature
- Memory — Total, Used, Free and usage percentage (with visual bar)
- Volumes / RAID — Status of each md volume (RAID0/1/5/10/JBOD), member disk states and rebuild detection
- Storage — Total, used and free space on the main volume (with visual bar)
- SMART Health — Health status of each physical disk (sda, sdb, sdc, sdd)
- Partitions — Full listing of all mount points with detailed usage
- Network — Bytes received (RX) and transmitted (TX) on the primary interface
The page auto-refreshes every 60 seconds and keeps a local cache of 55 seconds to avoid overloading the device's limited hardware.
- Administrative access to the WD ShareSpace web panel
- SSH/SCP access enabled on the device
- An SSH/SCP client on your computer (e.g.
ssh,scp, PuTTY, WinSCP)
1. Enable SSH access on the Storage panel
Log in to the WD ShareSpace administration panel via browser and enable SSH access under the administrator settings.
2. Connect via SSH
ssh root@<STORAGE_IP>Default factory credentials:
- User:
root- Password:
welc0me
3. Copy the files to the Storage
In another terminal (on your local machine), use SCP to transfer the files:
scp wd_sharespace_monitor.php root@<STORAGE_IP>:/proto/SxM_webui/
scp zabbix_template_wd_sharespace.yaml root@<STORAGE_IP>:/proto/SxM_webui/4. Set file permissions
Back in the SSH terminal on the Storage:
chmod a+x /proto/SxM_webui/wd_sharespace_monitor.php
chmod a+x /proto/SxM_webui/zabbix_template_wd_sharespace.yaml
⚠️ The internal web server (mini_httpd) executes.phpfiles as CGI scripts. The execute bit is required for correct operation.
5. Access via browser
http://<STORAGE_IP>/wd_sharespace_monitor.php
The PHP file exposes specific endpoints for Zabbix via the mode=zabbix parameter:
http://<STORAGE_IP>/wd_sharespace_monitor.php?mode=zabbix&metric=<METRIC>
Available metrics:
| Metric | Description |
|---|---|
uptime |
Uptime in seconds |
load1 / load5 / load15 |
Load Average (1, 5 and 15 minutes) |
mem_total / mem_used / mem_free |
Memory in KB |
mem_percent |
Memory usage in % |
disk_total / disk_used / disk_free |
Disk space in KB |
disk_percent |
Disk usage in % |
raid_status |
Overall RAID volume status |
raid_md0_status / raid_md2_status |
Per-volume status |
temp_cpu / temp_hdd |
Temperature in °C |
net_rx_bytes / net_tx_bytes |
Network traffic in bytes |
disk_health_sda ... disk_health_sdd |
SMART status per disk |
Import the template into Zabbix:
- Go to Configuration → Templates → Import
- Select the
zabbix_template_wd_sharespace.yamlfile - Confirm the import
- Link the template to the WD ShareSpace host (use the device IP as
{HOST.CONN})
The template includes pre-configured triggers for:
- Storage offline (no data for 5 minutes) — HIGH
- High Load Average — WARNING
- CPU temperature above 70°C — AVERAGE
- Memory above 90% — AVERAGE
- Disk above 80% — WARNING
- Disk above 90% — HIGH
- Degraded RAID status — HIGH
- SMART failure on any disk — HIGH
To get all collected data in JSON format:
http://<STORAGE_IP>/wd_sharespace_monitor.php?mode=json
- The script was written for compatibility with PHP 4.4.2 (no modern functions used)
- The
mini_httpdweb server requires HTTP headers to be emitted manually - The CGI environment has a restricted PATH; the script forces
/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin - The 55-second cache is stored at
/tmp/wd_monitor_cache.dat
MIT License — feel free to use, modify and share.
