sollte ich mein btrfs-Dateisystem mit mehreren Geräten auf Festplattenpartitionen oder Raw-Geräten speichern?

16

Wenn ich ein btrfs-Dateisystem mit mehreren Geräten erstellen möchte . Die offizielle Empfehlung aus der Dokumentation scheint zu sein, es auf Raw-Geräten zu erstellen; dh /dev/sdb, /dev/sdcusw., aber dies wird nicht erklärt.

Gibt es irgendwelche Vorteile eine Partitionstabelle zuerst, entweder GPT oder MBR, und dann auf diesen Geräten zur Schaffung der Erstellung des Dateisystems auf /dev/sdb1, /dev/sdc1et cetera? Hat das Füttern ganzer Geräte einen besonderen Vorteil, oder sind diese im Grunde gleichwertig?

Glyph
quelle

Antworten:

7

Partitionierung ist nur eine Möglichkeit, eine Festplatte in mehrere Volumes aufzuteilen, die unabhängig voneinander verwendet werden können. Wenn Sie nur ein Volume pro Festplatte benötigen, bringt die Partitionierung nichts mit sich - sie beansprucht nur etwas Festplattenspeicher (ja, sie ist sehr klein) und erschwert das Ausrichten Ihrer Daten auf Festplatten mit 4K-Sektoren oder Flash-Laufwerken. Der einzige andere Grund für eine Partitionstabelle ist das Booten von diesem Laufwerk. Wenn es keinen Grund gibt, eine Partitionstabelle zu haben, ist es einfacher, sie wegzulassen.

mgorven
quelle
3

Die Partitionierung hat eine Reihe von Nachteilen. MBR verschwendet eine ganze "Spur". Ein Track ist die Anzahl der Sektoren mal der Sektorgröße, aber eine echte Disc hat Sektoren und die Sektorgröße ist nicht 512o. Eine echte Disc hat Blöcke, die für rotierende Discs achtmal so groß und für Flash-Geräte viel größer sind. Diese Verschiebung zur nächsten Spur kann es unmöglich machen, "logische" Sektoren mit tatsächlichen Blöcken unter Verwendung von Stride und Stripe auszurichten.

Früher konnten Sie die Sektorgröße in FAT definieren, aber MBR hat dem ein Ende gesetzt.

Wenn Sie von der CD booten, benötigt das BIOS eine Boot-Signatur am Ende der ersten 512o, damit es weiß, dass es diese ausführen kann, wenn sie geladen ist. Wenn Sie EFI laufen, betrinken Sie sich. Das Dateisystem müsste hierfür eine Lücke haben, wenn es zum Booten des Systems verwendet werden soll.

XFS (meistens für / var bei rotierenden Discs) hat kein solches Loch.

Andrew Buckeridge
quelle
1
Ich bin ein bisschen verwirrt; Wäre "(Gesamt) Anzahl der Sektoren mal Sektorgröße" nicht die gesamte Festplatte, wenn die Festplatte aus Sektoren besteht? Oder ist etwas anderes als "total" impliziert?
Glyph
1

Verwenden Sie separate Datenträger, um die Geschwindigkeit beim Lesen und Speichern von Datenträgern zu verbessern.

Grundsätzlich ist /dev/sdaeine Festplatte ist, und /dev/sda1, /dev/sda2sind Teile des gleichen physikalischen Datenträger.

Wenn Sie /dev/sda+ /dev/sdbfür Ihr Setup verwenden, verfügen Sie über zwei separate Festplatten, die gleichzeitig abgerufen werden können.

Wenn Sie verwenden /dev/sda1 /dev/sda2, wird die gleiche Festplatte verwendet, die versucht, beide zu lesen, und daher muss die eine und die andere ausgeführt werden.

Jharwood
quelle
1
Wenn Sie sagen, dass die Verwendung sdaschneller ist als sda1, woher kommt dieser Geschwindigkeitsvorteil?
user1686
Der Geschwindigkeitsvorteil ergibt sich aus dem parallelen Speichern und Abrufen Ihrer Daten durch Hardware, anstatt dass dieselbe Hardware versucht, zu mehreren Speicherorten auf derselben Festplatte zu
springen
Mehrere Speicherorte oder mehrere Partitionen wurden nicht erwähnt. Die Frage bezieht sich auf eine einzelne Partition, die die gesamte Festplatte abdeckt.
user1686
Tut mir leid, dass ich die Frage falsch verstanden habe.
Jharwood
0

Wenn ich das richtig verstehe, erlaubt die Verwendung ganzer Festplatten BTRFS, einige Annahmen zu treffen, die eine Optimierung des Verhaltens ermöglichen.

Wenn vollständige Geräte für die Arbeit freigegeben werden, kann davon ausgegangen werden, dass der Zugriff auf das Gerät für das Gerät nicht schwierig ist, und die Zugriffsmethoden können angepasst werden, anstatt dass von Zeit zu Zeit Verzögerungen bei anderen Daten erwartet werden müssen, die von irgendwoher abgefragt werden Sie müssen warten, bis das Laufwerk wieder auf das Gerät zugreift, nachdem Sie die andere Anforderung bearbeitet haben.

Killermist
quelle
Was Sie beschreiben, wird im Allgemeinen als die Realität von Festplatten-E / A bezeichnet, nicht als dateisystemspezifisch. Was haben Sie konkret in btrfs gesehen, das E / A basierend darauf, ob eine Partitionstabelle vorhanden ist oder nicht, unterschiedlich optimiert oder plant?
Brian Cline
Das Dateisystem macht das nicht. Das Betriebssystem tut es, wenn dieses Verhalten angemessen ist. Meine Verwendung von "es" war wahrscheinlich mehrdeutig und / oder überlappend und / oder exklusiv voneinander.
Killermist
0

Bei all diesen 4K-Sektoren-Laufwerken können Sie die Partitionierung verwenden, um Ihr Dateisystem auszurichten. Starten Sie fdisk einfach mit:

fdisk -H 224 -S 56

und erstellen Sie eine einzelne Partition, die sich über das gesamte Gerät erstreckt.

Lester Cheung
quelle