Wie kann ich eine ext4-Partition (ohne LVM) im laufenden Betrieb sichern / erstellen?


8

Ich bin derzeit damit beauftragt, einen vorhandenen Server auf (zumindest mehr) professionelle Standards zu bringen - mit möglichst geringen Störungen für Endbenutzer. Um ein korrektes Rollback zu erhalten, muss ich die Root-Fs des vorhandenen Servers sichern, die derzeit ext4 in einer primären Festplattenpartition sind - nicht LVM, was die gesamte Show zu einer bloßen Fingerübung machen würde. Ich möchte vermeiden, den Server herunterzufahren.

Ist es unter diesen Umständen überhaupt möglich?

Antworten:


13

Sie brauchen kein LVM. LVM verwendet auch nur den Device Mapper. Das kannst du selbst machen. Bei den Root-Fs kann dies jedoch etwas schwierig sein, da Sie wahrscheinlich die Boot-Skripte ändern müssen.

Sie müssen nur ein DM-Gerät auf das Root-Gerät legen, z

sectors="$(blockdev --getsz /dev/sda3)"
dmsetup create rootfs --table "0 ${sectors} linear /dev/sda3 0"

So etwas muss in die initrd-Boot-Skripte eingefügt werden. Anstelle von / dev / sda3 würden Sie dann / dev / mapper / rootfs an / mounten. Dann können Sie Schnappschüsse der Root-Fs machen (müssen aber alle Schritte von Hand mit dmsetup ausführen; allerdings keine schwarze Magie). Sie können sie einfach nicht wieder zusammenführen, aber das sollte kein Problem sein.


Das ist ziemlich elegant. Ich werde das lesen. Vielen Dank.
Roman

Wenn Sie es schaffen, Ihr / mount von / dev / mapper / rootfs zu bekommen (was meiner Meinung nach jede Distribution tun sollte), kann ich den Code für die Snapshopt-Erstellung bereitstellen. Das mache ich schon: Meine LVs werden in einen KVM-Gast exportiert und dort als normale Festplatten angezeigt. Daher muss ich DM-Geräte darauf legen. Keine große Sache mit Nicht-Root-Fs.
Hauke ​​Laging

1
Könnten Sie bitte auch das Snapshot-Skript posten?
user128063

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.