
Ich versuche, zfs-fuse als Dateisystemtreiber für eine Lese-/Schreibpartition zu verwenden, die Systemprotokollierung auf einer Ubuntu 12.04-Distribution enthält. Ich habe rsyslog erfolgreich dorthin umgeleitet, indem ich die entsprechenden Konfigurationsdateien geändert habe. Beim Booten startet rsyslog jedoch lange bevor das zfs-fuse-Laufwerk gemountet wird, sodass es einfach das Verzeichnis erstellt und mit der Protokollierung auf der Root-Partition beginnt. Wenn zfs-fuse später in der Boot-Reihenfolge versucht, das Laufwerk zu mounten, befinden sich dort bereits Dateien auf dem / gemounteten Laufwerk, auf dem das Betriebssystem ausgeführt wird, und daher kann zfs-fuse das Laufwerk dort nicht mounten. Bevor ich die rsyslog-Konfigurationsdateien geändert habe, um an einem anderen Ort zu protokollieren, hat zfs-fuse das Laufwerk automatisch problemlos gemountet.
Meine Frage ist also folgende:
Wie kann ich die zfs-fuse-Mounting von Laufwerken in der Boot-Reihenfolge vor den Zeitpunkt verschieben, an dem rsyslog erscheint? Ich möchte, dass rsyslog alle Boot-Informationen enthält, daher kann ich rsyslog nicht einfach hinter zfs-fuse verschieben, sondern muss zfs-fuse vor den Zeitpunkt verschieben. Ich kann mir alle möglichen Hacks vorstellen, aber ich möchte eine elegante Lösung, wenn es eine gibt. Ich habe viel darüber gegoogelt und kann niemanden finden, der dieses Problem gelöst und eine Lösung gepostet hat.
Vielen Dank für jede Hilfe, die Sie mir geben können
Antwort1
Nun, 7,5 Monate später habe ich endlich eine saubere Möglichkeit gefunden, es zu tun, also wollte ich wieder einen Beitrag veröffentlichen.
Rsyslog ist unter 12.04 als Upstart-Job konfiguriert.
zfs-fuse richtet sich bei der Installation mit apt-get install so ein, dass es den Befehl service zfs-fuse start unterstützt.
Aufgrund dieser beiden Fakten habe ich Folgendes getan:
- Zeile „service zfs-fuse start“ direkt nach der Zeile „pre-start script“ in /etc/init/rsyslog.conf hinzugefügt
- Habe den Befehl sudo initctl reload-configuration ausgeführt
Bevor rsyslog starten kann, erzwinge ich nun den Start des zfs-fuse-Dienstes, der wiederum die zfs-Laufwerke mountet. Wenn beim Mounten von zfs-fuse kein Fehler auftritt, kann ich nun sicher sein, dass das zfs-fuse-Laufwerk beim Start von rsyslog gemountet und zum Schreiben bereit ist, sodass ich mich gleich zu Beginn des Startvorgangs dort anmelden kann.