Benutzer von systemd sind auf ein Problem gestoßen, das zu einem Verlust von Home-Verzeichnissen fĂŒhrte.

Die korrigierte Version des Systemmanagers systemd 256.1 wurde veröffentlicht, in der ein Problem behoben wurde, das zum Löschen des Inhalts des Verzeichnisses /home fĂŒhrte, wenn der Befehl „systemd-tmpfiles —purge“ ausgefĂŒhrt wurde, der in systemd 256 hinzugefĂŒgt wurde, um alle Dateien und Verzeichnisse zu entfernen, die ĂŒber die Einstellungen in tmpfiles.d erstellt wurden.

In den Release-Anmerkungen zu systemd 256 und im man-Dokument zu systemd-tmpfiles wurde angegeben, dass die Option „—purge“ alle Dateien und Verzeichnisse löscht, die ĂŒber die tmpfiles.d-Einstellungen erstellt wurden, aber der Name „tmpfiles“ in der Bezeichnung des Tools fĂŒhrte zu Verwirrung und erweckte den Eindruck, dass die Löschung nur temporĂ€re Dateien betrifft.
Die Einstellungen von tmpfiles.d beschrĂ€nken sich jedoch nicht auf temporĂ€re Dateien und werden auch verwendet, um nicht vorhandene Verzeichnisse mit Daten automatisch zu erstellen. Insbesondere wird das Löschen des Inhalts der Home-Verzeichnisse dadurch erklĂ€rt, dass mit der Datei „/usr/lib/tmpfiles.d/home.conf“ das Verzeichnis „/home“ erstellt wurde und daher der Befehl „systemd-tmpfiles —purge“ zu dessen Löschung fĂŒhrte.

UrsprĂŒnglich wurde die Fehlermeldung von Luca Boccassi, einem Entwickler von systemd bei Microsoft, folgendermaßen zurĂŒckgewiesen: „War das also eine gute Idee, eine Funktion zu implementieren, die wörtlich dokumentiert ist als ‚alle Dateien und Verzeichnisse, die durch den Eintrag tmpfiles.d/ erstellt wurden, werden gelöscht‘, von der Sie nichts wussten? Hast du dir wenigstens die tmpfiles.d-EintrĂ€ge angesehen, die du vorher hattest? Vielleicht sollte man einfach keine zufĂ€lligen Befehle ausfĂŒhren, von denen man nichts weiß, und dabei ignorieren, was die Dokumentation sagt? Nur ein Gedanke, aha.“ In seiner Antwort wurde darauf hingewiesen, dass im Dokumentationstext das Tool systemd-tmpfiles immer noch als „Werkzeug zum Erstellen, Löschen und Bereinigen von nicht permanente und temporĂ€ren Dateien und Verzeichnissen“ beschrieben wird, obwohl das schon lange nicht mehr zutrifft.

Letztendlich wurde nach langen Diskussionen in den letzten Tagen das Verhalten von systemd-tmpfiles als fehlerhaft anerkannt und geĂ€ndert. ZunĂ€chst beabsichtigten die Entwickler von systemd, die Option "—purge" zu entfernen, um das versehentliche Löschen von Home-Verzeichnissen auszuschließen. Danach beschlossen sie jedoch eine Änderung, die den Geltungsbereich des Befehls "systemd-tmpfiles —purge" einschrĂ€nkt – dieser Befehl kann nun nur noch ausdrĂŒcklich mit einer bestimmten Konfigurationsdatei aus tmpfiles.d/ in der Befehlszeile ausgefĂŒhrt werden und fĂŒhrt lediglich zur Löschung der damit verbundenen Dateien und Verzeichnisse. DarĂŒber hinaus wurde die man-Seite von systemd-tmpfiles um eine detailliertere Beschreibung der Option und eine Warnung ĂŒber mögliche Konsequenzen ergĂ€nzt.

Quelle: opennet.ru

60GB SSD 8Gb DDR4