73_PRESENCE.pm - Patch für ping mittels sudo

Begonnen von CoolTux, 20 November 2021, 07:23:57

Vorheriges Thema - Nächstes Thema

CoolTux

Hallo Markus,

Auf aktuellen Debian Systemen scheinen normale User keine Rechte mehr für /bin/ping zu haben.
Fehlermeldung:
ping: socket: Die Operation ist nicht erlaubt


Anbei ein kleiner Patch

--- Programmieren/Perl/Projekte/FHEM/fhem-code/FHEM/73_PRESENCE.pm      2021-02-14 21:23:55.942375247 +0100
+++ tmp/73_PRESENCE.pm  2021-11-20 07:14:58.193149227 +0100
@@ -51,6 +51,7 @@ PRESENCE_Initialize($)
                         "disabledForIntervals ".
                         "fritzboxCheckSpeed:0,1 ".
                         "pingCount:1,2,3,4,5,6,7,8,9,10 ".
+                        "pingPerSUDO:0,1 ".
                         "bluetoothHciDevice ".
                         "absenceThreshold ".
                         "presenceThreshold ".
@@ -778,6 +779,7 @@ sub PRESENCE_DoLocalPingScan($)
     my $retcode;
     my $return;
     my $temp;
+    my $pingCmd = (AttrVal($name,'pingPerSUDO',0) == 1 ? 'sudo ping' : 'ping');

     $SIG{CHLD} = 'IGNORE';

@@ -814,7 +816,7 @@ sub PRESENCE_DoLocalPingScan($)
     }
     else
     {
-        $temp = qx(ping -c $count $device 2>&1);
+        $temp = qx($pingCmd -c $count $device 2>&1);

         if(defined($temp) and $temp ne "")
         {




Grüße
Marko
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

MadMax-FHEM

Bei mir hat:


sudo setcap 'cap_net_admin,cap_net_raw+ep' /bin/ping


geholfen...
Allerdings glaube ich kommt das ab und an bei irgendwelchen OS Updates "zurück"...
...also, dass "normale User" nicht mehr dürfen.

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

CoolTux

Das hätte auch geholfen, aber ich bin da eher für eine generelle Lösung.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net