Hallo,
nachdem ich inzwischen das Hochladen von Dateien beherrsche, möchte ich (Linux Einsteiger) die nächste Herausforderung meistern.
Beim Start des Raspberry starte ich ebenfalls ein bash-Skript, welches jede Sekunde aufwacht und ein wenig Schickschnack macht.
Ums genau zu sagen, das Script schaut sich jede Sekunde an, ob in irgendeiner Druckerqeue ein Druckjob angekommen ist, und aktiviert
gegebenenfalls über einen GPIO ein Relais, welches die Steckdose für meine Drucker unter Spannung setzt.
Dieses Skript läuft im Zusammenspiel mit CUPS einwandfrei.
Für eine Erweiterung der Funktion soll dieses Skript nun auch über eine kleine Webseite vom Apache via PHP gesteuert werden.
Dazu benötige ich einen Datenaustausch zwischen meinem Script und dem PHP / Apache.
Mein erster Gedanke war, dass das PHP in meiner Ramdisk unter /tmp/ eine Datei anlegt, die von meinem Skript ausgelesen wird.
Da fangen meine Probleme an.
Wenn ich unter PHP im Verzeichnis /var/www/html/ eine Datei mit einem lokalen Pfad erzeuge, klappt das.
Ich möchte aber nicht die Datei auf der SD-Karte liegen haben, sonder in der Ramdisk unter /tmp/, da ich die SD-Karte größtenteils schreibgeschützt betreiben möchte.
Wenn mein PHP eine Datei aber unter einem absoluten Pfad, z.B. in /tmp/ ablegen will, wird dies offensichtlich vom Apache umgebogen in
/tmp/systemd-private-2ab69e9d15e24bb2aafd46ad67cc0a1e-apache2.service-aBMKes/tmp/<Dateiname>
Offensichtlich kapselt Apache den Webzugriff auf das Filesystem.
Auf dieses Verzeichnis hat aber mein Skript keinen Zugriff, vor allem fürchte ich, dass sich dieser Pfad auch mit jeder Sitzung ändert.
Daher meine Fragen:
- wie kann ich unter Apache / PHP auf einen absoluten Pfad außerhalb von /var/www/html zugreifen?
ODER
- gibt es einen anderen einfachen Mechnismus für den Datenaustausch, den ich als Linux-Newbie hinkriege? (Mailboxing, Semaphoren etc...)??