Centos Server im laufenden Betrieb komplett sichern
Moin zusammen,
ich habe grad ein schwerwiegendes Problem mit einem "meiner" Server. Seit heute morgen wirft er weniger lustige Fehlermeldungen.
smartd[4784]: Device: /dev/sda, FAILED SMART self-check. BACK UP DATA NOW!
smartd[4784]: Device: /dev/sda, SMART Prefailure Attribute: 1 Raw_Read_Error_Rate changed from 47 to 45
smartd[4784]: Device: /dev/sda, SMART Usage Attribute: 188 Unknown_Attribute changed from 100 to 99
smartd[4784]: Device: /dev/sda, FAILED SMART self-check. BACK UP DATA NOW!
smartd[4784]: Device: /dev/sda, SMART Prefailure Attribute: 1 Raw_Read_Error_Rate changed from 45 to 43
smartd[4784]: Device: /dev/sda, SMART Usage Attribute: 188 Unknown_Attribute changed from 99 to 100
smartd[4784]: Device: /dev/sda, SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 71 to 70
smartd[4784]: Device: /dev/sda, starting scheduled Offline Immediate Test.
Wenn ich das richtig sehe ist die Platte kurz vor dem K.O. und ich sollte eine neue einbauen. Im Normalfall würde ich den Server ausmachen die Platte auf eine neue Clonen und die Platten tauschen. Server an Problem gelöst. Das geht hier leider nicht, ich kann den Server nicht vom netzt nehmen.
Gibt es eine Möglichkeit die Platte zu klonen und in eine File abzulegen die ich später so wieder auf einen neue Festplatte schreiben kann? Wie wenn man mit z.b. Clonezilla zwei Platten klont, nur das ich eine Platte in ein File schreiben will oder in einen Ordner irgendwo auf einem anderen Server. Der Kaputte Server hat grad mal 20GB belegt, sollte also zum einen nicht lange dauern und zum anderen auch keine Platzproblem sein.
Viele Grüße
Maveric
ich habe grad ein schwerwiegendes Problem mit einem "meiner" Server. Seit heute morgen wirft er weniger lustige Fehlermeldungen.
smartd[4784]: Device: /dev/sda, FAILED SMART self-check. BACK UP DATA NOW!
smartd[4784]: Device: /dev/sda, SMART Prefailure Attribute: 1 Raw_Read_Error_Rate changed from 47 to 45
smartd[4784]: Device: /dev/sda, SMART Usage Attribute: 188 Unknown_Attribute changed from 100 to 99
smartd[4784]: Device: /dev/sda, FAILED SMART self-check. BACK UP DATA NOW!
smartd[4784]: Device: /dev/sda, SMART Prefailure Attribute: 1 Raw_Read_Error_Rate changed from 45 to 43
smartd[4784]: Device: /dev/sda, SMART Usage Attribute: 188 Unknown_Attribute changed from 99 to 100
smartd[4784]: Device: /dev/sda, SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 71 to 70
smartd[4784]: Device: /dev/sda, starting scheduled Offline Immediate Test.
Wenn ich das richtig sehe ist die Platte kurz vor dem K.O. und ich sollte eine neue einbauen. Im Normalfall würde ich den Server ausmachen die Platte auf eine neue Clonen und die Platten tauschen. Server an Problem gelöst. Das geht hier leider nicht, ich kann den Server nicht vom netzt nehmen.
Gibt es eine Möglichkeit die Platte zu klonen und in eine File abzulegen die ich später so wieder auf einen neue Festplatte schreiben kann? Wie wenn man mit z.b. Clonezilla zwei Platten klont, nur das ich eine Platte in ein File schreiben will oder in einen Ordner irgendwo auf einem anderen Server. Der Kaputte Server hat grad mal 20GB belegt, sollte also zum einen nicht lange dauern und zum anderen auch keine Platzproblem sein.
Viele Grüße
Maveric
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 207197
Url: https://administrator.de/forum/centos-server-im-laufenden-betrieb-komplett-sichern-207197.html
Ausgedruckt am: 23.12.2024 um 10:12 Uhr
11 Kommentare
Neuester Kommentar
servus,
hast Du es schon mit dem "dd" Tool probiert? Aber vorsichtig bei der Benutzung man kann auch alles kaputt machen!
z.B: dd if=/dev/hdb of=/pfad/wo/das/Image/hin/soll/hdb-Image.img
obwohl wenn die Platte defekte Sektoren aufweist, dann eher "ddrescue".
hast Du es schon mit dem "dd" Tool probiert? Aber vorsichtig bei der Benutzung man kann auch alles kaputt machen!
z.B: dd if=/dev/hdb of=/pfad/wo/das/Image/hin/soll/hdb-Image.img
obwohl wenn die Platte defekte Sektoren aufweist, dann eher "ddrescue".
Bei deiner Konfiguration würde meine Wahl auch auf dd_resuce fallen.
Du solltest aber das root-Dateisystem vorher im read-only-mode mounten. Gegebenfalls muss du ein paar daemons anhalten die z.B. logfiles schreiben wollen. Oder du mountest ein anderes Dateisystem (gegebenfalls eine Ramdisk, wenn sonst grad nix da ist) auf /var bzw. /tmp um zu verhindern, dass deine daemons außer Tritt kommen.
Mit einem Backup einer EXT-Partition welche 1) RW-gemountet und 2) ein nicht gecleantes journal aufweist, wirst du aber vermutlich Probleme beim Rücksichern haben. Stell dich also darauf ein, dass nicht alles 1:1 kopiert werden kann.
Du solltest aber das root-Dateisystem vorher im read-only-mode mounten. Gegebenfalls muss du ein paar daemons anhalten die z.B. logfiles schreiben wollen. Oder du mountest ein anderes Dateisystem (gegebenfalls eine Ramdisk, wenn sonst grad nix da ist) auf /var bzw. /tmp um zu verhindern, dass deine daemons außer Tritt kommen.
Mit einem Backup einer EXT-Partition welche 1) RW-gemountet und 2) ein nicht gecleantes journal aufweist, wirst du aber vermutlich Probleme beim Rücksichern haben. Stell dich also darauf ein, dass nicht alles 1:1 kopiert werden kann.
in deinem Fall solltest du auf ddrescue zurück greifen.
ddrescue -r0 -v -d -n /dev/sda /dev/sdb/image.iso /dev/sdb/rescue.log
man erklärung: (ansonsten Man Page lesen)
-r0 = max-retries= exit after given retries (-1=infinity)
-v = Verbose
-d = direct use direct disc access for input file
-n = no-split do not try to split error areas
/dev/sda = Quell Laufwerk
/dev/sdb = Ziel Laufwerk
/mnt/usbstick/rescue.log = logs da man unter ddrescue die möglichkeit hat mehrmals das tool durchlaufen zu lassen, ddrescue greift dann auf die log zurück.
ach ja der Packetname lautet ddrescue und nicht dd_rescue!
ddrescue -r0 -v -d -n /dev/sda /dev/sdb/image.iso /dev/sdb/rescue.log
man erklärung: (ansonsten Man Page lesen)
-r0 = max-retries= exit after given retries (-1=infinity)
-v = Verbose
-d = direct use direct disc access for input file
-n = no-split do not try to split error areas
/dev/sda = Quell Laufwerk
/dev/sdb = Ziel Laufwerk
/mnt/usbstick/rescue.log = logs da man unter ddrescue die möglichkeit hat mehrmals das tool durchlaufen zu lassen, ddrescue greift dann auf die log zurück.
ach ja der Packetname lautet ddrescue und nicht dd_rescue!
moin,
Ich da ganz verwegen ein "overlay" über root drüberlegen und per copy-on-write alles ins overlay migrieren lassen. (Stichwort: unionFS).
Dann hast Du erstmal Deine daten in einem filesystem wo Du dirkt zugriff drauf hast.
ddrescue sichert Dir zwar das device, aber solange das Ding noch Produktiv läuft, werden da inkonsistenzen im Filesystem sein, die Du damit nciht abgefangen bekommst. dd/ddrescue sind nur im offline-betrieb oder mit filesystemen sinnvoll, die einen snapshot erlauben.
Andererseits ist einddrescue-image von einem laufenden System immer noch besser als gar nichts.
Also mein Vorschlag:
Aber das sinnvolste wäre:
Du solltest Dir genau überlegen, was mehr kostet: jetzt die Kiste ausschalten oder der gleiche Ausfall, wenn die Kiste ganz abkackt.
lks
Ich da ganz verwegen ein "overlay" über root drüberlegen und per copy-on-write alles ins overlay migrieren lassen. (Stichwort: unionFS).
Dann hast Du erstmal Deine daten in einem filesystem wo Du dirkt zugriff drauf hast.
ddrescue sichert Dir zwar das device, aber solange das Ding noch Produktiv läuft, werden da inkonsistenzen im Filesystem sein, die Du damit nciht abgefangen bekommst. dd/ddrescue sind nur im offline-betrieb oder mit filesystemen sinnvoll, die einen snapshot erlauben.
Andererseits ist einddrescue-image von einem laufenden System immer noch besser als gar nichts.
Also mein Vorschlag:
- mit rsync erstmal das root-fs auf ein externes medium sichern.
- danach mit unionfs (o.a.) ein overlay auf / legen.
- Alle Dateien auf das overlay "kopieren"
- danach den inhalt des overlays auf eine neue Platte kopieren. udn einbauen.
Aber das sinnvolste wäre:
- Kiste aus
- Platte sichern
- neue Platte rein
- neustart
Du solltest Dir genau überlegen, was mehr kostet: jetzt die Kiste ausschalten oder der gleiche Ausfall, wenn die Kiste ganz abkackt.
lks
Zitat von @111857:
ach ja der Packetname lautet ddrescue und nicht dd_rescue!
ach ja der Packetname lautet ddrescue und nicht dd_rescue!
besser ddrescue (=gddrescue) nehmen, das eine weiterentwicklung von dd_rescue ist. das ist für defekte Platten meist besser geeignet, weil es zuerst die funktionierenden sektoren kopiert, bevor es sich an die problematischen macht.
lks
Zitat von @Maveric:
Jetzt hat der Server übrigens ein Raid 5 mit 3 Platten, ich konnte komischerweise jetzt wo wir ein wenig
Downtime hatten ohne viel gegen die Wand gerede ohne Probleme Geld für etwas mehr Sicherheiten
einstreichen :D
Jetzt hat der Server übrigens ein Raid 5 mit 3 Platten, ich konnte komischerweise jetzt wo wir ein wenig
Downtime hatten ohne viel gegen die Wand gerede ohne Probleme Geld für etwas mehr Sicherheiten
einstreichen :D
Ist RAID5 mit 3 Platten nicht zu langsam? Nicht lieber RAID1 mit hot-spare?
Aber ansonsten, die besten Chancen etwas zu verbessern hat man immer dann, wenn es gerade heftig wehgetan hat, sagt meien Erfahrung.
lks