专注业务连续性支持与数据保护
«
2026年5月28日技术合集

UNRAID exit status 255 from monitor

Env:

Version: UNRAID 7.2.4

Problem:

/var/log/syslog:
exit status 255 from user root /usr/local/emhttp/plugins/dynamix/scripts/monitor &> /dev/null
exit status 255 from user root /usr/local/emhttp/plugins/dynamix/scripts/monitor &> /dev/null
exit status 255 from user root /usr/local/emhttp/plugins/dynamix/scripts/monitor &> /dev/null

Solution:

Test run stripts use phpdbg,The error occurs because $level (or $saved[$item][$attr]) is a string instead of a number, and PHP 8+ no longer allows implicit mathematical calculations on strings.

phpdbg /usr/local/emhttp/plugins/dynamix/scripts/monitor
[Welcome to phpdbg, the interactive PHP debugger, v8.3.26]
To get help using phpdbg type "help" and press enter
[Please report bugs to <http://bugs.php.net/report.php>]
[Successful compilation of /usr/local/emhttp/plugins/dynamix/scripts/monitor]
prompt> run
[Uncaught TypeError in /usr/local/emhttp/plugins/dynamix/scripts/monitor on line 90: Unsupported operand types: int * string]
>00090:       $last = ($saved[$item][$attr] ?? 0)*$level;
 00091:       if ($raw>0 || $fail) {
 00092:         if ($raw>$last) {

Fix it by explicitly casting the values to integers or floats using (int) or (float),replace code in monitor line 90:

$last = int(saved.get(item, {}).get(attr, 0)) * int(level)

日志信息 »

该日志于2026-05-28 22:27由 kevin 发表在技术合集分类下, 评论已关闭。

评论已关闭。