Ich habe in einer Synology Diskstation DS220+ zwei Festplatten die ich nicht als RAID nutze, sondern als separate Volumes konfiguriert habe. Eine enthält eher unwichtige Daten, die andere wird regelmäßig auf eine USB-Platte gesichert die außer Haus gelagert wird.
Nun wurde es langsam Zeit die mehr als 10 Jahre alte Festplatte gegen eine größere auszutauschen. Leider ist dieser Fall von Synology nicht vorgesehen, die Anleitungen zum Festplattentausch gehen immer davon aus, dass man die Platten im RAID-Verbund hat.
Von einem Bekannten, der so eine Umbauaktion schon einmal durchgeführt hat, bekam ich im Vorfeld schon einige wertvolle Tipps. So ist es wohl durchaus möglich einfach die neue Platte einzubauen, die alte per USB anzuschließen und dann alle Daten zu migrieren. Unschöner Nebeneffekt: Die Daten werden dann alle neu indiziert, vor allem die Photos-App hat bei dem Bekannten mehrere Tage gebraucht bis unter anderem die Gesichtserkennung durchgelaufen war.
Erschwerend kam hinzu, dass das genau die Platte war auf der alle zusätzlichen Pakete installiert waren. Ich hatte zwar einen Blogbeitrag gefunden, wie man Pakete auf eine andere Festplatte verschiebt, aber zum einen wird daraus nicht klar ob damit auch die Einstellungen der Pakete ebenfalls mit verschoben werden, oder ob man sie neu konfigurieren muss. Das wäre auch bei einer Neuinstallation der Pakete der Fall.
Ich entschloß mich dazu die alte Platte einfach mittels dd auf die neue Platte zu spiegeln und auszuprobieren ob die DiskStation damit klar kommt. Ich hatte ja nichts zu verlieren, sollte es nicht funktionieren hätte ich einfach die alte Platte wieder einbauen können, und das Backup auf der USB-Platte gab es ja auch noch.
Also nahm ich beide Platten, baute sie in einen PC ein (alle anderen Platten abgeklemmt) und bootete Ubuntu von einem USB-Stick. Dann ließ ich dd durchlaufen.

Knapp neun Stunden hat der Klonvorgang gedauert. Hätte es Parameter gegeben mit denen man es noch hätte beschleunigen können? Vielleicht, aber ich wollte ja keinen Benchmark machen, ich wollte einfach nur die neue Platte einbauen. Falls ja, “schreibt es in die Kommentare”, wie man bei YouTube heute sagt.
Danach baute ich die neue Platte in die DiskStation.

Die neue Platte wurde zwar erkannt, mit allem was darauf war, aber das Volume war immer noch 2,7 TB groß und ließ sich auch nicht vergrößern.

Ich wollte nicht an Partitionen, mdraid und LVM herumfriemeln solange die Platte gemountet ist, also baute ich sie nochmal in den PC und bootete wieder Linux. Dort änderte ich die Partition 3 der Platte auf die Maximalgröße. Dabei wurde auch der GPT-Record korrigiert, der aufgrund der geänderten Plattengröße nicht mehr passte. Dann baute ich die neue Platte ein zweites Mal in die DiskStation.
Diesmal wurde mir direkt angeboten das Volume zu erweitern.

Und danach stand die komplette Kapazität zur Verfügung.

Eine Woche läuft die neue Platte bereits in der DiskStation, bisher konnte ich keinen Haken an der Prozedur feststellen.
Hier nochmal eine Zusammenfassung:
- Alte und neue Platte an einen Linux-PC anschließen (oder von einem Live-USB Stick booten)
- dd if=/dev/sdX of=/dev/sdY bs=16M status=progress (Wichtig: unbedingt Festplattenbezeichnungen prüfen und anpassen!)
- fdisk /dev/sdb
- Startblock der Partition notieren
- Partition löschen
- Partition löschen und neu anlegen (notierter Startblock, maximale Größe)
- Neue Festplatte in DiskStation einbauen
- Im Speichermanager das Volume vergrößern
Fertig.