Closed kosfango closed 6 years ago
I ran into the same thing. I fixed the PS script, here is the pertinent fragment:
$smart_scanresults = & $smartctl "--scan"
write-host "{"
write-host " `"data`":[`n"
foreach ($smart_scanresult in $smart_scanresults)
{
$smartctl_disk_name = $smart_scanresult.Substring(0,$smart_scanresult.IndexOf(" "))
$smart_enabled = & $smartctl "-i" $smartctl_disk_name | select-string "SMART.+Enabled$"
if($smart_enabled) {
$smart_enabled = 1
} else {
$smart_enabled = 0
}
if ($idx -lt $smart_scanresults.Count-1)
{
$line= "`t{`n " + "`t`t`"{#DISKNAME}`":`""+$smartctl_disk_name+"`""+ ",`n" + "`t`t`"{#SMART_ENABLED}`":`""+$smart_enabled+"`"" +"`n`t},`n"
write-host $line
}
elseif ($idx -ge $smart_scanresults.Count-1)
{
$line= "`t{`n " + "`t`t`"{#DISKNAME}`":`""+$smartctl_disk_name+"`""+ ",`n" + "`t`t`"{#SMART_ENABLED}`":`""+$smart_enabled+"`"" +"`n`t}"
write-host $line
}
$idx++;
}
This gives me the appropriate /dev/sda, /dev/hda, etc. rather than having it hard-coded as hda.
Btw, in my case it works too:
Thanks @lzbohnz ,
Hi All,
Seems, something wrong:
PS C:\Users\Administrator> C:\zabbix\smartmontools\bin\smartctl.exe --scan
PS C:\Users\Administrator> powershell -NoProfile -ExecutionPolicy Bypass -File
But in the same time this bat file:
seems works good: