ich würde gerne ein oscamchk Script haben das prüft, ob oscam läuft oder nicht.
Falls nicht via crontab dann entsprechend neustarten.
Im Skript habe ich folgendes stehen:
Problem scheint das wenn oscam bei mir startet ich 2 Prozess Id´s zurück kommt:
ps -e | grep oscam
7747 ? 00:00:00 oscam
7748 ? 00:00:00 oscam
Bash:
sudo systemctl status oscam
● oscam.service - OScam
Loaded: loaded (/etc/systemd/system/oscam.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2019-04-28 11:10:17 CEST; 5min ago
Process: 7736 ExecStop=/usr/bin/rm /var/run/oscam.pid (code=exited, status=203/EXEC)
Process: 7746 ExecStart=/usr/local/bin/oscam -b -B /var/run/oscam.pid (code=exited, status=0/SUCCESS)
Main PID: 7748 (oscam)
Tasks: 27 (limit: 4915)
CGroup: /system.slice/oscam.service
├─7747 /usr/local/bin/oscam -b -B /var/run/oscam.pid
└─7748 /usr/local/bin/oscam -b -B /var/run/oscam.pid
Bash:
#!/bin/bash
if [ ! $(ps -e | grep "oscam") ]; then
systemctl start oscam
fi
Beim ausführen des Scripte bekomme ich dann zuück:
/etc/systemd/system# /usr/local/bin/oscamchk
/usr/local/bin/oscamchk: line 3: [: too many arguments
Es liegt daran das zwei Prozess Id´s gefunden werden.
Hat jemand eine Ahnung wie ich das beheben kann das "Ps" nur einmal oscam findet?
bei einem "ps ax | grep oscam" wird auch immer der eigene "grep"-Prozess gefunden, sagt also nicht unbedingt etwas aus. Schau mal, ob dir "pgrep" zur Verfügung steht, falls nicht, schaue dir unten die Lösung per "grep" an.
Hallo zusammen, ich musste leider nach einem HDD-Crash meinen Debian Card-Server neu aufsetzen. Leider habe ich noch ein Problem mit dem automatischen Starten on OScam Meine Oscam liegt unter: usr/local/bin Start Script liegt unter: etc.init.d und heisst oscam mit Rechten 755 Ausgabe...