Symcon auf Linux System 'cd' geht nicht

Hallo,

habe auf einem neu installierten Linux Mint System Symcon laufen.

Ich versuche nun von Symcon aus ein Bash-Script aufzurufen.
Ein ls -l zeigt immer auf das scripts Verzeichnis.
Ein exec auf /home/delete_old_backup.sh wird nicht ausgeführt, auch ein cd auf ein anderes Verzeichnis funktioniert aus symcon nicht.

Kopiere ich das Bash Script nach /var/lib/symcon/scripts mache es ausführbar, kann ich es ohne Problem aus Symcon starten.

EDIT: Wenn ich zuvor bash und den Pfad zum /home Verzeichnis setze, geht es :slight_smile:

Nun meine Frage… warum kann ich aus Symcon nicht das Verzeichnis wechseln via ‚cd‘
wechseln?

Vermutlich fehlt mir Linux Wissen warum es aus Symcon nicht geht…

Zeig mal den vollständigen PHP Code. Jedes exec ist ein eigener Context.
Sowas wie
exec(‚cd /home/user/ && sh runscript.sh‘); könnte gehen. Ich würde ein kleines Script inkl. Magic Bytes (#!/bin/bash) schreiben und dieses ausführen.

Ja ich mach’s jetzt mit dem bash voran und trigger mein Script an



// diese Variante geht
 //$Return = exec("bash /home/delete_old_backup.sh >> /var/log/myCronLog.log");

// diese Variante geht nicht
//$Return = exec("cd/home/ && sh delete_old_backup.sh");

// diese Variante geht auch nicht
//$Return = exec("cd /home/ && bash delete_old_backup.sh");

sh kennt er nicht, weil er keinen Suchpfad (vmtl. liegt sh unter /usr/bin/sh) hat. Bash erst im 2. Schritt zu starten geht nicht, weil er dabei den Pfadwechsel nicht mitnimmt. Hast du im SH-Script denn den Magic-Byte gesetzt?

Ich weiß leider nicht was das genau ist, hab’s versucht nachzulesen versteh es aber nicht ganz…

die erste Zeile hat gefehlt… #!/bin/bash ist das das fehlende magic byte?

#!/bin/bash

oldbackups=5 

echo -e "*********************************************************************\n"
date_stamp=$(date +"%F-%H:%M:%S")
echo $date_stamp

echo -e "Folgende Dateien wurden geloescht\n"

find /mnt/Survaillance_USB/01_DailyBackup/ -mtime +$oldbackups -type f -exec ls {} \;

echo -e "*********************************************************************\n"
 find /mnt/Survaillance_USB/01_DailyBackup/ -mtime +$oldbackups -type f -exec rm {} \;