Parted sagt, nicht ausgerichtet, sollte aber richtig sein

Parted sagt, nicht ausgerichtet, sollte aber richtig sein
Model: ATA Samsung SSD 850 (scsi)
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start        End            Size           File system  Name  Flags
 1      24576B       1048575B       1024000B                          bios_grub
 2      1048576B     537919487B     536870912B     fat32              boot, esp
 3      537919488B   1611661311B    1073741824B    zfs
 4      1611661312B  500107845119B  498496183808B  zfs

parted /dev/sda align-check optimal 1
> 1 not aligned
parted /dev/sda align-check optimal 2
> 2 aligned
parted /dev/sda align-check optimal 3
> 3 aligned
parted /dev/sda align-check optimal 4
> 4 aligned

Die Sektorgröße beträgt 512 B, aber intern schätze ich 4096 B, da es sich um eine SSD handelt. In jedem Fall sollte es teilbar sein 24576 / 512 = 48. 24576 / 4096 = 6Gibt es einen Grund, warum Parted sagt, es sei nicht ausgerichtet?

Mir ist bewusst, dass die aktuelle Konfiguration keine Auswirkungen auf die Leistung haben sollte, da sie (wenn überhaupt) nur beim Booten gelesen wird, aber ich frage mich, warum sie so gemeldet wird, wie sie ist.

Als Referenz wird das Partitionslayout verwendet, das von Debian ZFS auf Root vorgeschlagen wird (https://openzfs.github.io/openzfs-docs/Getting%20Started/Debian/Debian%20Buster%20Root%20on%20ZFS.html)

Antwort1

Versuchen Sie align-check minimal 1es, damit sollte es kein Problem sein.

Unabhängig davon, was getrennt würde betrachtenoptimalFür Ihre Hardware sollte bei der Optimierung des Partitionslayouts für Flash-Speicher berücksichtigt werden, dass Chips inSeiten UndBlöcke löschen.

Sie können nicht einfach einSeite. Der Prozessor, der das Gerät steuert, muss es zuerst löschen und das Löschen ist nur in Einheiten möglich, die viel größer als die Seitengröße sind.

Wenn die Seitengröße für Ihr Gerät wahrscheinlich im Bereich von 2 KB bis 32 KB liegt,LöschblockDie Größe liegt normalerweise irgendwo zwischen 128 KB und 2 MB (64-mal mehr), abhängig von der Kapazität der Festplatte. 4 MB sind in der GB-Kategorie nicht ungewöhnlich.

** Alle Vorgänge auf dem Laufwerk können nur in diesen Einheiten erfolgen **

=> Vergessen Sie die Seitengröße, öffnen Sie die Datenblätter Ihres jeweiligen Geräts, finden Sie die Größe derBlöcke löschenRichten Sie dann Ihre Partitionen entsprechend aus.

Achtung: Es war eine Zeit, als Samsung mit sehrüberraschendWerte und nicht besonders erpicht darauf, diese Informationen preiszugeben.

Antwort2

Es ist „nicht ausgerichtet“, aber das spielt für die bios_grubPartition auch keine Rolle. Grub speichert dort nur ein paar Kilobyte an Daten, die einmal beim Booten gelesen werden. Ob es ausgerichtet ist oder nicht, macht in der Praxis keinen Unterschied.

Neuere Versionen enthalten partedmöglicherweise ausführlichere Informationen zur Ausrichtungsmeldung:

# parted --version
parted (GNU parted) 3.3
Copyright (C) 2019 Free Software Foundation, Inc.
...
# parted /dev/loop0 align-check optimal 1
1 not aligned: 48s % 2048s != 0s

Es ist also in Bezug auf die MiB-Ausrichtung „nicht ausgerichtet“. Es ist möglicherweise auch nicht ausgerichtet, wenn man bedenkt, dass SSDs intern 4K-, 8K- und 16K-Seiten verwenden können, sodass 6*4K ein etwas seltsamer Wert für die Ausrichtung ist.

Das Ziel bei der Erstellung der Partition auf diese Weise ist nicht die Ausrichtung, sondern die maximale Speicherplatznutzung. Allerdings ist es schwierig, sich einen Anwendungsfall vorzustellen, bei dem Grub tatsächlich mehr als nur ein paar Sektoren benötigen würde.

Wenn Sie das Problem trotzdem „reparieren“ möchten, können Sie die bios_grubPartition bei einem Offset von 1 MiB platzieren und boot, espbei 2 MiB beginnen lassen, sodass der aktuell belegte Bereich bios_grubals unpartitionierter freier Speicherplatz übrig bleibt.

An Funktionalität oder Leistung wird sich jedoch nichts ändern. Sie können es ignorieren und so lassen, wie es ist.

verwandte Informationen