Wie kann ich einen PC verwenden, um Daten wiederherzustellen, wenn mein Synology NAS eine Fehlfunktion hat?

Wie kann ich einen PC verwenden, um Daten wiederherzustellen, wenn mein Synology NAS eine Fehlfunktion hat?

Einige Artikel wurden maschinell aus dem Englischen übersetzt und können Ungenauigkeiten oder Grammatikfehler enthalten.

Zweck

Dieser Artikel wird Ihnen helfen, Daten auf Ihrem PC wiederherzustellen, wenn das Synology NAS ausfällt.

Anmerkungen:

  • Die Laufwerke können das Volume möglicherweise nicht erneut einbinden, nachdem sie auf ein neues NAS migriert wurden.

Umgebung

Gilt für:

  • DSM-Version 6.2.x und höher
  • Volumes, die die Dateisysteme Btrfs oder ext4 verwenden
  • Ubuntu-Version 18.04 (Download ubuntu-18.04-desktop-amd64.isohier)

Nicht anwendbar für:

  • Volumes, die einen Lese-Schreib-SSD-Cache verwenden

Lösung

Daten mit einem PC wiederherstellen

  1. Stellen Sie sicher, dass Ihr PC über genügend Laufwerksschächte für die Installation der Laufwerke verfügt.
  2. Entfernen Sie die Laufwerke aus Ihrem Synology NAS und installieren Sie sie in Ihrem PC. Bei RAID- oder SHR-Konfigurationen müssen Sie alle Laufwerke (außer Hot-Spare-Laufwerke) gleichzeitig in Ihrem PC installieren.
  3. Bereiten Sie eine Ubuntu-Umgebung vor, indem Sie den Anweisungen in diesem Tutorial folgen.
  4. Gehen Sie zu Dateien in der linken Leiste und wählen Sie Home.
  5. Rechtsklicken Sie und wählen Sie Neuer Ordner, und erstellen Sie einen oder mehrere Ordner als Einhängepunkte für den Datenzugriff.1
  6. Rechtsklicken Sie auf den neuen Ordner/die neuen Ordner, klicken Sie auf Eigenschaften, der übergeordnete Ordner mit Ordnernamen ist ${mount_point} .
    • Beispiel: Wenn der übergeordnete Ordner /home/ubuntu/ und der Ordnername Test ist, wird der Einhängepunkt /home/ubuntu/Test/ sein.
  7. Gehen Sie zu Show Application in der unteren linken Ecke >Type to search....
  8. Geben Sie Terminal in die Suchleiste ein und wählen Sie Terminal.
  9. Geben Sie den folgenden Befehl ein, um Root-Rechte zu erhalten.
    sudo -i
  10. Geben Sie die folgenden Befehle ein, um mdadm und lvm2 zu installieren, beides sind RAID-Verwaltungstools. lvm2 muss installiert sein, sonst funktioniert vgchange nicht.
    apt-get update
    apt-get install -y mdadm lvm2
  11. Geben Sie den folgenden Befehl ein, um alle aus Ihrem Synology NAS entfernten Laufwerke zusammenzuführen. Die Ergebnisse können je nach Speicherpool-Konfigurationen auf Ihrem Synology NAS variieren.
    mdadm -AsfR && vgchange -ay
  12. Geben Sie den folgenden Befehl ein, um die Informationen von ${device_path} zu erhalten.
    cat /proc/mdstat
    lvs
    Entsprechend der Ausgabe von pvs/vgs/lvs sind die Gerätepfade wie folgt:
    ${device_path}
    Keine lvs-Ausgabe
    /dev/${md}2
    Mit lvs-Ausgabe
    /dev/${VG}/${LV}3

    Nachfolgend sind die Beispiele von md status entsprechend seinem RAID- und Volumentyp:

    Gerätepfade
    Klassisches RAID mit einem Volume
    cat /proc/mdstat

    root@ubuntu:~# cat /proc/mdstat

    Personalities : [raid1]

    md4: active raid1 sdc3[0]

    73328704 blocks super 1.2 [1/1] [U]

    unused devices:<none>

    lvs
    Keine Ausgabe
    ${device_path}
    /dev/md4
    Gerätepfade
    SHR mit einem Volume
    cat /proc/mdstat

    root@ubuntu:~# cat /proc/mdstat

    Personalities : [raid1]

    md3 : active raid1 sda5[0]

    73319616 blocks super 1.2 [1/1] [U]

    unused devices:<none>

    lvs
    root@ubuntu:~# lvs

    LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert

    lv vg1000 -wi-a----- 69.92g

    ${device_path}
    /dev/vg1000/lv
    Gerätepfade
    Klassisches RAID/SHR mit mehreren Volumes
    cat /proc/mdstat

    Personalities : [raid1]

    md3 : active raid1 sdc3[0] sdd3[1]

    73328704 blocks super 1.2 [2/2] [UU]

    unused devices:<none>

    lvs
    root@ubuntu:~# lvs

    LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy% Sync Convert

    syno_vg_reserved_area vg1 -wi-a----- 12.00m

    volume_1 vg1 -wi-a----- 30.00g

    volume_3 vg1 -wi-a----- 30.00g

    ${device_path}
    /dev/vg1/volume_1
    /dev/vg1/volume_3
  13. Geben Sie die folgenden Befehle ein, um alle Laufwerke im Nur-Lese-Modus zu mounten, um auf Ihre Daten zuzugreifen. Geben Sie Ihren Gerätepfad (entsprechend RAID und Volumentyp in Schritt 12) in ${device_path} und den Einhängepunkt (erstellt in Schritt 6) in ${mount_point} ein. Ihre Daten werden unter dem Einhängepunkt abgelegt.
    mount ${device_path} ${mount_point} -o ro
  14. Überprüfen Sie die Daten in Dateien > Home > die Ordner, die Sie in Schritt 5 erstellt haben.
  15. Für verschlüsselte Volumes und freigegebene Ordner:

Wenn Sie die Daten mit den obigen Schritten immer noch nicht wiederherstellen können, versuchen Sie keine anderen Methoden zur Reparatur, da dies zu weiteren Schäden an Ihren Daten führen kann. Als letzte Option suchen Sie die Hilfe eines lokalen Datenrettungsunternehmens. Bitte haben Sie Verständnis dafür, dass die Datenwiederherstellung dennoch nicht garantiert werden kann.

Ein verschlüsseltes Volume auf einem PC mounten

Stellen Sie sicher, dass Sie den Wiederherstellungsschlüssel Ihres verschlüsselten Volumes haben. Die folgenden Schritte funktionieren nur, wenn der Wiederherstellungsschlüssel korrekt ist.

  1. Geben Sie in Terminal den folgenden Befehl ein, um cryptsetup zu installieren.
    apt-get install cryptsetup
  2. Geben Sie den folgenden Befehl ein, um Ihren Wiederherstellungsschlüssel zu entschlüsseln. Ersetzen Sie ${your_recovery_key_path} durch den Speicherort des Wiederherstellungsschlüssels und ${base64_decode_output_path} durch den gewünschten Ausgabedateinamen und -speicherort.
    base64 --decode ${your_recovery_key_path} > ${base64_decode_output_path}
    • Beispiel: Wenn sich der Wiederherstellungsschlüssel unter /mnt/volume1.rkey befindet und Sie die Ausgabedatei als decode_output benennen und unter /mnt speichern möchten, lautet der eingegebene Befehl: base64 --decode /mnt/volume1.rkey > /mnt/decode_output
  3. Geben Sie den folgenden Befehl ein, um zu testen, ob der Wiederherstellungsschlüssel korrekt ist. Ersetzen Sie ${base64_decode_output_path} durch den Ausgabedateinamen und -speicherort.
    cryptsetup open --test-passphrase /dev/vgX/volume_Y -S 1 -d ${base64_decode_output_path} -v
    • Beispiel: Wenn der Ausgabedateiname decode_output ist und sich unter /mnt befindet, lautet der eingegebene Befehl: cryptsetup open --test-passphrase /dev/vgX/volume_Y -S 1 -d /mnt/decode_output -v
  4. Überprüfen Sie das Ergebnis, um zu sehen, ob der Wiederherstellungsschlüssel korrekt ist:
    • Korrekte Schlüssel:
      Key slot 1 unlocked.
      Command successful.
    • Falsche Schlüssel:
      No key available with this passphrase.
      Command failed with code -2 (no permission or bad passphrase).
      Finden Sie den richtigen Schlüssel und kehren Sie zum vorherigen Schritt zurück, um erneut zu entschlüsseln.
  5. Geben Sie den folgenden Befehl ein, um das verschlüsselte Volume mit Ihrem entschlüsselten Wiederherstellungsschlüssel zu entschlüsseln.
    cryptsetup open --allow-discards /dev/vgX/volume_Y cryptvol_Y -S 1 -d ${base64_decode_output_path}
  6. Geben Sie den folgenden Befehl ein, um alle Laufwerke im Nur-Lese-Modus zu mounten, um auf Ihre Daten zuzugreifen. Ersetzen Sie ${device_path} durch Ihren Gerätepfad /dev/mapper/cryptvol_Y und ${mount_point} durch den in Schritt 6 erstellten Einhängepunkt. Ihre Daten werden unter dem Einhängepunkt abgelegt.
    mount ${device_path} ${mount_point} -o ro
  7. Siehe Schritt 14, um Ihre Daten wiederherzustellen.

Ein verschlüsselter freigegebener Ordner auf einem PC mounten

Stellen Sie sicher, dass Sie den Verschlüsselungsschlüssel Ihres verschlüsselten freigegebenen Ordners haben. Die folgenden Schritte funktionieren nur, wenn der Verschlüsselungsschlüssel korrekt ist.

  1. Geben Sie in Terminal den folgenden Befehl ein, um Root-Rechte zu erhalten.
    sudo -i
  2. Geben Sie die folgenden Befehle ein, um universe repo zu aktivieren und ecryptfs-utils zu installieren.
    apt-get-repository universe
    apt-get update
    apt-get install ecryptfs-utils
  3. Geben Sie den folgenden Befehl ein, um den FNEK-Wert (Filename Encryption Key) Ihres Verschlüsselungsschlüssels zu erhalten.
    ecryptfs-add-passphrase --fnek
    1. Wenn Sie dazu aufgefordert werden, geben Sie Ihren Verschlüsselungsschlüssel in das Feld Passphrase ein.
    2. Sie sehen eine Ausgabe ähnlich der folgenden:
      Inserted auth tok with sig [79d78a9afb5ebc95] into the user session keyring
      Inserted auth tok with sig [e4e4e8a3ca7d5d54] into the user session keyring
      Der Wert in den zweiten eckigen Klammern ist Ihr FNEK-Wert. Notieren Sie sich diesen Wert, da Sie ihn in den folgenden Schritten benötigen.
  4. Verwenden Sie den Befehl cd , um zu dem Einhängepunkt zu navigieren, den Sie in Schritt 6 des vorherigen Abschnitts erstellt haben.
    cd ${mount_point}
    • Beispiel: Wenn der Einhängepunkt ${mount_point} /home/ubuntu/Test/ ist, würde der eingegebene Befehl so aussehen: cd /home/ubuntu/Test/ .
  5. Erstellen Sie einen temporären Ordner als Einhängepunkt für Ihren verschlüsselten freigegebenen Ordner. Verwenden Sie den Befehl mkdir , um einen neuen Ordner zu erstellen.
    mkdir folder_name
    Ersetzen Sie im obigen Befehl folder_name durch einen Namen, den Sie dem Ordner geben möchten.
  6. Geben Sie den folgenden Befehl ein, um Ihren verschlüsselten freigegebenen Ordner zu mounten.
    mount -t ecryptfs folder_name
    Stellen Sie sicher, dass Sie folder_name durch den Namen des temporären Ordners ersetzen, den Sie im vorherigen Schritt erstellt haben. Um das Mounten abzuschließen, sind zusätzliche Eingaben erforderlich. Befolgen Sie die folgenden Anweisungen:
    1. Passphrase : Geben Sie Ihren Verschlüsselungsschlüssel ein.
    2. Select cipher : Geben Sie 1 ein, um aes als Verschlüsselungsmethode auszuwählen.
    3. Select key bytes : Geben Sie 2 ein, um 32 als Schlüsselbytes auszuwählen.
    4. Enable plaintext passthrough : Geben Sie n ein, um diese Option zu deaktivieren.
    5. Enable filename encryption : Geben Sie y ein, um diese Option zu aktivieren.
    6. Filename Encryption Key (FNEK) Signature : Geben Sie Ihren FNEK-Wert aus Schritt 3 ein.
    7. Nach Eingabe Ihres FNEK-Werts sehen Sie eine Ausgabe ähnlich der folgenden:
      Attempting to mount with the following options:
      ecryptfs_unlink_sigs
      ecryptfs_fnek_sig=e4e4e8a3ca7d5d54
      ecryptfs_key_bytes=32
      ecryptfs_cipher=aes
      ecryptfs_sig=79d78a9afb5ebc95

      WARNING: Based on the contents of [/root/.ecryptfs/sig-cache.txt], it looks like you have never mounted with this key before. This could mean that you have typed your passphrase wrong.
      Die Warnmeldung ist nur eine Erinnerung. Wenn Sie überprüft haben, dass Ihr Verschlüsselungsschlüssel korrekt ist, können Sie diese Warnung sicher ignorieren und fortfahren.
    8. Would you like to proceed with the mount : Geben Sie y ein, um zuzustimmen und mit dem Mounten fortzufahren.
    9. Would you like to append sig … in order to avoid this warning in the future : Geben Sie n ein, um fortzufahren.
    10. Wenn das Mounten erfolgreich ist, sehen Sie die folgende Ausgabe:
      Mounted eCryptfs

Anmerkungen:

  1. Ein Einhängepunkt entspricht einem Volume. Wenn Sie mehrere Volumes wiederherstellen müssen, erstellen Sie bitte die gleiche Anzahl von Ordnern wie die Anzahl der Volumes.
  2. Die Anzahl der md (Array) wird im Ergebnis von cat /proc/mdstat aufgelistet.
  3. syno_vg_reserved_area kann ignoriert werden, die Anzahl der volume_x entspricht der Anzahl der Volumes.
Zweck
Umgebung
Lösung
Daten mit einem PC wiederherstellen
Ein verschlüsseltes Volume auf einem PC mounten
Ein verschlüsselter freigegebener Ordner auf einem PC mounten