encoder: Apache darf nicht auf /tmp zugreifen - jetzt weiß ich warum

Hallo

Ich hatte wieder Zeit um an meinem Problemchen von hier herum zu suchen.
Kann zum vorigen Beitrag nichts mehr hinzufügen, daher ein neuer. Vielleicht kann ein Moderator diesen Beitrag noch an den archivierten anhängen?

Kurze Zusammenfassung.
Mein Apache soll bei Aufruf eines php Scripts Daten aus /tmp lesen - und kann es nicht. Ich habe alles mögliche versucht, file permissions gesetzt und auch open_basedir angepasst und so weiter. Wollte als Aufruf per Web einfach nicht funktionieren. In der Shell gestartet gehts, mit selbem User.

Inzwischen habe ich eine Erklärung gefunden. Hier
Auch in Kürze: Der Apache kriegt ein eigenes /tmp vorgegaukelt, so dass er im allgemeinen /tmp natürlich nichts findet. Nachdem ich mein ramdisk Verzeichnis woanders hingelegt habe und open_basedir gesetzt habe, funktioniert die Sache.
Darauf muss man auch erst kommen. Alles sonst hätte funktioniert, aber /tmp klingt leider sehr verlockend für eine Ramdisk.

  1. Moin!

    Kurze Zusammenfassung.
    Mein Apache soll bei Aufruf eines php Scripts Daten aus /tmp lesen - und kann es nicht. Ich habe alles mögliche versucht, file permissions gesetzt und auch open_basedir angepasst und so weiter. Wollte als Aufruf per Web einfach nicht funktionieren. In der Shell gestartet gehts, mit selbem User.

    Inzwischen habe ich eine Erklärung gefunden. Hier

    Das ist eine Möglichkeit. Vor der Nutzung von systemd wurden andere dafür genutzt. Hintergund ist, dass in /tmp/ nicht nur Benutzer Zeug ablegen sondern auch Prozesse. Und da die umask in den meisten Linuxen ein Default von 022 hat haben neu angelegte Dateien und Verzeichnisse oft eine eher ungünstige Rechteverteilung: 0644/0755. Da einen Apache mit Software aus merkwüdigen Quellen (Beispiel: Wordpress+Plugins) drauf zugreifen zu lassen ist wie die Grenze zu Russland von Gartenzwergen bewachen zu lassen.

    Eine der Verteidigungslinien ist es eben, den Apache nicht an das /tmp - Dir zu lassen.

    aber /tmp klingt leider sehr verlockend für eine Ramdisk.

    Nur bis ein Programm dort mal richtig viele Daten ablegen will. Überlasse die Deine Hoffnung auf Geschwindigkeit lieber dem Schreib/Lese-Cache. Auch ist eine SSD an einem USB/SATA-Adapter am Raspi immer noch schneller als eine Speicherkarte, die zudem auch gerne mal schon nach „wenigen“ Schreibprozessen stirbt - was wohl Dein Motiv für die RamDisk ist.

    Soll heißen: Benutze den Raspi mit einer SSD. Lass das mit der RamDisk.