From ce8ee8c8a65072ce09b49db1f54d561f397f32e8 Mon Sep 17 00:00:00 2001 From: hexenmeister Date: Tue, 16 Jan 2018 23:07:56 +0000 Subject: [PATCH] fix: Falsche Angabe von Ram free / used bei Debian Stretch git-svn-id: https://svn.fhem.de/fhem/trunk@15910 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/42_SYSMON.pm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/fhem/FHEM/42_SYSMON.pm b/fhem/FHEM/42_SYSMON.pm index c85a74cac..c8c64868b 100644 --- a/fhem/FHEM/42_SYSMON.pm +++ b/fhem/FHEM/42_SYSMON.pm @@ -2263,7 +2263,11 @@ sub SYSMON_getRamAndSwap($$) { if($hash->{helper}->{excludes}{'ramswap'}) {return $map;} #my @speicher = qx(free -m); - my @speicher = SYSMON_execute($hash, "LANG=en free"); + #my @speicher = SYSMON_execute($hash, "LANG=en free"); + my $free_version = SYSMON_execute($hash, 'free -V'); + $free_version =~ s/\D//g; + my @speicher = SYSMON_execute($hash, 'LANG=en ' . ($free_version > 339 ? 'free -w' : 'free')); + if(!@speicher) { return $map; @@ -2312,7 +2316,8 @@ sub SYSMON_getRamAndSwap($$) { } #$used_clean = $used - $buffers - $cached; #$ram = sprintf("Total: %.2f MB, Used: %.2f MB, %.2f %%, Free: %.2f MB", $total, $used_clean, ($used_clean / $total * 100), ($free + $buffers + $cached)); - if ($total > 2048) { + #if ($total > 2048) { + if ($free_version > 339) { $used_clean = $used; $ram = sprintf("Total: %.2f MB, Used: %.2f MB, %.2f %%, Free: %.2f MB", $total, $used_clean, ($used_clean / $total * 100), ($free)); } else {