А где-нибудь описано (ссылка) физическое расположение GRUB на диске? Искал (en/ru), но толкового ничего не нашел. Для меня сейчас было новостью, что stage1.5 занимает 53 блока с начала (не считая первого). Это где-то регламентировано или это хакерские выводы? Хотелось бы получить надежный источник информации.
Попробуйте поискать статьи о порядке загрузки LInux... Уверен что где-то регламентировано...

Суть в том, что разместить загрузчик на 446 байтах очень сложно, а достаточно мощный и гибкий нереально. А стандартная таблица разделов msdos другого не позволяет (сейчас все чаще начинают пользоваться GPT, тк в msdos используется 32-разрядная LBA адресация с сектором в 512 байт, те можно адресовать не более 2Тиб, вобще там еще и CHS используется, что для современных дисков выглядит полным бредом). Как бы там ни было, загрузчик в MBR, загружает другой загрузчик, который уже начинает загрузку файлов с разделов и тд. Если установить grub в раздел (НЕ в MBR как обычно), то общий принцип работы будет похож на работу ntloader, те загрузчик в MBR просматривает 4 основных раздела (записи в MBR), ищет флаг boot и загружает загрузчик из соответствующего раздела. Тут собственно и появляется проблема - раздел должен быть только основной, ведь чтобы найти нужный расширенный нужно прыгать по всему диску.
Хотя CHS вроде как давно потерял смысл (все равно цилиндры/головки/сектора преобразовывются в LBA), тем не менее существуют понятие track. Вот, например, вывод fdisk для моего диска:
Диск /dev/sda: 750.2 ГБ, 750156374016 байт
255 heads, 63 sectors/track, 91201 cylinders
Units = цилиндры of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd4e1d4e1
Видно, что сектор это 512 байт (это стандарт и для GPT), и в track входит 63 сектора (без понятия почему именно столько - быть может тоже стандарт). Обычно, редакторы разделов округляют раздел до цилиндров (те до трека или дорожки). Исходя из этого, 1 раздел начинается не сразу за MBR, а с новго цилиндра/трека/дорожки. В итоге имеем свободные 63-1 сектор. Место для загрузчика должно быть и в начале каждого раздела, хотя это вероятно отдано на усмотрение файловой системы. Поэтому разместить загрузчик в эти 62*512 байт достаточно правильное решение. В итоге загрузчик (grub установленный в MBR) загружает grub из секторов идущих за нулевым, передает ему управление, тогда он уже может работать с любыми разделами и кроме того понимает фс ext и может загрузить свое меню и/или дополнительные модули.
Те если вы установили grub в MBR (не в раздел), вы всегда найдете stage1.5 сразу после MBR.
Мне не понятно: какая связь между grub2 и stage1.5?
Честно говоря, я тоже вопрос не понял. Если имелось ввиду, почему никто никогда не восстанавливает stage1.5, то это потому что его никто не переписыает, обычно. Во всяком случаее Windows загрузчик ntloader...