# /usr/ Verzeichnis gelöscht - benötige Hilfe für Reinstall



## Hirbod (20. März 2013)

Liebe User,

zuerst einmal großen Dank für das tolle ISPConfig Sytem, ich bin begeistert und möchte das ganze nie mehr missen.

Ich habe den dümmsten Anfängerfehler gemacht...
War mit root eingeloggt und hatte ein Backup hochgeladen. Das Verzeichnis in diesem ZIP hieß "usr". Nach dem ich fertig war, wollte ich es löschen...

rm -r /usr/.... blöd, wenn man am Anfang noch / mit angibt. Natürlich habe ich es nicht mehr rechtzeitig gemerkt und auch CTRL C konnte da nichts mehr bringen, der Vorgang war schon durch.

Erstmal ruhe bewahrt, umount durchgeführt.. Toll, kein dpkg etc pp. Ich habe das Hetzner-Rescue gebooted und mir "extundelete" geholt. Dieser konnte ca. 15.000 Dateien wiederherstellen. Hab die Platte kurz beschreibbar gemounted, die Daten übertragen und rebootet. Es hilft nichts mehr, der Server ist dahin. Über das Rescue-System komme ich an alle Daten dran.

Aktuell sind alle meine Kundenseiten und E-Mails down, um genau zu sein im Eimer. Kann mir bitte jemand einen exakten Weg beschreiben, was ich alles sichern muss (lückenlos), um wieder alles nach dem Server-Reinstall zum Laufen zu bringen?

Vom 3.0.5 Update liegt mir noch ein Backup von ISPConfig im var/backup Ordner vor. Auch /etc/ is vorhanden (hatte beim Update dem Backup zugestimmt). Ich nehme jedoch an, dass das Backup nun vom 3.0.4 System ist und eigentlich nicht zu gebrauchen sein wird.

Wie gehe ich vor? Es geht um ca. 300 GB Kundendaten und das schlimmste daran, das die E-Mails ebenfalls betroffen sind.

Normaler EX4 Hetzner Rootserver, kein Multiserver-Setup. Debian (Version 6 glaub ich)
Ich weiss das ist mein erster Beitrag und ich bin direkt so fordernd, aber eine zügige Antwort ist extrem wichtig, weiss gar nicht wie ich das meinen Kunden verklickern soll, außerdem habe ich übermorgen eine präsentation eines Web-Projekts (wir sind ne kleine Webschmiede) und dort lagen alle Dev-Daten. 

Wichtig sind Configs (PHP.ini)
MySQL
E-Mails
Kundendaten

Installiert habe ich auch noch Roundcube über http://bugs.web-wack.at/documents/1

Ich weiss nicht ob das funktionieren wird, aber wünschenswert wäre für mich folgender step.

Rescue Booten
- /dev/md2 (writeable mounten, rescue hat nur 7GB speicher)
- Benötigte Verzeichnisse wie /var und /etc, mysql tabellen etc über shell komprimieren
- Alle Daten (welche hoffentlich von euch genannt werden) runterladen
- Server mittels Rescue neu Installieren
- Archive hochladen und entpacken.. und hoffe es läuft

Ich weiss halt nicht wie das ganze funktioniert, bzw sauber. Wenn ich mittels root später alles hochlade und entpacke, kann FTP und Co in den Ordnern von /var/ doch gar nichts beschreiben? Ich bin verzweifelt 


Vielen Dank.


----------



## Hirbod (20. März 2013)

btw: ich denke, ich hab den thread ins falsche forum gepostet, gehört wohl eher ins "Linux" Forum rein. Falls ich was falsch gemacht habe, bitte darauf hinweisen.

LG
Hirbod


----------



## florian030 (20. März 2013)

Wenn Du nur /usr gelöscht hast, dann dürfte MySQL, web und mail davon nicht betroffen sein. Das liegt nämlich alls nicht unter /usr.

Ich würd einfach mal im Rescue /usr mounten und aus dem Backup das alte usr-archive (Du hast hoffentlich eines) nach dort entpacken. Falls nicht:
in jedem Fall kannst Du nicht den Server neu aufsetzen, ohne vorher mail, web und die DBs gesichert zu haben. 

Evtl. kannst Du die Daten an anderer Stelle "parken" und dann den Server neu aufsetzen. Danach Deine Backups von /etc etc. zurückkopieren und ISPConfig neu aufsetzen und die Datenbanken wieder importieren. Evtl. musst Du das DB-PW für den User ispconfig entsprechend anpassen; das wird immer individuell gesetzt.

Welche Verzeichnisse Du nach einem Reinstall brauchst, hängt auch davon ab, was Du so verändert hast. Ich mache meine Backups für Hetzner so. Da findest Du auch die Verzeichnisse, die durch Hetzner bei jedem Setup neu geschrieben werden.


----------



## Hirbod (20. März 2013)

Hallo Florian,

danke für deine Antwort. Über Rescue ist alles vorhanden. Mail, DB, www Verzeichnisse, etc, alles da. Es fehlt wie gesagt "usr" - komplett.

Backups habe ich nur die, die eben ISPConfig anlegt, vom /usr/ Verzeichnis habe ich kein Backup, ISPConfig legt von diesem Verzeichnis in den Backup-Routinen auch leider keine eigene an. Legt Debian denn welche an? Wie gesagt, extundelete hat 15.000 Daten wiederherstellen können, nachdem ich die RECOVERED_FILES dann wieder zurück geschoben habe und nen restart probiert habe, gings dennoch nicht weiter.

Ich hab jetzt diverse tar befehle abgesetzt... Das Archiv hat jetzt eine größe von fast 70GB, ich denke zum Schluss wird das Verzeichnis 200-300 GB Größe haben. Mit ner 20.000er Leitung wird das Up- und Downloaden schlimm..

Gibt es "schöne" wege? Ich habe 3TB im Raid (also 6), und die Festplatte ist jeweils mit 1,5TB partitioniert. Ich habe also noch 1,5TB unbenutzt platte. Besteht die möglichkeit, die Daten aktuell von /dev/md2 auf md3 zu packen und Debian einfach nur neu zu insallieren, ohne das installimage von Hetzner aufrufen zu müssen?

Wenn jemand sich das zutraut, ich bin auch bereit dafür zu bezahlen.

LG
Hirbod

-- EDIT
Kurze Entwarnung: Die Web-Verzeichnisse sind (gepackt) insgesamt 12GB groß, hatte da noch viel Zeug, was unnötig war.

- 12 GB www
- 4 GB mail
den rest muss ich noch schauen

Lade gerade alles lokal runter..


----------



## florian030 (20. März 2013)

Es sollte mich doch sehr wundern, wenn irgendein OS von sich aus mal eben so /usr sichert.

Ich würde grundsätzlich das ganze neu aufsetzen, wenn Du nicht alle Daten von /usr hast.

Ich würds konventionell per Backup machen.


----------



## Hirbod (20. März 2013)

Ok,

nehmen wir an ich habe alles gesichert und lokal gespeichert. Ich starte installimage und mache den Server platt. Dann geh ich den "Perfekten Server"-Guide durch und installiere ISPConfig.

Wie gehts weiter? Wenn ich nun ein Dump einspiele, wird ISPConfig dann auch alle Datenbank generieren? Alle Verzeichnisse generieren? (damit ich im Besten Fall dann einfach in die erzeugen Verzeichnissen und Datenbanken die Daten hochlade)

Oder muss ich dann wieder Schritt für Schritt jede einzelne DB per Hand anlegen, Passworter zuweisen etc. pp?


----------



## florian030 (20. März 2013)

Du kannst ISPConfig passend zu deinem Backup installieren. Damit werden die Files von postfix etc. entsprechend geschrieben.

Danach kannst Du die Datenbanken aus dem Backup in mysql importieren (aber vorsicht mit der DB mysql - das ändert Dir nämlich das Paßwort für den User ispconfig; das PW musst Du danach entsprechend der aktuellen Installation neu setzen).

Damit sollten dann Mail, Web etc. in ISPConfig wieder vorhanden sein. Mit dem resync-Tool werden dann Mail, Web etc. neu geschrieben.

Dann kannst Du web und mail aus dem Backup kopieren.

Wenn Dein Backup aber die vhosts umfasst, kannst Du diese auch statt dem resync kopieren. Analog auch für shell-user, cron, etc. Das Tool schreibt nur die Configs, für Files wie Mails und Web musst Du aus dem Backup selbst sorgen.


----------



## mare (20. März 2013)

Wenn du ein Backup vom /var/lib/mysql hast kannst du das bei ausgeschaltetem DB-Server reinkopieren.
Dann hast du ispconfig und die DB's auf dem Stand vor dem Crash.

Dasselbe gilt für die Webs. Die configs aus dem /etc hast du ja auch im Backup drin.

Wenn du Platz für das Backup brauchst kann ich dir tmp. einen Account auf einem Server von uns bei Hetzner geben um die Daten zu parken.


----------



## Hirbod (20. März 2013)

Hallo mare,

vielen Dank für deine Nachricht. Florian hat mir das mit dem parken auch eben angeboten. Mir ist eben noch eingefallen, das ich 100-GB Backup-Space von Hetzner habe. Muss mich da kurz einlesen, wie ich das Zeug per FTP rüberschicke.

var/lib/mysql hab ich eben gesichert. Da sind alle MySQL-Datenbanken roh drin. Geht das wirkllich so einfach, später einfach das Zeug da reinkippen?

Zusammengefasst:

- habe das komplette /var/ gesichert
- habe /etc/ gesichert
- habe alle caches gesichert
- habe vmail gesichert

Zusätzliche habe ich folgendes Backup:
ispconfig_2013-03-04_03-43

Dies wurde angelegt, als ich auf 3.0.5.1 geupdated habe.
Enthalten ist:

etc.tar
ispconfig_db_backup.sql
ispconfig_software.tar

ispconfig_software tar enthält die Daten von usr/local/ispconfig


Bitte korrigiert mich, falls ich jetzt den Weg falsch aufschreibe, tut mir leid wenn ich mich wiederhole, will nur wirklich sicher gehen das ich alles richtig mache.

1. Habe alle oben genannten Verzeichnisse mittels tar cfvj komprimiert. Diese liegen jetzt auf Rescue
2. Tar-Dateien auf Hetzner Backup-FTP schieben
3. Im Rescue installimage starten
4. Alles plätten
5. Perfect Server starten (Installiert habe ich Debian 6.0, glaube das ist Squeeze? Oder Wheezy? Ich bin überfragt)
6. Beim Install dann ISPConfig 3.0.4.6 installieren, da mein Backup davon diesen Stand hat (aber was blöd ist: die MySQL Rohdaten beinhalten ja jetzt 3.0.5.1... wie mache ich das nun??)

3.0.4.6 oder 3.0.5.1 installieren?

7. MySQL abschalten
8. MySQL Rohdaten reinkippen
9. /etc/ Backup komplett ersetzen
10. Hoffen das alles klappt, resync in ispconfig starten
11. Tar von Hetzer-FTP ziehen, entpacken und  Daten wieder rüberschaufeln. (das müsste ja Probleme gebe, weil ich ja mit "root" entpacke. Das gibt doch sicherlich Probleme mit den "User" und "Gruppen", oder?

Wenn ich 3.0.5.1 installiere, bringt mir das Backup von usr/local/ispconfig ja auch nix, weil das ja der Stand von 3.0.4.6 ist.?!

Stimmt mein Weg? Oder hab ich einen Denkfehler?

5 Stunden downtime gleich... Mir glüht der Kopf und ich hab nicht geschlafen 

Dont drink and root... oh mann!


----------



## nowayback (20. März 2013)

bevor du alles runterlädst und wieder hoch mit ner 20k leitung: In der beschreibung steht Backup Space 100 GB... also benutz besser den


----------



## Hirbod (20. März 2013)

Danke, das habe ich natürlich auch gemacht 

ISPConfig ist schon mal installiert und läuft. Jetzt heisst es, Backups wieder einspielen.. Mal sehen ob ich es hinbekommen werde.


----------



## Hirbod (25. März 2013)

Hi,

hatte vergessen mitzuteilen, das die Neuinstallation funktioniert hat und ich alle Systeme wieder zum Laufen gebracht hatte.

Eine Mitteilung für alle, die irgendwann mal dieses Problem haben sollte: ispconfig setzt in diversen Dateien (config-files für vlogger, mail, ftp etc) ein Passwort für die Datenbank.

Ich hab mit einem grep -R und dem alten Passwort-String nach allen Dateien gesucht und diese danach angepasst. Danach liefen alle Systeme ordentlich.

Viele Dank für die Hilfe.


----------



## florian030 (25. März 2013)

Das ist doch mal erfreulich.

Ansonsten ist das alles eine Frage der Reihenfolge:

ISPCOnfig installieren
Backup drüberkopieren
alte mysql-DB importieren + flush privileges;

Spart das Anpassen der zig kleinen Files.


----------



## Hirbod (25. März 2013)

Hi, 

das ging bei mir nicht so einfach, da ich praktisch für jede Conf im /etc/ Verzeichnis für FTP, Mail und co diverse Anpassungen gemacht habe

(SSL, Ports etc pp)

Ich musste also die Conf-Dateien ersetzen und hatte größtenteils überall noch alte Passwörter. Hat ne Weile gedauert bis ich da durchgestiegen bin, aber es passt.

Wichtig war noch die shadows, groups und passwd im /etc/ aus dem Backup zu übernehmen. Danach mit richtigen Attributen die MySQL-Rohdaten entpacken (damit die Groups und Owner passen [same with www]), damit die Rechte passen.

Dann nen Resync und läuft. Hab jetzt in der Serverbörse von Hetzner mit nem Kumpel nen gebrauchten Server mit großer Platte angemietet und nun wird 3x täglich mittels Rsync alles sychronisiert.. Sowas passiert nicht mehr


----------



## Till (26. März 2013)

Ein leiner Tipp um sowas vorzubeugen:

1) Server mit minal Linux und Openvz kernel aufsetzen.
2) eine OpenVZ VM erstellen, geht ganz einfach auf der Shell.
3) ISPConfig in die VM installieren.

Jetzt kannst Du in Zukunft ganz einfach mittels vzdum die VM sichern und als Backup wegspeichern. OpenVZ hat nahezu keinen processing Overhead da es eine Kernel level Virtualisierung ist.


----------



## Till (26. März 2013)

Ein leiner Tipp um sowas vorzubeugen:

1) Server mit minal Linux und Openvz kernel aufsetzen.
2) eine OpenVZ VM erstellen, geht ganz einfach auf der Shell.
3) ISPConfig in die VM installieren.

Jetzt kannst Du in Zukunft ganz einfach mittels vzdum die VM sichern und als Backup wegspeichern. OpenVZ hat nahezu keinen processing Overhead da es eine Kernel level Virtualisierung ist.


----------

