• bleistift2@sopuli.xyzOP
    link
    fedilink
    Deutsch
    arrow-up
    0
    ·
    15 days ago

    Gar nicht. Siehe Überschrift (entzangendeutscht) „any% Speedrun”. Es ging ihm nur darum, die 100GB zu nehmen und eine Datei auf die Platte zu werfen.

    • inkeso@feddit.org
      link
      fedilink
      arrow-up
      0
      ·
      15 days ago

      Exakt. Aber wenn es wirklich darum ging auf Funktionstüchtigkeit zu prüfen (und nicht auf Schreibgeschwindigkeit oder so) wäre schlechtblöcke (badblocks) im nichtdestruktiven Modus und bei ausgehängter Partition das bessere Werkzeug. Und sehr, SEHR viel langwieriger.

      • bleistift2@sopuli.xyzOP
        link
        fedilink
        Deutsch
        arrow-up
        0
        ·
        15 days ago

        Danke für den Hinweis. Ich wusste, dass es Tools gibt, die „richtig” prüfen, ob eine Festplatte gut ist. So weit vertraue ich aber meinem Händler. Ich teste gerade hauptsächlich, ob die Kapazität wirklich korrekt angegeben wurde oder ob das Ding nach einem Terabyte wieder Daten überschreibt. Und ob sich sonst irgendwas Komisches bemerkbar macht.

        Die Festplatte soll eigentlich nur das Internet cachen, also kommt es nicht einmal darauf an, dass die Blöcke gut sind.

        • inkeso@feddit.org
          link
          fedilink
          arrow-up
          0
          ·
          15 days ago

          Aah OK. Mache ich so ähnlich auch gern bei dubiosen Speichermedien, wo es nur so halb drauf ankommt.

          Wäre ja in dem Fall sogar übertrieben zu gucken, ob korrekt geschrieben wurde.
          # blocksize 1M * 1k = 1G file
          dd if=/dev/urandom bs=1M count=1k status=progress | tee random.junk | md5sum
          md5sum random.junk
          

          (Prüfsummen sollten identisch sein)

          • bleistift2@sopuli.xyzOP
            link
            fedilink
            Deutsch
            arrow-up
            1
            ·
            2 days ago

            Danke für die Idee. Hab’s ein bisschen weiter automatisiert.

            #!/bin/bash
            
            set -euo pipefail
            
            OUTDIR="/mnt/HDD"
            COUNT=2621440
            for i in $(seq 1 28); do
                outfile="$(mktemp -p ${OUTDIR})"
                checksum=$(dd if=/dev/random bs=4096 count=${COUNT} status=none | tee "$outfile" | sha256sum)
                filename="$(realpath --relative-to=${OUTDIR} ${outfile})"
                echo "${checksum/-/${filename}}" >> "${OUTDIR}/sums"
            done
            
            sha256sum -c "${OUTDIR}/sums"