Thomas Kramer

IT-COW | All posts tagged 'PhotoRec'

Datenwiederherstellung meines Windows-Servers

By Administrator at Januar 03, 2013 20:06
Filed Under: Administration

Vor kurzem hat eine meiner WD-Green-Festplatten in meinem Windows-Server einen Defekt erlitten und den Dienst quittiert. Sobald nur eine einzige Festplatte ausfällt – zumindest von denen die nicht über RAID als Verbund zusammengeschlossen sind – reagiert ein Windows-Server unglaublich langsam in der grafischen Oberfläche.

 

In meinem Fall hatte es die MFT (Dateitabelle eines NTFS-Dateisystems) einer externen Festplatte zerschossen und alleine bis die Datenträgerverwaltung oder ein simples Explorer-Fenster geöffnet wurden vergingen Ewigkeiten. Im Prinzip ließ sich von einem anderen Rechner im gleichen Netzwerk ein Explorer-Fenster mit \\$IP-Adresse, dass die Freigaben des Servers auflistet, schneller aufrufen als die Datenträgerverwaltung lokal auf dem Server über RDP.

 

Ich kann ungeduldigen Naturen nur davon abraten einen Server ohne Monitoranschluss zu kaufen. Vorinstallierte Server mit WHS-Betriebssystem konnte man damals wegen der Vorgaben von Microsoft ausschließlich ohne Monitoranschluss kaufen – die Administration geschah dann prinzipiell remote über RDP oder über die WHS-Konsole. Nur sind diese erst dann verfügbar nachdem das Betriebssystem gestartet wurde, außerdem verzögert eine ausgefallene externe Festplatte selbst die GUI bereits extrem.

 

Der WHSv1 basiert auf Windows Server 2003 und ist seit 2007 verfügbar – das Nachfolgeprodukt WHS2011 basiert aber bereits auf Server 2008, dort mag das vielleicht anders aussehen. Jedenfalls ging es schneller die externen Festplatten alle abzuklemmen und separat nach und nach an meinem Notebook zu testen.

 

Dabei stellte sich heraus dass eine externe Festplatte einen Defekt erlitten, die MFT unlesbar ist und die Festplatte entsprechend als RAW-Device erkannt wird – demnach das verwendete Dateisystem nicht mehr erkennbar ist. Eine Wiederherstellung der MFT über TestDisk führte leider nicht zum Erfolg, auch chkdsk musste kapitulieren. Auch der S.M.A.R.T-Status wies einige defekte Sektoren aus.

 

Danach ging es an die Datenrettung; dabei habe ich gute Erfahrungen mit dem Freeware-Programm PhotoRec machen können, welches zu TestDisk gehört. Auf Computerbase gibt es eine gute Anleitung dazu - prinzipiell versucht TestDisk defekte Bootsektoren, MFTs und verlorene Partitionen wiederherzustellen während PhotoRec auf die Datenrettung spezialisiert ist. PhotoRec ist, anders als der Name suggeriert, nicht auf Fotos beschränkt sondern kann eine breite Palette von Dateien verschiedenster Datentypen erkennen und auf andere Datenträger retten.

 

Die beiden Programme sind die Referenz im Freeware-Sektor und stechen sogar einige kommerzielle Anwendungen aus. Ein Nachteil ist natürlich dass sie über eine DOS-Oberfläche bedient werden müssen. PhotoRec erkennt Datentypen anhand ihrer Dateiheader - auch AVI ist in der Liste der unterstützten Dateitypen enthalten, wird allerdings unter RIFF aufgelistet.

 

Vor einer Datenrettung sollte man natürlich in den Energieoptionen den automatischen Standbymodus deaktivieren, denn meine Datenrettung dauerte bei der USB 2.0-Festplatte (1 TB) über 20 Stunden. PhotoRec kann eine Datenrettung auch pausieren und später fortsetzen - aber wenn man ein externes Laufwerk als Ziel für die geretteten Dateien ausgewählt hatte fährt er beim nächsten Mal mit der internen Festplatte fort, da scheint noch ein Bug vorhanden zu sein.

 

Update 07.01.2013: Mittlerweile habe ich PhotoRec an drei verschiedenen Rechnern getestet - mit der gleichen defekten Festplatte -, 1. dem WHS-Server, 2. meinem Vista64-PC und 3. meinem Win7_64-Notebook. Irgendwie hing die Erkennung an den ersten beiden Rechnern - auf dem Notebook mit Win7 und der neuesten Beta funktioniert es am besten.

 

Die Emulationsschicht cygwin von der letzten PhotoRec-Beta verursachte auf dem zweiten Rechner das Problem dass mit der Cursor-Links-Taste im Verzeichnisbaum nicht so weit zurück gegangen werden konnte, dass eine Laufwerksauswahl möglich war (für das Ziellaufwerk) - wobei das unter Win7 funktioniert.

 

Man sollte sich noch bewusst machen dass bei einer defekten MFT die Verzeichnisstruktur und die Dateinamen weg sind, demnach alle geretteten Dateien dann in ein einziges Verzeichnis übernommen werden. Bei einer vollen Festplatte kann das Suchen bestimmter Daten damit ziemlich zeitaufwendig werden.

 

Ergänzung 02.02.2013: TestDisk und PhotoRec sind eigentlich Linux-Programme und laufen nur wegen der Emulationsschicht Cygwin unter Windows, diese funktioniert aber scheinbar nicht immer fehlerfrei. Es ist daher wahrscheinlich sinnvoller eine Linux-Boot-CD mit diesen Tools zu benutzen.

 

Software für Server

 

Nachfolgend einmal eine aktuelle Liste der Software die auf meinem nächsten Windows-Server auf jeden Fall installiert wird, ohne spezielle Reihenfolge:

 

- CPUID Hardware Monitor um die Temperaturen des Servers auszulesen.

 

- CrystalDiskInfo um den S.M.A.R.T.-Status von Festplatten anzuzeigen.

 

- TestDisk und PhotoRec zur Datenrettung.

 

- NSClient++, um weiterhin über den Linux-Server den Status meines Windows-Servers abzufragen und im Notfall E-Mails zu verschicken, siehe meine Icinga-Beitragsreihe.

 

- CopSSH als SSH-Server, mit freeSSHd gab es zuletzt Probleme bei mir. Wird benötigt um remote nach einer Authentifizierung Befehle auf dem Server auszuführen.

 

- LightsOut ist ein PlugIn für den alten und neuen Windows Home Server, um einen Server u. a. zeitgesteuert ein- und ausschalten zu lassen.

 

- WireShark um den Netzwerktransfer zu untersuchen, im Fach Rechnernetze benutzen wir das auch gerade häufig.

 

- Der Process Explorer von SysInternals, besser als der Windows-eigene Taskmanager.

 

- Den MS Log Parser

 

- hMailServer als E-Mail-Server, kann ich nur empfehlen. Ist Freeware und läuft bei mir seit Jahren problemlos. Wichtig für ein zentrales E-Mail-Backup, hMailServer hat dazu bereits ein Backupskript an Board.

 

- IMAPSize um E-Mails aus hMailServer selektiv zu löschen, hMailServer selbst kann nur alle Mails auf einmal löschen. Löschen vieler Mails am Client selbst ist eher schlecht, gelegentlich braucht man so ein Tool am Server. Laut golem ist das Tool zuverlässig, bei heise gibt es aber zwei User die das Programm als unzuverlässig abtun. Für den kommerziellen Gebrauch würde ich es auch nicht benutzen, aber für private Zwecke reicht es. Leider wird das Programm kaum weiterentwickelt und es gibt nicht viele Alternativen im Freeware-Bereich.

 

- robocopy für Kopierskripte, welches aber auch im Windows-Lieferumfang enthalten ist. An der Stelle muss ich schon erwähnen dass robocopy stabiler ist als das Pendant rsync unter Linux, dafür kann es im Gegensatz zu diesem nicht mit Hardlinks umgehen.

 

- Im Gegensatz zu robocopy kann hobocopy auch geöffnete Dateien kopieren.

 

- wget und rsyncBackup (von der c´t-Zeitschrift) um weiterhin ein inkrementelles Backup meines Blogs mittels Hardlinks zu erstellen. Wobei mir gerade auffällt dass mein wget-Skript falsch war, per default kopiert wget mit der -r Rekursiv-Option nämlich nur bis zu einer Verzeichnistiefe bis 5 Ebenen, deswegen sollte -l inf für unbegrenzte Tiefe angegeben werden - und man sollte die Option -N angeben damit er nur neue oder geänderte Dateien herunterlädt. rsyncBackup erstellt übrigens eine Log-Datei im Benutzer-Ordner, diese sollte man ab und zu kontrollieren ob sie auch wirklich nur geänderte Dateien berücksichtigt.

 

- ctTrueSize: Da Microsoft dem Windows-Explorer keine Berücksichtigung von Hardlinks gegeben hat die einzige Möglichkeit herauszufinden ob das rsyncBackup-Skript tatsächlich Links statt neuer Dateien angelegt hat. Ich habe das gerade getestet und festgestellt dass das rsyncBackup-Skript bei mir für mein Blog zwei Jahre lang immer neue Dateien statt Links erstellt hat – ctTrueSize erstellt Brutto-, Hardlinks- und Total-Ausgaben anhand derer man das verifizieren kann. Das Problem waren veraltete rsync-Dateien und cygwin-Bibliotheken - die Dateien aus dem Heise-Paket sollte man am besten direkt löschen und ein aktuelles cygwin-Paket installieren. Aber einen Fehler im aktuellen rsyncBackup-Skript 1.05 gibt es immer noch - das Rotieren funktioniert unter WHSv1 einfach nicht, dank der Hardlinks ist das aber auch nicht so wichtig wenn einfach alle Backups dauerhaft gespeichert werden.

 

- Firezilla Client. Den Server benötige ich nicht mehr unbedingt, den Client dagegen schon.

 

- KDiff kann man gegebenenfalls als Diff-Programm bei inkrementellen Backups von Textdateien benutzen.

 

- FreeCommander als Dateimanager, ich verstehe nicht warum Windows 7 immer noch keine Tabs im Windows-Explorer anbietet.

 

- TeraCopy kann einen Kopiervorgang pausieren und später fortsetzen, wichtig z. B. wenn man den Server zwischenzeitlich schlafen legen will. Das sollte mit der Ruhezustands/Standby-Funktion von Windows eigentlich auch gewährleistet sein, aber ich habe da auch schon anderes erlebt.

 

- WinDirStat um gegebenenfalls herauszufinden was soviel Platz auf einer Festplatte benötigt.

 

- Everything als Dateien-Suchprogramm. An der Stelle möchte ich erwähnen dass Everything im Gegensatz zu den meisten anderen Tools dieser Art Änderungen im Dateisystem nicht “pollen” muss sondern von der NTFS-MFT informiert wird, also automatisch immer auf dem aktuellen Dateistand ist. Außerdem hat das Tool auch einen Webserver implementiert um über den Webbrowser eine Dateisuche auf dem Server zu initiieren.

 

- regain als Volltextsuchmaschine, um auf dem Server vorhandene Textdokumente über den Webbrowser durchsuchen zu können. Dabei muss man natürlich aufpassen dass man seine Dateifreigaben nicht unterläuft.

 

- Entweder wird auf meinem nächsten Server wieder VirtualBox benutzt um mit VMs zu hantieren oder es wird direkt XenServer als Wirtssystem benutzt. Ubuntu Server ohne grafische Oberfläche kommt übrigens bereits mit 150 MB RAM aus, hatte ich in Tests bemerkt - zumindest eine ältere Version davon.

 

- Sharepoint Services (kostenlos) hatte ich bislang auf meinem Server als Groupware installiert, für mein jüngstes Projekt hatte ich aber eine virtuelle Maschine dafür zu Testzwecken eingerichtet. Entsprechend kommt auch die Powershell wieder drauf, in künftigen Server-Versionen ist die eh vorinstalliert.

 

- ClamWin als kostenloser Virenscanner. Dessen Erkennungsrate ist relativ schlecht, aber die gängigen kostenlosen Antivirenprogramme laufen in den Freewareversionen nicht auf den Server-Versionen von Windows. Besser als gar keinen Virenscanner zu benutzen - aber vielleicht in Zukunft stattdessen die Microsoft Security Essentials, denn ClamWin schreibt C:\Windows\temp gigabyteweise voll.

 

- TrueCrypt

 

- Angry IP Scanner

 

- MagicDisc um ISO-Images auf dem Server zu mounten, da kann man aber drüber streiten. Sinnvoll vielleicht für Installationsmedien von Programmen.

 

- ImgBurn um ISO-Dateien zu erstellen. Dabei ist das Tool sogar Batch-fähig, siehe diese Anleitung. Tipp: Lesen und Schreiben sollte nicht auf dem gleichen Laufwerk erfolgen, das ist nämlich am langsamsten.

 

- DVBViewer um zeitgesteuert Fernsehsendungen aufzuzeichnen, denn es ist ja ein Heimserver.

 

- PS3MediaServer als UPNP/DLNA-Server.

 

- Avidemux, wenn ich mich richtig erinnere musste ich damit einmal eine AVI-Datei reparieren lassen.

 

- VirtualDub um AVI-Dateien zu verketten.

 

- MP3Tag, um die eigene MP3-Sammlung korrekt zu taggen.

 

Dazu kämen noch diverse Datenbanksysteme wie Oracle oder Firebird…. folgendes würde ich beim nächsten Mal weglassen:

 

- FileZilla-Server (FTP) habe ich auf meinem Server drauf aber eigentlich nie benutzt, beim nächsten Mal lasse ich das weg.

 

- SquirrelMail um über den Webserver E-Mails zu schreiben und zu verschicken, wurde ebenfalls nie benutzt und kommt beim nächsten Mal nicht mehr drauf.

 

- CurrPorts um aktuell benutzte Ports von Anwendungen auszulesen, aber eigentlich geht das auch über netstat.

 

Folgende Dienste habe ich dagegen auf meinem Linux-Server installiert:

 

- Icinga zur Server-Überwachung.

 

- Postfix um E-Mails zu verschicken wenn Icinga Fehler entdeckt.

 

- OpenLDAP zur E-Mail-Adressenverwaltung, könnte man auch für ein Single-Sign-ON benutzen.

 

- Samba als SMB-Fileserver.

 

- DokuWiki für allgemeine Dokumentation.

 

- eGroupWare

 

- Bugzilla zur Fehlerverwaltung.

 

- Subversion zur inkrementellen Quellcodeverwaltung.

 

- CUPS um einen Drucker in ein Netzwerk einzubinden.

 

Monats-Liste