(при условии, что выравнивание разделов и файловой системы на SSD имеет смысл:)
При выравнивании разделов на SSD-накопителях в начале остается некоторое неиспользуемое пространство (например, около 1 МиБ, если первый раздел начинается с сектора 2048, когда размер логического сектора составляет 512 байт).
Есть ли какие-либо недостатки в использовании этого пространства (можно было бы создать крошечный раздел, содержащий GRUB, или можно было бы также начать корневую файловую систему не с сектора 2048, а, например, с 64 МБ, и использовать пространство до него как раздел /boot. Файловая система может быть невыровненной, но запись в нее производится редко)?
Я не вижу никаких аргументов против этого (кроме потери одного основного раздела при использовании разметки разделов DOS), есть ли что-то неочевидное, говорящее против этого? (Я также вижу, что нет особой выгоды в попытке использовать эти самые первые 1-4 МБ пространства, за исключением того, что, возможно, будет «лучше» не тратить их впустую).
решение1
Смещение в 1 МБ было выбрано, потому что оно практически гарантированно будет выровнено, независимо от базового хранилища. Впервые оно было выбрано, когда магнитные диски перешли на секторы 4 КБ. Но выровненное есть выровненное, и это не должно иметь значения.
Время историй!
Когда мне нужно было заставить работать мои первые диски 4K в старых массивах, я начинал раздел с сектора 56 (вместо традиционных 63), потому что переход на сектор 64 был невозможен: тогда раздел был бы недостаточно большим для присоединения к массиву RAID. В таблице разделов DOS это отняло часть места, используемого для GRUB, но, к счастью, у меня его все еще было достаточно. Позже, когда я получил диски большего размера, я перешел на сектор 2048. Диск больше, поэтому разделы все еще могут быть достаточно большими для присоединения к массивам RAID. Конечно, наличие разных дисков в системе добавляет работы системному администратору, но, что ж, такова жизнь. (К счастью, мне удалось вывести из эксплуатации большинство этих систем).
1 МБ места на многотерабайтном магнитном диске не заметно. И на многосотгигабайтном SSD тоже. ПризнаюсьделаетМеня немного раздражает пустая трата места — я ведь вырос в эпоху, когда 120 МБ были огромным жестким диском, а операционная система могла поместиться на дискете.1 МБ!? Это целая операционная система!
Однако у него есть огромное преимущество: он выравнивается для дисков 4 КБ, он выравнивается для SSD (у которых физический размер блока не менее 64 КБ), его довольно легко сделать выравниваемым по полосам в массиве, и он, вероятно, будет выравниваться на всех разумных технологиях хранения данных еще довольно долго.
Но если у вас один диск, то недостатков на самом деле нет, за исключением нестандартности (например, если бы я пытался восстановить данные на диске после потери таблицы разделов, я бы сначала проверил раздел, начинающийся с 2048).
А что касается другой альтернативы: невыровненная загрузка на самом деле не такая уж большая проблема. Чтение может быть немного медленнее, а запись намного медленнее, но ни то, ни другое не случается часто, чтобы заметить. Однако раздел /boot размером 64 МБ слишком мал, я бы не стал делать меньше 256 МБ. Даже целевой (в отличие от универсального) initrd занимает ~5 МБ, еще ~4 МБ для ядра, и у вас быстро заканчивается место после нескольких обновлений (если только вы не очень регулярно очищаете старые ядра). Однако загрузка EFI должна быть в порядке, если вы не помещаете туда ядра/initrd.
решение2
Вполне нормально втиснуть bios_grub
раздел в 64s-2047s
. В случае раздела DOS именно для этого и будут использоваться первые несколько секторов (просто без какого-либо раздела).
Для разделов данных, реальных файловых систем, я бы придерживался выравнивания по МиБ.
решение3
Если в системе включена функция BIOS "защита загрузочного сектора", использование всего диска для, например, программного RAID может затем сделать программное обеспечение RAID недовольным, поскольку функция BIOS предотвращает (для большей безопасности!) запись в эти ранние блоки. Так что это один из потенциальных недостатков использования всего диска (без проверки BIOS на наличие таких функций и обеспечения их отключения).