HINTERGRUNDINFORMATION :
Ich habe ein Init-Skript, mit dem ich mount
einen Ordner in kopieren und gleichzeitig den Ordner auf dem Laufwerk an einem anderen Speicherort binden kann, sodass ich den Inhalt (beim Starten, Herunterfahren und bei Bedarf) zwischen dem und dem Originalordner auf dem Systemlaufwerk tmpfs
synchronisieren kann .tmpfs
Es wird hauptsächlich zum Verschieben in den RAM von Ordnern und häufig geschriebenen Daten verwendet, um übermäßiges Schreiben auf das Systemlaufwerk (ein USB-Stick oder eine SD-Karte) zu vermeiden.
Ich habe für jeden benötigten Einhängepunkt ein anderes Init-Skript (jeder wird tatsächlich von einem Setup-Skript generiert, das hier nicht relevant ist).
Jedes dieser Init-Skripte führt (so bald wie möglich während des Bootvorgangs) Folgendes aus:
- Binden Sie den Ordner X an einen anderen Ordner namens „X-bindmount“, der sich irgendwo anders auf dem Hauptlaufwerk befindet. (Der Ordner „X-bindmount“ wird bei Bedarf ebenfalls erstellt.)
- Ordner X mounten als
tmpfs
- Inhalt von X-Bindmount nach X verschieben (das jetzt
tmpfs
leer ist) - beim Herunterfahren oder auf Aufforderung wird von X mit X-Bindmount synchronisiert.
FRAGE :
Wie kann ich dies mehr oder weniger nativ mit tun systemd
? Ich kann einen Dienst zusammenschustern systemd
, der ein Skript aufruft. Ich frage mich, ob es einen besseren, nativen Weg gibt.
Antwort1
Habe diese Frage in der Mailingliste systemd-devel gestellt und eine definitive Antwort von Lennart erhalten.http://lists.freedesktop.org/archives/systemd-devel/2015-November/035043.html
Ich füge die Antwort hier für die Nachwelt ein.
Nein, gibt es nicht. Und ich sehe darin auch keinen ausreichend starken Anwendungsfall, um daraus etwas Natives zu machen.
Entschuldigung.
Lennart
-- Lennart Poettering, Red Hat