Hallo zusammen,
ich habe ein Problem bei einem Shell Script, dass ich mir nicht erklären kann. Das Skript sieht im Wesentlichen aus, wie der nachstehende Schnipsel:
...
echo irgendEineMeldung > /opt/script/meldung.txt
...
echo Statusmeldung >> /opt/script/status.txt
...
Im Prinzip funktioniert das auch wie gewünscht: bei jedem Aufruf dieser Zeile wird die Datei meldung.txt aktualisiert und die Statusmeldung an die Datei status.txt angehängt. Jetzt habe ich dieses Script in die crontab eingetragen und führe es regelmäßig aus. Auch das sieht noch gut aus: jedesmal werden die beiden Dateien aktualisiert, bzw. der Text wird angehängt.
Nach einem Reboot des NAS passiert jetzt aber etwas, das ich mir nicht erklären kann: die Datei meldung.txt wird weiterhin aktualisiert, das sehe ich sowohl am Datum, als auch am Inhalt der Datei. Allerdings wird die Statusmeldung nicht mehr an die Datei status.txt angehängt, diese Datei wird nicht mehr aktualisiert. Die Befehle, die nach der Ausgabe der Statusmeldung kommen, werden korrekt ausgeführt. Melde ich mich jetzt wieder per SSH an und führe das Skript einmal per Hand aus, so werden beide Dateien wieder aktualisiert. Und von diesem Zeitpunkt an funktioniert das Skript auch über den cron Aufruf wieder richtig.
Es muss etwas mit dem Anhängen an die Datei zu tun haben, aber ich kann mir nicht erklären, was da schief läuft. In meiner Verzweiflung habe ich die Dateirechte schon rwxrwxrwx gesetzt. Aber auch das hat nichts gebracht, es kann also nicht an den Dateirechten liegen, zumal der cron ja auch als admin gestartet wird.
Vielleicht kann mir jemand die Augen öffnen, was an dieser Stelle schief läuft.
Grüße
mgrabo