Переключение размера сектора жесткого диска на 4096 байт

Сperl:

perl -ne 'printf "%s %-20s %s\n", /(\S+\s+)(\S+)\s*(.*)/' your-file

Или чтобы не касаться строк, которые не соответствуют этому шаблону:

perl -pe '$_ = sprintf "%s %-20s %s\n", $1, $2, $3
            if /(\S+\s+)(\S+)\s*(.*)/' your-file
1
17.01.2020, 10:51
2 ответа

Если вы не используете параметры для принудительного использования устаревшего режима совместимости с MS -DOS или не используете экспертный режим для указания точных номеров блоков LBA для начала и конца разделов, большинство современных инструментов разбиения на разделы (Linux и другие )по умолчанию выровняет разделы до кратных 1 МБ. Это также то, что делает современная Windows, и она гарантирует совместимость как с размером сектора 4 КБ, так и с различными устройствами хранения SSD и SAN, которые могут потребовать выравнивания до большей степени двойки для оптимальной производительности.

Вы можете использовать lsblk -tдля проверки смещения выравнивания каждого раздела. Если значение в столбце ALIGNMENTравно нулю, то, насколько известно ядру, раздел должен быть оптимально выровнен.

Чтобы изменить размер сектора жесткого диска, сначала необходимо убедиться, что ваш жесткий диск поддерживает реконфигурацию размера логического сектора. Изменение размера логического сектора, скорее всего, сделает все существующие данные на диске непригодными для использования, что потребует от вас полной переразметки диска и воссоздания всех файловых систем с нуля. hdparm --set-sector-size 4096 /dev/sdXбыл бы «стандартным» способом изменения размера сектора, но если для этого есть -специальный инструмент поставщика, я предпочел бы использовать его вместо этого -на тот случай, если конкретный диск требует специальных шагов поставщика -.

На твердотельных накопителях NVMe nvme id-ns -H /dev/nvmeXnYсообщит (среди прочего )размер сектора (s ), поддерживаемый SDD, номер формата LBA, связанный с каждым размером сектора, и текущий -используется размер сектора. Если вы хотите изменить размер сектора, а желаемый размер действительно поддерживается, вы можете использовать nvme format --lbaf=<number> /dev/nvmeXnYдля переформатирования определенного пространства имен NVMe в другой размер сектора.

5
27.01.2020, 23:29

Поскольку счетчик блоков имеет ширину 32, вы можете адресовать с помощью этого счетчика не более 2 ТБ дискового пространства, разделенного на 512 байт секторов. Отсюда мин. Адресуемая часть современного диска называется кластером и обычно имеет размер 4096 = 8 x 512 байт. Даже внутренние буфера и программы имеют дело с сектором 512B, это всего лишь логическая интерпретация. В man fdiskвы можете прочитать:Последние ядра знают размер сектора. Используйте эту опцию только на старых ядрах или для переопределения идей ядра. Вам, в основном на Linux, не нужно вносить какие-либо изменения в конфигурации по умолчанию.

1
27.01.2020, 23:29

Теги

Похожие вопросы