Почему последние несколько секторов нельзя включить в раздел?

Почему последние несколько секторов нельзя включить в раздел?

Когда разбиение на разделы с fdiskпоследними несколькими секторами не может быть включено в раздел, насколько я знаю. Я всегда думал, что это из-за выравнивания MiB- или IO-block, но я только что понял, что последний сектор, который он позволяет мне использовать, не выровнен! Я пробовал несколько инструментов с несколькими жесткими дисками от разных поставщиков, и это всегда последние 30 с чем-то секторов. Например:

Disk /dev/sdb: 465.8 GiB, 500107862016 bytes, 976773168 sectors
last MiB-aligned sector:                      976773119
last IO-block-aligned (4KiB) sector:          976773167 (the last one)
last usable sector:                           976773134

Это, конечно, не большая проблема, но мне интересно, в чем причина. Связано ли это с плохими секторами?

решение1

Держу пари, что вы создалиТаблица разделов GUID (GPT)на диске, чтобы получить номер «последнего используемого сектора».

Вы заметили, что последний используемый сектор на 34 сектора меньше общего числа секторов?

Проверь это:

Схема таблицы разделов GUID(источник)

Эти «неиспользуемые» 33 сектора на самом деле предназначены для резервного GPT! (Это LBA -34 до конца.)


Мы также можем выяснить, почему последний выровненный по MiB сектор и последний выровненный по блоку ввода-вывода сектор являются такими, какие они есть.

Примечание:Вероятно, вы получили последние номера секторов, не используя GPT.устаревшая таблица разделов MS-DOSзанимает всего 512 байт (1 логический сектор) в начале диска и ничего в конце.

Информация о диске

Logical sector size:            512 (used in calculations)
Physical sector size:          4096 (used for I/O block alignment)

Физическое выравнивание блоков

Ваш последний совмещенный сектор:976773167

Physical sector size:          4096
Divide by logical sector size: ÷512
                               ----
Sectors for block alignment:      8

Total sector count:       976773168
Divide by alignment sectors:     ÷8
                          ---------
Max 4KiB blocks:          122096646
Unusable sectors remainder:       0

Total sector count:       976773168
Subtract remainder:              -0
                          ---------
First unalignable sector: 976773168
Your last aligned sector: 976773167

Выравнивание блоков размером 1 МБ

Ваш последний совмещенный сектор:976773119

1MiB in bytes:              1048576
Divide by logical sector size: ÷512
                            -------
Sectors for 1MiB alignment:    2048

Total sector count:       976773168
Divide by alignment sectors:  ÷2048
                          ---------
Max 1MiB blocks:             476940
Unusable sectors remainder:      48

Total sector count:       976773168
Subtract remainder:             -48
                          ---------
First unalignable sector: 976773120
Your last aligned sector: 976773119

Связанный контент