Frage Formatieren Sie die Partition für die Blockgröße nur für Fotos


Ich habe viele Fotos und arbeite intensiv an ihnen, hauptsächlich indem ich sie schnell über einen Fotobrowser durch- und durch Skripte arbeite.

  • Wäre es sinnvoll, eine separate Partition mit mehr als 4096 Blockgröße (z. B. 64k) zu formatieren?
  • Würden sich meine IO-Operationen für die Dateien verbessern? Wie?
  • Ist es gesund und sicher für die Festplatte mit ansonsten 512 Blockgrößen?

Prost.


2
2018-03-09 13:27


Ursprung




Antworten:


Wäre es sinnvoll, eine separate Partition mit 4096 Blockgröße zu formatieren?

Normalerweise ja. Es ist auch die Standardgröße, die für die meisten verwendet wird Dateisysteme.

Würden sich meine IO-Operationen für die Dateien verbessern? Wie?

Da Sie die Standardwerte verwenden würden, würden sie sich nicht ändern.

Nun, wenn Sie die Low-Level-Sektoren auf der Festplatte formatieren möchten (und nicht die Art, wie das Dateisystem oben auf diesen Festplatten-Blöcken verwendet wird):

Ob Die Festplatte ermöglicht 4KB-Sektorlesevorgänge, sodass Sie in einem einzelnen IO-Vorgang 8x mehr Daten lesen können. Das ist nicht dasselbe wie 8x schneller, da das Lesen länger dauern kann. Es ist jedoch wahrscheinlich etwas schneller.

Ist es gesund und sicher? für die Festplatte mit sonst 512 Blockgrößen-Partitionen?

Ich vermute, dass es weder das ist, was Sie fragen wollten, noch dass es mit Tools möglich ist, die Endbenutzern zur Verfügung stehen.

Die nächste Sache, die ich jemals gemacht habe, war Low-Level-formatieren alten IBM Mainframe-SCSI-Festplatten von 520 Bytes pro Sektor bis 512 Bytes pro Sektor. Das war die gesamte Festplatte inklusive Ersatzsektoren.

Mittlerweile verwenden SATA-Festplatten den gleichen Trick wie die alten SCSI-Festplatten: Wenn Sektorlesevorgänge fehlschlagen, wird versucht, den Sektor ein paar Mal zu lesen. Wenn ein erneutes Lesen funktioniert: keine große Sache. Wenn es ein paar Mal zu dem gleichen Sektor passiert, wird angenommen, dass dies bald fehlschlägt und stattdessen ein Ersatzsektor verwendet wird. Dies alles ist in der Firmware erledigt und der Endbenutzer bemerkt dies nicht.

Wenn Sie jetzt beginnen, die Größe des physischen Sektors auf der Festplatte zu ändern, müssen Sie die Firmware neu schreiben, damit sie die verschiedenen Sektorgrößen erkennt und die richtigen Ersatzteile verwendet. Technisch ist das möglich, aber in der Praxis benötigen Sie Factory-Tools und Insiderwissen.


1
2018-03-09 14:05



Danke, es tut mir leid, ich habe die Frage leicht abgeändert Would that make sense to format a separate partition with larger than 4096 block size (e.g. 64k)? Sie sagen also, wenn ich eine Partition zu einer größeren Blockgröße formatiere, wird die Partition nicht funktionieren? Nun gut, ich warte ein bisschen, aber ich bin ziemlich überzeugt, dass du recht hast und ich verwirrt war (ich dachte, dass so etwas möglich ist, um einen größeren Block zu formatieren, so dass der Kopf weniger "Schritte" benötigt, um den Block zu lesen) - catalesia
Nicht ganz. Ich sage, dass Sie ein Dateisystem auf einer Partition formatieren können, um eine große Blockgröße zu verwenden, und das könnte ein bisschen schneller sein. Aber Sie können die (Roh-) Sektoren auf der Festplatte nicht formatieren. Und die fdisk Auflistung ist über diese Sektoren. - Hennes


Die Blockgröße ist relevant zum Lesen und Speichern von Dateien auf der Festplatte.

Wäre es sinnvoll, eine separate Partition mit mehr als 4096 Blockgröße (z. B. 64k) zu formatieren? 
Hängt von der Größe Ihrer Fotos. Wenn alle oder zumindest die meisten Dateien eine Größe haben, die ein Vielfaches davon ist oder etwas weniger als Vielfache davon würde es sicherlich helfen, sonst würden sie nur mehr Platz auffressen.

Würden sich meine IO-Operationen für die Dateien verbessern? Wie? 
Wenn die Dateigröße einer Datei ein Vielfaches der Blockgröße oder etwas weniger als die Blockgröße beträgt, kann dies in gewissem Maße hilfreich sein, da das Lesen und Schreiben in Blöcken und nicht in Bytes erfolgt.

Ist es gesund und sicher für die Festplatte mit ansonsten 512 Blockgrößen?
Mir sind keine Auswirkungen bekannt, die auf die Festplatte aufgrund von Änderungen der Blockgröße zurückzuführen sind.


1
2018-03-09 14:11



Nun, die Dateigrößen variieren, sind aber über 3,5 MB und über 20 MB. Trotzdem bin ich bereit zu opfern n MB wenn zum Beispiel 16x größere Cluster (wie teppic vorschlägt) öffnet meine Fotos etwas schneller und wenn die Schreibvorgänge auf der Festplatte etwas schneller sind. - catalesia
Ich fürchte, @catalesia, das ist eine Menge Abwechslung, und dedizierte Paritionen einer bestimmten Blockgröße kann kaum eine wesentliche Änderung vornehmen, nehme ich an. - jobin


Ich nehme an, dass Sie ext4 verwenden. Standardmäßig wird eine Blockgröße verwendet, die die beste Leistung für das Dateisystem bietet. Dies ist normalerweise bereits 4 KB. Sie können es sehen, indem Sie diesen Befehl ausführen:

$ sudo tune2fs -l <partition device>

Es gibt kein Problem, wenn die Festplatte kleinere Blöcke hat, es bedeutet nur mehr als ein zugrunde liegender Block wird vom Dateisystem verwendet.

ext4 ist clever, wie es Blöcke verwendet, so dass es für große Dateien nicht in einzelnen 4kb-Aufrufen vor- und zurückgeht. Eine größere Blockgröße ist nicht direkt möglich (mkfs.ext4 -b 8192 <device> wird nicht funktionieren, zum Beispiel). Es gibt einen undokumentierten -C Option zum Angeben einer Clustergröße, wodurch die Blockgröße effektiv erhöht wird.


1
2018-03-09 13:52



Vielen Dank für die Klärung, ich weiß nicht, warum ich dachte, dass die Blockgröße 512 ist? fdisk -l gab mir diesen Eindruck. Wie auch immer, ich werde die Frage umformulieren - was ich wirklich meine, ist größere Blockgröße die Leistung zu erhöhen? - catalesia
fdisk gibt die physische Sektorgröße zurück, die von der Festplatte gemeldet wird. Nicht die Blockgröße des Dateisystems. - Hennes
Alte Tests unter Windows (sollten für Ubuntu mehr oder weniger identisch sein) zeigten, dass größere Clustergrößen (Dateisystemblockgröße auf Ubuntu) große serielle Lesevorgänge beschleunigen. es hat auch verkleinert, wie zum Beispiel Platzverschwendung. - Hennes
@catalesia: Ich habe die Antwort aktualisiert - teppic
@teppic OK, ich werde mehr darüber lesen, mir war nicht bewusst, dass die Operation, die ich durchführen müsste, die Clustergröße erhöhen würde. Ich werde es auch testen. - catalesia