Размер сектора fdisk и вопросы выравнивания

10

Я выполнил команду:

# fdisk /dev/sda1

Выход был:

The device presents a logical sector size that is smaller than
the physical sector size. Aligning to a physical sector (or optimal
I/O) size boundary is recommended, or performance may be impacted.

Command (m for help): p

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0xe0c5913d

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63    40965749    20482843+  1c  Hidden W95 FAT32 (LBA)
Partition 1 does not start on physical sector boundary.
/dev/sda2   *    40966144   334567423   146800640    7  HPFS/NTFS/exFAT
/dev/sda3       334567424   753997823   209715200   83  Linux
/dev/sda4       753999870  1953525167   599762649    5  Extended
Partition 4 does not start on physical sector boundary.
/dev/sda5       753999872  1949376511   597688320   83  Linux
/dev/sda6      1949378560  1953525167     2073304   82  Linux swap / Solaris

Я в беде, потому что следующие предметы:

  • Устройство имеет логический размер сектора, который меньше размера физического сектора. Рекомендуется выравнивание по границе размера физического сектора (или оптимального ввода / вывода), или это может повлиять на производительность.

  • Раздел 1 не начинается на границе физического сектора.

  • Раздел 4 не начинается на границе физического сектора.

Как я могу решить один или несколько из этих элементов без потери файлов и разделов?

Какие проблемы у меня будут, оставив все как есть?

Сэр джо блэк
источник
Размер логического сектора почти всегда составляет 512 байт - это не удивительно. Контроллеры дисков знают это и работают соответственно. Я никогда не видел проблемы с несоответствием границ секторов и разделов - это могло быть проблемой много лет назад.
Муру

Ответы:

11

Размер логического сектора, который меньше размера физического сектора, является нормальным для большинства современных дисков. Именно так чаще всего реализуются диски Advanced Format . Некоторые внешние диски используют одинаковый (4096-байтовый) размер сектора как для физического, так и для логического секторов, и я слышал, что некоторые высокопроизводительные внутренние диски теперь делают то же самое, но большинство дисков в наши дни представляют собой модели расширенного формата с 512-байтовыми байтами. логические сектора и 4096-байтовые физические сектора. Вы ничего не можете (или должны пытаться) делать с этим.

Тем не менее, правильное выравнивание разделов для дисков расширенного формата имеет важное значение. Я провел несколько тестов на дисках Advanced Format, чтобы определить, что происходит, когда их разделы выровнены, и опубликовал результаты здесь. Короче говоря, масштабы проблемы сильно варьируются от одной файловой системы к другой и от одного диска к другому, но почти всегда существует значительное (а иногда и огромное ) снижение производительности, связанное с неправильным расположением разделов.

Ваша /dev/sda4, однако, напрямую не содержит файловую систему; это расширенный раздел, что означает, что это просто контейнер для других разделов. Данные, непосредственно связанные с ними, /dev/sda4представляют собой просто два (логических) сектора, которые, вероятно, даже не соседствуют друг с другом, поэтому их нельзя правильно выровнять. Реальные потери производительности могут быть связаны с выравниванием разделов, содержащихся внутри /dev/sda4. В вашем случае /dev/sda4держит /dev/sda5и то и /dev/sda6другое правильно выровнено. Таким образом, вам не нужно беспокоиться о /dev/sda5. Предупреждение, которое вы видите, это просто код, который с энтузиазмом сообщает о «проблеме», когда ее не существует.

Ваш /dev/sda1, с другой стороны, не выровнен должным образом - он начинается в секторе 63, который не делится на 8. От того, следует ли вам что-либо делать, зависит то, насколько вы используете этот раздел, как вы его используете (размер файла, чтения против записи и т. д.), насколько важно, чтобы вы получали от нее оптимальную производительность, имеете ли вы адекватные резервные копии и т. д. Я рекомендую вам прочитать статью, на которую я ссылался ранее, а затем решить, решить ли проблему. (Я не сообщал о результатах FAT в этой статье по космическим причинам, но производительность FAT сильно пострадала - IIRC, не так плохо, как ReiserFS, но, по крайней мере, так же плохо, как и большинство других файловых систем Linux).

Если вы решили, что хотите исправить /dev/sda1, вы должны начать с резервного копирования. После этого один из способов исправить это удалить его, создать на его месте новый раздел и восстановить его файлы. Другой способ (после резервного копирования) - изменить размер раздела в GParted. Сделайте небольшое изменение в начальной точке; любая последняя версия GParted должна округляться до 2048 секторов, и все будет в порядке. Перемещение начальной точки раздела всегда более рискованно и занимает больше времени, чем перемещение конечной точки. Поскольку размер раздела составляет всего 19 ГБ, операция не должна занимать смешное количество времени, даже перемещение начальной точки, но она не будет мгновенной.

В качестве примечания и фона, только довольно старые инструменты смещают разделы на современных дисках Advanced Format. Я думаю, вы использовали такой инструмент (старую версию для Linux fdiskили в DOS FDISK, возможно) , чтобы создать /dev/sda1, а затем использовал более современный инструмент (более свежий fdisk, partedили GParted, возможно) , чтобы создать остальную часть ваших разделов.

Род Смит
источник