Nein btrfs verhindert die Wiederherstellung von gelöschten Dateien im /home bereich. Irgendein sicher für professionelle Nutzer nützlicher Schutz, insbesondere weil die mitlaufende Backups haben und keine Dateiwiederherstellung benötigen.
Daher hab ich meine Dateien nicht mehr in home, sondern in einem Ordner den ich auch nicht als “home” Bereich konfiguriert hab.
Also bleibt hiernach wohl nur eine neue,eigene Partition, oder kann Subvolume noch was anderes sein?
wenn man es so macht kann man aber nicht wiederherstellen, da btrfs es ja eben grade für /home als Zugriffsschutz sperrt. Man darf die Partition nicht als /home mounten!
Also andere Partition wegen Snapper, aber nicht als /home wegen btrfs Zugriffsschutz!
Gilt natürlich nur für Krauter ohne mitlaufendes Backup.
[QUOTE=karlmistelberger;3113206]Ich hatte die ganz Fummelei (seit 1995!) statt und habe am vergangenen Schwarzen Freitag die einfachste aller Lösungen implementiert:
? da wird dann /home auch noch in snapper eingebunden, also gehen Dateien bei rollback potentiell verloren?
Aber wäre sowieso ein anderes Thema, ich wollte doch ein Verzeichnis ausserhalb des /home Bereich, genau im Gegenteil, aus Snapper rausbekommen, was ja scheinbar nur mit neuer, eigener Partition geht.
Ich verstehe dich nicht. /home hat gar nichts mite Btrfs zu tun. Es ist ein xfs oder ext4 Dateisystem und natürlich als /home gemounted, sonst wäre es nichjt das /home Dateisystem.
Und für verlorene Dateien gibt as Backups. Btrfs Snapshots sind kein Erzatz Backups.
[QUOTE=hcvv;3113230]Ich verstehe dich nicht. /home hat gar nichts mite Btrfs zu tun. Es ist ein xfs…
ja wenn es xfs oder ext4 ist gibt es sozusagen nicht das Problem, allerdings ist dort die Dateiwiederherstellung immer schlechter, jedenfalls bei xfs. bei btrfs ist sie perfekt, außer im /home bereich, den schützt btrfs vor zugriffen, damit auch Wiederherstellung.
Und dein Super backup tip stimmt nur für alle die dauerläufer/mitlaufende Backups haben, nicht wenn man nur 1x pro Tag ein Backup macht.
Wiederherstellung im Sinne von Datenrettung, eh das auchnoch doof verstanden wird.
Und mit Perfekt meine ich bei Verwendung mit photorec, bzw. wenn einem photorec reicht.
ich habe nicht alles hier im Detail gelesen. Üblicherweise gibt es an den Hilfestellungen unserer Freunde hier im Forum nicht viel zu ergänzen oder kritisieren - ich würde mir das auch nie anmaßen. Ich hätte nur eine Anmerkung zum grundsätzlichen Verständnis:
BTRFS mit Snapshots unterstützt “rollback”. Das heißt in erster Linie ein Betriebssystem auf einen bestimmten Punkt zurückzustellen, wenn etwas schiefgegangen ist. Es kann ein Problem bei einem Update, einem Upgrade, einer misslungenen Softwareinstallation oder was auch immer gewesen sein. Man “rollt” das System zurück zu einem definierten Punkt. Idealerweise hat man sich den sogar vor einer größeren Operation notiert. Das macht es leichter.
Das hieße aber auch, dass /home/ **zurückgesetzt **würde, wenn man einen “zypper rollback …” ausführt. All Deine Daten in /home/… , die jünger sind als der Rücksetzpunkt wären verloren. Das wäre weder im Sinne der Entwickler von BTRFS noch im Sinne des Users.
Ich muss zugeben, ich habe mich mit den detaillierten Optionen zur Verhinderung des Problems innerhalb btrfs nicht auseinandergesetzt. Ich folge der Empfehlung, die Henk schon gegeben hat: /home/ auf eine separate Partition und in ein separates Dateisystem packen.
Have a lot of fun!
kasi
also kasi du hast garnichts gelesen und logiosch darf und ist /home nicht im rollback/snapper.
Und wenn ich / einbaue ist doch nichts ausgeschlossen wie ich will. Ich will ein bestimmtes Verzeichnis ausschliessen aus snapper.
Und das geht nicht, Thema längst geklärt, neue Partition nötig und die ohne /home da sonst btrfs eine Dateirettung blockiert.
Ein Rollback in der Konfiguration root hat keinen Einfluss auf Subvolume /home/tester und umgekehrt beeinflusst die Konfiguration home_tester aussschließlich Subvolume /home/tester.
**erlangen:~ #** snapper -c home_tester list
# | Type | Pre # | Date | User | Cleanup | Description | Userdata
---+--------+-------+--------------------------+------+----------+-------------+---------
0 | single | | | root | | current |
1 | single | | Wed Mar 9 04:41:32 2022 | root | timeline | timeline |
2 | single | | Wed Mar 9 05:00:08 2022 | root | timeline | timeline |
**erlangen:~ #**
**erlangen:~ #** snapper -c root list
# | Type | Pre # | Date | User | Cleanup | Description | Userdata
-----+--------+-------+--------------------------+------+---------+-----------------------+--------------
0 | single | | | root | | current |
1* | single | | Wed Nov 24 21:33:32 2021 | root | | first root filesystem |
272 | pre | | Sat Feb 26 04:13:45 2022 | root | number | zypp(zypper) | important=yes
273 | post | 272 | Sat Feb 26 04:15:15 2022 | root | number | | important=yes
276 | pre | | Mon Feb 28 03:26:32 2022 | root | number | zypp(zypper) | important=yes
277 | post | 276 | Mon Feb 28 03:28:04 2022 | root | number | | important=yes
278 | pre | | Mon Feb 28 03:29:08 2022 | root | number | zypp(zypper) | important=yes
279 | post | 278 | Mon Feb 28 03:29:10 2022 | root | number | | important=yes
288 | pre | | Wed Mar 2 21:53:28 2022 | root | number | zypp(zypper) | important=yes
289 | post | 288 | Wed Mar 2 21:57:45 2022 | root | number | | important=yes
292 | pre | | Thu Mar 3 19:14:59 2022 | root | number | zypp(zypper) | important=yes
293 | post | 292 | Thu Mar 3 19:15:46 2022 | root | number | | important=yes
296 | pre | | Sat Mar 5 11:25:08 2022 | root | number | zypp(zypper) | important=no
297 | post | 296 | Sat Mar 5 11:25:20 2022 | root | number | | important=no
298 | pre | | Sat Mar 5 13:03:38 2022 | root | number | zypp(zypper) | important=no
299 | post | 298 | Sat Mar 5 13:03:41 2022 | root | number | | important=no
300 | pre | | Sun Mar 6 00:08:08 2022 | root | number | zypp(zypper) | important=no
301 | post | 300 | Sun Mar 6 00:10:44 2022 | root | number | | important=no
302 | pre | | Sun Mar 6 00:20:23 2022 | root | number | zypp(zypper) | important=no
303 | post | 302 | Sun Mar 6 00:20:31 2022 | root | number | | important=no
304 | pre | | Sun Mar 6 12:26:13 2022 | root | number | zypp(zypper) | important=no
305 | post | 304 | Sun Mar 6 12:26:17 2022 | root | number | | important=no
306 | pre | | Mon Mar 7 02:14:34 2022 | root | number | zypp(zypper) | important=no
307 | post | 306 | Mon Mar 7 02:14:38 2022 | root | number | | important=no
308 | pre | | Mon Mar 7 02:14:44 2022 | root | number | zypp(zypper) | important=no
309 | post | 308 | Mon Mar 7 02:17:25 2022 | root | number | | important=no
310 | pre | | Mon Mar 7 11:16:06 2022 | root | number | zypp(zypper) | important=no
311 | post | 310 | Mon Mar 7 11:16:18 2022 | root | number | | important=no
312 | pre | | Tue Mar 8 05:02:07 2022 | root | number | zypp(zypper) | important=no
313 | post | 312 | Tue Mar 8 05:02:16 2022 | root | number | | important=no
314 | pre | | Tue Mar 8 11:30:59 2022 | root | number | zypp(zypper) | important=no
315 | post | 314 | Tue Mar 8 11:31:04 2022 | root | number | | important=no
316 | pre | | Tue Mar 8 21:58:48 2022 | root | number | zypp(zypper) | important=no
317 | post | 316 | Tue Mar 8 21:58:56 2022 | root | number | | important=no
318 | pre | | Wed Mar 9 03:28:52 2022 | root | number | yast users |
319 | post | 318 | Wed Mar 9 03:29:49 2022 | root | number | |
320 | pre | | Wed Mar 9 03:37:22 2022 | root | number | yast users |
321 | post | 320 | Wed Mar 9 03:37:41 2022 | root | number | |
**erlangen:~ #**
Nun ja, ein bisschen schon, und das hier hat mich etwas zweifeln lassen:
Irgendein sicher für professionelle Nutzer nützlicher Schutz, insbesondere weil die mitlaufende Backups haben und keine Dateiwiederherstellung benötigen.
Aber dann weißt Du ja Bescheid.
Nur zur Sicherheit für andere, die hier nachlesen: Backup der eigenen Daten - wo auch immer sie liegen - ist unerlässlich, zumindest, wenn einem diese Daten wichtig sind. Snapshots sind kein sicherer Ersatz für Backups.
Das sind aber echte Dauerbackups und nicht welche die nur 1x pro Tag laufen, wie bei dir und mir. Schon braucht man Datenrettung, was btrfs für Subvolume /home blockiert.
Meine rede. Richtige Unternehmen haben mitlaufende Dauerbackups, zb. auf Streamern und überhaupt gesonderten Kisten. Weshalb kein Bedarf an Datenrettung besteht und damit der Zugriffsschutz für /home bei btrfs gewollt ist.
Böllerbuden und Krauter machen aber nur irgendwann ein Backup und brauchen Datenrettung, bei /home mit btrfs nicht möglich. Obwohl sich eben außerhalb von /home grade bei btrfs die Daten mit photorec am besten wiederherstellen lassen. Eigentlich klappt es sogar so richtig nur bei btrfs und zugegebenermassen ntfs.
Wenn ein Hardwaredefekt auftritt (z.B. Beschädigung der Plattenoberfläche) helfen weder photorec, noch btrfs oder ntfs, sondern nur eine intakte Kopie auf einem zweiten Medium (das idealerweise mit Hilfe eines unabhängigen Kontrollers erstellt wurde).
Backups sollten regelmässig ab einem virenfreien Bootmedium erstellt werden. Moderne USB-Wechselmedien sind so schnell, dass inkrementelle und differenzielle Backups überflüssig sind. Also in Privathaushalten immer brav und regelmässig Vollbackups auf USB-Wechselmedien erstellen. Siehe dazu:
a) persönliche Daten auf eine eigenständige home-Partition gehören (üblich: /home).
b) Daten von Serverdiensten+Datenbanken auf eigenständige Datenpartitionen gehören (z.B. /opt)
dann enthält die root-Partition nur noch das Betriebssystem und die Programme. Was die root-Partition relativ klein hält (< 20 GB). Füllt ein Benutzer oder eine Benutzerin die home-Partition (dank fehlender “Disk Quota”), sollte das Betriebssytem nicht durch fehlenden Speicherplatz in seiner Funktionalität beeinträchtigt sein. Häufig wird von erfahrenen Administratoren für home- und Daten-Partitionen in der /etc/fstab spezielle Mount-Optionen wie noexec, nosuid eingesetzt, was die Sicherheit erhöhen (kann). Diese Mount-Optionen wären bei der root-Partition fehl am Platz.
Für einen möglichst stabilen Rechnerbetrieb sind einige Punkte zu beachten:
c) Nach Möglichkeit Einsatz von einer unterstützten** LTS-LInuxdistributionen** (> 5 Jahre Sicherheitsupdates): Red Hat Enterprise Linux und deren kostenlose Ablegern AlmaLinux und Rocky Linux, SUSE Linux Enterprise, sowie Ubuntu Server. Wer hat schon die Nerven und die Zeit sich freiwillig mit “Rolling Release”-Betriebssystemen wie zum Beispiel: OpenSUSE Tumbleweed, Microsoft Windows 10, Arch Linux, Gentoo Linux und FreeBSD rumzuärgern? Ob man OpenSUSE Leap ab Version 15 als kostenlosen Ableger von SUSE Linux Enterprise erachtet oder nicht, darf jeder Leser und Leserin für sich selber entscheiden. Je weniger Zeilen Programmcode geändert wird, desto unwahrscheinlicher ist das Auftreten von Softwareprobleme verursacht durch Regression.
e) Alle Dateien, welche der Administrator respektive die Administratorin mit root-/Administrator-Rechte in die root-Partition einbringt oder verändert, müssen einer Versionskontrolle unterstehen. Es muss immer nachvollziehbar sein, wer, was, wann, wie auf der root-Partition modifiziert hat. Im wesentlichen sind die Konfigurationsdateien und selbst erstellten Programme und Shellskripte unter Versionskontrolle zu bringen. Selbst erstellte Konfigurationsdateien, Programme und Shellskripte kann man mit Git verwalten. Selbst sprechend sind diese Git-Repositories auf mehreren Datenträger abzulegen (=> Thema “Backup”). Alle Konfigurationsdateien und Shellskripte, die nicht bereits in einem offiziellen RPM enthalten sind, sollten auf den Linux-Rechnern per selbst erstelltem Softwarepaket verteilt und installiert werden (SUSE und RedHat: RPM; Ubuntu: DEB).
f) Minor- und Major-Upgrades gemäss: https://en.opensuse.org/Lifetime
müssen vor der Installation auf dem Produktivsystem auf einer hardware- und softwaremässig identischen Testumgebung ausgiebig getestet werden. In der Testphase müssen auch die selbst erstellten und modifizerten Konfigurationsdateien, Programme und Shellskripte allenfalls für dieses Upgrade angepasst und getestet werden. Minor-Upgrades darf man bei RedHat und SUSE Linux Enterprise und deren kostenlosen Abkömmlinge einmal jährlich erwarten. Major-Upgrades darf man bei RedHat, SUSE Linux Enterprise, Ubuntu Server und deren kostenlosen Abkömmlinge einmal alle 5 bis 10 Jahren erwarten. Eine hardwaremässig identische Testumgebung ist ja sowieso erforderlich und sollte vorhanden sein, damit man im Fall eines Hardwaredefekts rasch die defekte Hardware ersetzen kann.
Bei Major-Upgrades empfehle ich das vollständige Löschen der Festplatte oder SSD per “Secure Erase”. Damit allenfalls vorhandene Schadsoftware (Virus) das Major-Upgrades NICHT übersteht. Mit diesem Vorgehen wird auch regelmässig das Backupverfahren und dessen Restore getestet. Beim Major-Upgrades sollte auch gleich das root-Passwort geändert werden.
Für das Einspielen von Minor- und Major-Upgrades auf Produktivsystemen muss ein Drehbuch erstellt werden. Das Drehbuch wird während dem Testen auf der Testumgebung erstellt.
g) Auf dem Produktivsystem sollten nur nicht-sicherheitsrelevante Softwareupdates installiert werden, welche vorgängig auf der Testumgebung ausgiebig getestet wurden. Sicherheitsrelevante Softwareupdates sollten rasch möglichst installiert werden. Ob man sicherheitsrelevante Softwareupdates vor der Installationsfreigabe auf der Testumgebung testen will oder nicht, ist dem Administrator überlassen. Zum Einspielen von sicherheitsrelevanter Softwareupdates unter OpenSUSE oder SUSE Linux Enterprise siehe auch (Seite 2 beachten!): https://forums.opensuse.org/showthread.php/547458-Softwareupdates-(im-Allgemeinen)
h) Alle Modifikationen der root-Partition durch den Adminstrator sind in einem oder mehreren Logbüchern zu protokollieren. Als Logbuch erachte ich auch die Logdatei /var/log/zypp/history, welche alle durch zypper durchgeführte Softwareupdates und Softwareinstallationen protokolliert. Diese Logdatei ist am bequemsten im YAST2-Modul “Software installieren oder löschen” per Menüpunkt “Verlauf anzeigen” einsehbar.
Werden alle oben genannte Punkte strikt eingehalten, erübrigt sich aus meiner Sicht der Einsatz von Snapper.