Gelegentlich habe ich Kommentare online gesehen wie „stellen Sie sicher, dass Sie 'bs=' setzen, weil der Standardwert zu lange dauert“ und meine eigenen extrem unwissenschaftlichen Erfahrungen von „naja, das schien länger zu dauern als das andere Zeit letzte Woche“ scheinen dies zu bestätigen. Wann immer ich also „dd“ verwende (normalerweise im Bereich von 1–2 GB), stelle ich sicher, dass ich den Parameter „bytes“ angebe. Etwa die Hälfte der Zeit verwende ich den Wert, der in dem Online-Leitfaden angegeben ist, aus dem ich kopiere; In der restlichen Zeit wähle ich eine sinnvolle Zahl aus der Liste „fdisk -l“ für das, was ich für das langsamere Medium halte (z. B. die SD-Karte, auf die ich schreibe).
Gibt es für eine bestimmte Situation (Medientyp, Busgrößen oder was auch immer wichtig ist) eine Möglichkeit, einen „besten“ Wert zu bestimmen? Ist es leicht zu bestimmen? Wenn nicht, gibt es eine einfache Möglichkeit, 90-95 % des Weges dorthin zu schaffen? Oder ist „nimm einfach etwas Größeres als 512“ überhaupt die richtige Antwort?
Ich habe darüber nachgedacht, das Experiment selbst auszuprobieren, bin mir aber nicht sicher, welche Faktoren die Antwort beeinflussen (abgesehen davon, dass es eine Menge Arbeit ist), also weiß ich nicht, wie man ein gutes Experiment entwirft.
Akzeptierte Antwort:
dd
stammt aus der Zeit, als alte IBM Mainframe-Bänder übersetzt werden mussten und die Blockgröße mit der zum Schreiben des Bandes verwendeten übereinstimmen musste, da sonst Datenblöcke übersprungen oder abgeschnitten wurden. (9-Spur-Bänder waren pingelig. Seien Sie froh, dass sie schon lange tot sind.) Heutzutage sollte die Blockgröße ein Vielfaches der Gerätesektorgröße sein (normalerweise 4 KB, aber auf sehr neuen Festplatten kann sie viel größer und auf sehr kleinem Daumen sein Laufwerke können kleiner sein, aber 4 KB ist trotzdem ein vernünftiger Mittelweg) und je größer, desto besser für die Leistung. Bei Festplatten verwende ich oft Blockgrößen von 1 MB. (Wir haben heutzutage auch viel mehr Speicher, den wir herumwerfen können.)