1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Neue klassische HD (1TB) für Backup und ZFS vorbereiten

Dieses Thema im Forum "FreeBSD - Allgemein" wurde erstellt von ralli, 13 Juli 2017.

  1. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Neulich habe ich ja einen tollen Tipp von @Yamagi bekommen, wie ich die SSD mit blkdiscard schnell plattmachen kann. Diese Methode funktioniert ja mit normalen klassischen HD's nicht. Wie kann ich eine jetzt mit ext4 formatierte HD (1TB) schnell platt machen, damit ich ein ZFS Datenpool für Kodi darauf anlegen kann? Das sollte, wenn möglich, nicht Stunden dauern ... Geht ja irgendwie mit DD, oder gibt es noch eine andere Methode?
     
  2. KobRheTilla

    KobRheTilla used register

    Registriert seit:
    20 Januar 2011
    Beiträge:
    1.033
    Wozu überhaupt? Ich würde einfach die Partitionstabelle löschen und gut ist.

    Rob
     
  3. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Gute Frage, aber ich meine mich zu erinnern, das es mal irgendwie trotzdem Ärger gab, wenn nur die Partionstabellen gelöscht wurden. Aber ich versuche es, geht das auch, ohne das ich FreeBSD 11 verlassen muß, oder muß ich die Knoppix DVD mit Gparted benutzen?
     
  4. KobRheTilla

    KobRheTilla used register

    Registriert seit:
    20 Januar 2011
    Beiträge:
    1.033
    # gpart destroy [-F] <devicename>
    # gpart create -s GPT <devicename>
    # gpart add -t freebsd-zfs -a 1M -l pool <devicename>

    Schon hast du eine GPT drauf und eine Partition, die so groß ist wie die ganze Platte.
    Das Gerät hängt dann unter /dev/gpt/pool.

    Rob
     
    ralli gefällt das.
  5. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Super Rob, danke, werde ich sofort umsetzen. :D
     
  6. foxit

    foxit Moderator Mitarbeiter

    Registriert seit:
    4 Juli 2012
    Beiträge:
    1.365
    Ort:
    /home
    Und sollte das nicht genügen, kann du noch folgendes machen:
    Code:
    dd if=/dev/random of=/dev/<HDD> bs=1M count=10
    
    Für ZFS gibt es auch noch:
    Code:
    zpool labelclear <HDD>
    
    Gruss
     
  7. chaos

    chaos *nix'ler

    Registriert seit:
    22 Juli 2003
    Beiträge:
    832
    Ort:
    München
    Die Begründung hier im Forum irgendwo zu finden:
    Ist keine Partitionstabelle auf der Platte vorhanden, dann schlägt ein Betriebssystem aus Redmond sofort vor: "Festplatte formatieren?"
    Bei einer vorhandenen Partitionstabelle ist es etwas zurückhaltender.
     
  8. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Hat leider nicht funktioniert. Nach dem ersten Kommando gab es die Meldung: kein Treffer! Habe dann die restlichen zwei Kommandos ausgeführt und nach einem Neustart bin ich dann in der Konsole gelandet mit dem Prompt rootmount oder mountroot. Jetzt schreibe ich gerade unter Debian. Mal sehen, ob ich morgen FreeBSD neu installiere. Das ist sehr ärgerlich, hätte ich gparted genommen, wäre das nicht passiert! Ich weiß auch nicht, was ich verkehrt gemacht haben könnte, denn ich habe vorher noch mal das Device mit camcontrol devlist überprüft.
     
  9. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Ich bin kein Experte, wünschte mir aber schon, das mir ein technisch affiner User erklären könnte, was hier passiert ist, damit in Zukunft ein solcher Fehler vermieden werden kann.
     
  10. schorsch_76

    schorsch_76 Member

    Registriert seit:
    25 Dezember 2013
    Beiträge:
    50
    @ralli: Ich hätte vermutet dass du das falsche Device gewählt hattest aber du hast es ja überprüft.

    Ist die Platte etwa am Rechner gesteckt beim Neustart? Dann vermute ich dass sich die Namen (ada0/ada1) geändert hat und deshalb der Rechner nicht bootet.

    Du scheinst ja öfter zu installieren. Immer aus so einem Grund?

    Debian nutzt UUIDs zum eindeutigen Identifizieren der Geräte. Unter FreeBSD kann man Label nutzen. Soweit ich weis nutzt ZFS auch ein Label aber der Bootparameter enthält vermutlich /dev/adaxyz.

    Gruß
    Georg
     
  11. pit234a

    pit234a Well-Known Member

    Registriert seit:
    8 Juli 2006
    Beiträge:
    3.022
    das zeigt ja nicht an, welche Platte denn was ist. Natürlich kann das schon genügen, wenn man sich in seinem PC auskennt. Mir wäre das zu wenig. Ich würde natürlich auch nach mount sehen und vor einem gpart destroy nochmal ein gpart show auf die gleiche Platte loslassen.

    Nunja, du hättest in keinem Fall die beiden nachfolgenden Befehle absetzen sollen, nachdem der erste keinen Treffer ergab. Da muss was faul gewesen sein, was auch immer. Und das hättest du zuerst herausfinden müssen und nicht einfach fortfahren dürfen.
    Es kann dir so kaum jemand sagen, was passiert ist.
    Ich sage es mal so: hättest du alles richtig gemacht, wäre es nicht falsch gelaufen.
    Es macht eher wenig Sinn, nun die Möglichkeiten im Single-User-Betrieb zu erklären. Du hast ja noch einen Teil deines FreeBSD gefunden und müsstest "nur" nachsehen, ob du den Rest finden und wieder einbinden kannst. Da gibt es noch geringe Chancen. Aber du hast sicher schneller neu installiert, als ich da was dazu geschrieben habe. Zudem habe ich keine Erfahrung mit ZFS in der Beziehung, da gibt es ja keine Einträge in einer fstab und ich müsste das auch alles erst lesen.
     
  12. Yamagi

    Yamagi Possessed With Psi Powers Mitarbeiter

    Registriert seit:
    14 April 2004
    Beiträge:
    8.704
    Ort:
    Schleswig-Holstein
    Code:
    # gpart destroy [-F] <devicename>
    
    Das löscht die Partitionstabelle auf dem angegeben Device. Ohne -F nur, wenn sich keine Partitionen mehr in ihr befinden. Ansonsten gibt es einen Fehler. Mit -F auch dann, wenn es noch Partitionen gibt. Gibt es keine Tabelle, gibt es in jedem Fall einen Fehler. Dein Fehler wird also eine von zwei Ursachen gehabt haben:
    • Du hast den Befehl ohne -F ausgeführt, obwohl noch Partitionen vorhanden waren.
    • Es gab keine Partitionsttabelle mehr.
    Wenn es das richtige Device war, was du gelöscht hast, verhindern beide Fehler nicht den Systemstart.

    Code:
    # gpart create -s GPT <devicename>
    
    Erstellt eine neue GPT Partitionstabelle. Das klappt nur, wenn nicht schon eine vorhanden gewesen ist. Gab es hier keinen Fehler, wird 'gpart destroy' also wahrscheinlich fehlgeschlagen sein, weil keine Tabelle mehr existierte.

    Code:
    # gpart add -t freebsd-zfs -a 1M -l pool <devicename>
    
    Legt eine neue Partition vom Typ freebsd-zfs mit dem Label 'pool' an. Das Alignement beträgt dank '-a 1M' ein Megabyte und da keine Größe angegeben wurde, erststreckt sie sich über die ganze Festplatte.

    Wenn du das richtige Device zu packen hattest, gibt es keinen Grund, dass das System anschließend nicht mehr hochfährt. Außer, dass sich die Devices der vorhandenen Speichermedien umbenannt haben, da sich ihre Reihenfolge geändert hat. In dem Fall muss man nur die /etc/fstab entsprechend anpassen. Wenn allerdings das falsche Device behandelt wurde, kann man die Sache nur dann retten, wenn noch nicht in die neue Partition geschrieben wurde. Dafür ist das Tool 'testdisk' zu empfehlen, es findet sehr zuverlässig gelöschte Partitionen.
     
  13. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Ja, ichhabe es natürlich vorher mit camcontrol überprüft, um sicher zu sein. Die klassische HD ist keine externe USB Platte, FreeBSD 11 war auf der internen SSD installiert und die klassische HD mit 1TB ist auch eine interne Platte.
     
  14. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    @Yamagi, ich habe definitiv den Schalter -F benutzt und auch das richtige Device angegeben. Der frisch angelegte Datenpool wurde ja auch unter GPT/pool angezeigt. Gleich bei der Neuinstallation werde ich genau hinsehen, welches Device die zweite Platte hat. Dann werde ich Gparted nehmen, alle Partitionen löschen und später mit ZFS ganz einfach einen neuen Datenpool anlegen, hat ja früher auch funktioniert. Warum der Rechner danach nicht mehr hoch fuhr, bleibt mir auch ein Rätsel.
     
  15. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    And the Winner is ..... ralli:D Alles neu installiert und konfiguriert, FreeBSD 11, KDE und Datenpool für die HD angelegt und schreibfähig gemacht.
     
  16. derOliver

    derOliver Systemheld

    Registriert seit:
    31 Dezember 2014
    Beiträge:
    334
    Weil du, auch wenn du es dir nicht eingestehen willst, die falsche Platte platt gemacht hast :p
     
  17. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Natürlich kann das auch passiert sein. Ein Tippfehler ist schnell produziert und abends nimmt die Konzentration ab. Warum sollte ich mir das denn nicht eingestehen? Deshalb habe ich Rob auch keinerlei Vorwurf gemacht, denn schließlich bin ich in letzter Konsequenz selbst verantwortlich. Menschen machen Fehler und Fehler machen Menschen menschlich.:D
     
  18. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Ich habe gestern einfach mit der Knoppix DVD und Geparted alle Partionen auf der HD gelöscht und anschließend unter FreeBSD
    Code:
    # zpool create -f backup /dev/ada1
    eingegeben. Ohne Schalter -f hat es nicht funktioniert. Anschließend die HD backup mit
    Code:
    chown -R ralph:ralph backup
    beschreibbar gemacht. Mich würde jetzt interessieren, was passieren würde, wenn ich noch mal nach Rob's Anweisungen vorgehe und ob es dann funktionieren würde. Denn ich bin mir immer noch nicht sicher, das ich das falsche Device angeben haben soll, denn ich kann schon unterscheiden zwische ada0 (SSD) und ada1 (HD). Wenn es funktioniert, war es tatsächlich mein Fehler, wenn das gleiche passiert wie vorgestern ist irgendetwas oberfaul.
     
  19. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    So neuer Versuch.

    Code:
    gpart destroy [-F /dev/ada1
    ergibt folgende Fehlermeldung:

    Code:
    gpart: Invalid number of arguments.
    dmesg sagt unter anderem:

    Code:
    GEOM: ada1: the primary GPT table is corrupt or invalid.
    GEOM: ada1: using the secondary instead -- recovery strongly advised.
    Nach der Anlegung des Datenpools gemäß meines vorherigen Postes wurde der pool back aber mit dm schaler -f ordnungsgemäß angelegt. Meine ganzen Daten sind da mittlerweile drauf gesichert und es funktioniert ja. Aber ich möchte das ganze auch technisch verstehen, komme aber bei den Fehlermeldungen nicht mehr mit. Wenn GPT corrupt, warum ließ sich dann ein datenpool back auf der HD ada1 anlegen?

    Es wäre schön, wenn mich mal jemand aufklären könnte. Danke!
     
  20. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Ich sehe gerade, das eine Klammer fehlte, jetzt nehme ich
    Code:
    gpart destroy [-F] /dev/ada1
    und es kommt die Fehlermeldung:

    Code:
    kein Treffer
    Das hatte ich doch schon mal.
     
  21. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Als root:

    Code:
    gpart create -s GPT /dev/ada1
    
    ergibt folgende Fehlermeldung:
    Code:
    gpart: geom 'ada1': Operation not permitted
    Jetzt weiß ich nicht weiter.
     
  22. Yamagi

    Yamagi Possessed With Psi Powers Mitarbeiter

    Registriert seit:
    14 April 2004
    Beiträge:
    8.704
    Ort:
    Schleswig-Holstein
    Code:
    gpart destroy -F /dev/ada1
    
    Ohne Klammern. Die Klammern hat @KobRheTilla aus der Manpage kopiert. Sie sagen nur aus, dass -F optional ist.
     
  23. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Ok danke @Yamagi , habe ich jetzt gemacht:
    Code:
    gpart destroy -F /dev/ada1
    Jetzt kommt folgende Fehlermeldung:

    Code:
    gpart: arg0 'ada1': Invalid argument
     
  24. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    camcontrol devlist ergibt:
    Code:
    <INTENSO SSD 128GB O0213E>         at scbus0 target 0 lun 0 (pass0,ada0)
    <ST1000DX001-1CM162 CC43>          at scbus1 target 0 lun 0 (pass1,ada1)
    <HL-DT-ST DVDRAM GH24NSB0 LM01>    at scbus2 target 0 lun 0 (cd0,pass2)
    <AHCI SGPIO Enclosure 1.00 0001>   at scbus3 target 0 lun 0 (pass3,ses0
    also ist ada1 doch richtig für die HD?
     
  25. ralli

    ralli Well-Known Member

    Registriert seit:
    1 Juni 2012
    Beiträge:
    1.398
    Jetzt versuche ich:
    Code:
    geom disk list
    Hier die Ausgabe:
    Code:
    Geom name: ada0
    Providers:
    1. Name: ada0
       Mediasize: 128035676160 (119G)
       Sectorsize: 512
       Mode: r2w2e3
       descr: INTENSO SSD 128GB
       lunid: 0000000000000000
       ident: F20641R00631
       rotationrate: 0
       fwsectors: 63
       fwheads: 16
    
    Geom name: ada1
    Providers:
    1. Name: ada1
       Mediasize: 1000204886016 (932G)
       Sectorsize: 512
       Stripesize: 4096
       Stripeoffset: 0
       Mode: r1w1e1
       descr: ST1000DX001-1CM162
       lunid: 5000c500676d9274
       ident: Z1DCQ15K
       rotationrate: 7200
       fwsectors: 63
       fwheads: 16
    
    Geom name: cd0
    Providers:
    1. Name: cd0
       Mediasize: 0 (0B)
       Sectorsize: 2048
       Mode: r0w0e0
       descr: HL-DT-ST DVDRAM GH24NSB0
       ident: (null)
       rotationrate: unknown
       fwsectors: 0
       fwheads: 0
    
    Also auch hier wird für die HD ada1 angezeigt.