Festplatten-Cloning selbstgemacht

17. Mai 2007 · Anwendungen · andreas · Kein Kommentar

Nachdem ich lange Zeit mit einer c’t-Heft-CD-Version von Acronis TrueImage gearbeitet hatte, endeten nach Austausch der PATA durch eine SATA-Platte alle Rücksicherungen mit einem Synchonisierungsfehler. Dieser schien zwar die Funktionsfähigkeit nicht zu beeinträchtigen, es blieb aber ein ungutes Gefühl.

Eine Suche nach Alternativen brachte vor allem die Erkenntnis, daß der Markt relativ klein ist und eine Investition von rund 50 Euro das Minimum darstellt.

Wenn ich aber schon Geld ausgebe, dann soll auch gleich eine schon lange gewünschte Vorgehensweise umgesetzt werden: die Images werden nicht auf dem lokalen Rechner abgelegt sondern direkt über Netzwerk auf das in der Ecke stehende NAS FNS-1000 kopiert - eine Anforderung, die meist weg von der “günstigen” Home- zur teureren Professional-Variante und somit zu einer Ausgabe führt, die für die 1-2 Rücksicherungen / Jahr eindeutig zu hoch ist.

Eine weitere Recherche nach kostenlosen Alternativen blieb weitestgehend erfolglos - die meisten Programme wie z.B. partimage bieten NTFS-Support nur auf experimenteller Basis - womit wir wieder beim unguten Gefühl wären.

So wurde die Idee geboren, unter Verwendung bereits vorhandener Mittel die Sicherung selbst durchzuführen. Als Basis für das Sicherungssystem sollte die sowieso noch neben dem PC liegende Ubuntu-Live-CD her halten, als Werkzeug bietet sich - wie so oft unter Linux - dd an.

Daß dd das auf der Partition vorhandene Dateisystem vollkommen schnuppe ist, hat gleichzeitig Vor- aber auch Nachteile. Der klare Vorteil ist, daß es auf jeden Fall funktioniert - egal, welche Neuerungen Microsoft z.B. mit Vista einführt. Der Nachteil liegt allerdings auch auf der Hand - es werden alle Sektoren der Partition kopiert, unabhängig davon, ob tatsächlich Nutzdaten drin liegen oder nicht - ein Umstand, der das Image unnötig aufbläht und den Vorgang länger dauern lässt, als unbedingt nötig.

Eine kurze Suche förderte dann allerdings die ntfsprogs zu Tage - Teil einer Suite, die glücklicherweise als “stable” deklariert ist und bei Ubuntu direkt zum Lieferumfang gehört.

Also denn: die Ubuntu CD eingelegt und gebootet und unter “Applications / Accessories” ein Terminal geöffnet.

Die normale Arbeitsweise unter Ubuntu ist, sich als normaler Benutzer anzumelden und eventuell anfallende adminstrative Aufgaben mittels sudo als root zu erledigen - für die tägliche Arbeit extrem sinnvoll, für den hier geplanten Zweck allerdings eher lästig. Also erstmal das root-Account “reaktiveren” und als root anmelden:

ubuntu@ubuntu:~$ sudo passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
ubuntu@ubuntu:~$ su
Password:

Als nächstes wird ein Verzeichnis erstellt, über das die Freigabe des NAS gemountet wird. Standardmäßig hat Ubuntu allerdings das smbfs nicht mit an Bord, so daß hier zuerst nachinstalliert werden muß:

root@ubuntu:/home/ubuntu# apt-get install smbfs
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  smbfs
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 426kB of archives.
After unpacking 995kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com feisty/main smbfs 3.0.24-2ubuntu1 [426kB]
Fetched 426kB in 3s (113kB/s)
Selecting previously deselected package smbfs.
(Reading database ... 91545 files and directories currently installed.)
Unpacking smbfs (from .../smbfs_3.0.24-2ubuntu1_i386.deb) ...
Setting up smbfs (3.0.24-2ubuntu1) ...
root@ubuntu:/home/ubuntu# cd /mnt
root@ubuntu:/mnt# mkdir bkp
root@ubuntu:/mnt# mount -t smbfs \
  -o username=myuser,password=mypassword //server/disk /mnt/bkp

Nachdem ein Vorsichtiger Blick nach /mnt/bkp gezeigt hat, daß der mount geklappt hat und das Verzeichnis verfügbar ist, kann das eigentliche Backup beginnen.

root@ubuntu:/mnt# ntfsclone -s -o - /dev/sda1 | \
  split -b 2000m -d - /mnt/bkp/backup.img.
ntfsclone v1.13.1 (libntfs 9:0:0)
NTFS volume version: 3.1
Cluster size       : 4096 bytes
Current volume size: 41677459456 bytes (41678 MB)
Current device size: 41677461504 bytes (41678 MB)
Scanning volume ...
100.00 percent completed
Accounting clusters ...
Space in use       : 9185 MB (22.0%)
Saving NTFS to image ...
100.00 percent completed
Syncing ...
root@ubuntu:/mnt#

ntfsclone liest die belegten Sektoren von der ersten Partition der Festplatte und reicht sie direkt an split weiter, das sie in handliche Päckchen von 2000 Megabyte (sind das jetzt eigentlich 2 Gigabyte oder hätte ich hier 2048m angeben müssen?) aufteilt und schlußendlich ins Backupverzeichnis schreibt.