Wie kopiere ich mit dd rohe Blöcke auf derselben Festplatte?

412
Micah Røckstår Henning

Ich möchte physische Blöcke von einem Teil einer Festplatte auf einen anderen Teil derselben Festplatte verschieben. Ich habe es mit ddmacOS High Sierra versucht, aber es werden keine Daten übertragen.

$ sudo dd if=/dev/disk2 bs=512k count=16777216 skip=916709376 seek=1893461391 0+0 records in 0+0 records out 0 bytes transferred in 0.000022 secs (0 bytes/sec) 

Ich versuche also, 16.777.216 512 kB Blöcke von Position 916.709.376 zur Position 1.893.461.391 zu bewegen. Ich habe es auch probiert, of=/dev/disk2aber die Ergebnisse waren die gleichen. Was mache ich falsch? Vielen Dank!

1
Ich wünschte wirklich, die Leute wären tatsächlich * hilfreich * anstatt Geisterunterdrückung. Micah Røckstår Henning vor 6 Jahren 0

1 Antwort auf die Frage

2
Gordon Davisson

ddinterpretiert viele Parameter (einschließlich count, skipund seek) als Anzahl von Blöcken, nicht als Anzahl von Bytes. Als Ergebnis wird versucht, etwa 480 Terabyte in / dev / disk2 zu überspringen, und ich vermute, dass disk2 nicht so groß ist.

Meinten Sie diese Werte in Bytes? Wenn ja, gibt es ein Problem: Der seekWert ist eine ungerade Zahl (und die GCD der drei Zahlen ist 1). Ich denke, Sie müssten eine Blockgröße von einem Byte angeben ... was dazu führt, dass es läuft sehr langsam.

Danke für deine Antwort. Ich werde ein bisschen darüber nachdenken. Die Größen basieren auf der Partitionstabelle von sudo gpt show / dev / disk2, die ich für Blöcke hielt. Die Festplatte ist 1 TB groß. Im Grunde versuche ich, ein paar Partitionen an das Ende des Laufwerks zu verschieben, indem ich ihre Daten physisch verschiebe und dann die Partitionstabelle aktualisiere. Dadurch bleibt in der Mitte des Laufwerks viel Speicherplatz frei, den ich zum Erweitern einer Partitionsgröße verwenden kann. Micah Røckstår Henning vor 6 Jahren 0
@ MicahRøckstårHenning Ich glaube, die "gpt show" listet Positionen und Größen in 512-Byte-"Sektoren" auf. Wenn Sie also die Blockgröße auf 512 setzen, kann es funktionieren. Ich habe jedoch den Vorbehalt, die Partition in einem ungeraden Versatz zu platzieren. Viele moderne Laufwerke haben tatsächlich 4-KB-Sektoren. Daher sollten Sie normalerweise mehrere Vielfache davon haben (was ein Vielfaches von 8 512-Byte-Sektoren im alten Stil wäre.) ). Ich würde Ihre Platzierungsberechnungen erneut überprüfen. Gordon Davisson vor 6 Jahren 0