Ответы пользователя по тегу GPT
  • Что может мешать преобразованию диска из mbr в gpt?

    Melkij
    @Melkij
    PostgreSQL DBA
    GPT занимает 33 сектора в начале и конце диска.
    MBR - 63 только в начале.

    О том и предупреждение, что если у вас диск размечен до последнего LBA - то резервный GPT писать некуда. Там уже могут быть ваши данные записаны.
    Разделы можете размечать как угодно, лишь бы в начале и конце LBA-адресации было хотя бы по 33 сектора неразмеченных. Лучше 40 секторов - выравнивание по 4кб смещению весьма полезно и для SSD и для большинства современных HDD.

    Пример моего parted /dev/sdc unit s p:
    Model: ATA WDC WD20EARS-00M (scsi)
    Disk /dev/sdc: 3907029168s
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Disk Flags:

    Number Start End Size File system Name Flags
    1 40s 295s 256s boot_grub bios_grub
    2 296s 260231s 259936s boot boot, esp
    3 260232s 27295879s 27035648s ext4 r10perf raid
    4 27295880s 3907029127s 3879733248s r5stor raid

    Первый раздел начинается с сектора 40, там начало GPT
    Весь диск - 3907029168 секторов, последний сектор раздела - 3907029127, т.е. я оставил 40 секторов в конце диска для размещения резервной копии GPT.
    Ответ написан
  • Debian gpt 3 tb hdd?

    Melkij
    @Melkij
    PostgreSQL DBA
    Диск загрузочный?
    Берёте parted, создаёте gpt таблицу разделов, создаёте раздел размером этак в 256 секторов в самом начале диска и ставите ему флаг bios_grub.
    Всё остальное как обычно.
    Ответ написан
  • Как преобразовать MBR в GPT без потери данных?

    Melkij
    @Melkij
    PostgreSQL DBA
    Нужно что-то низкоуровневое, способное работать только с таблицей разделов, при том с адресацией по секторам, а не мегабайтам. Под mac наверняка что-нибудь есть.

    Весь фокус в чём:
    удаление и добавление разделов изменяет информацию только в таблицах GPT или MBR и не трогает остальной диск вовсе.
    если раздел удалить, затем создать новый с теми же самыми начальным и конечным секторами LBA, то ни ФС ни данные вообще не заметят, что что-то поменялось.

    GPT занимает по 40 секторов в начале и в конце диска
    MBR - 63 в начале диска.
    Поэтому, если после последнего раздела есть 40 секторов неразмеченных (если нету - придётся раздел уменьшить), то:
    записываете на листочек, где разделы начинаются и заканчиваются
    создаёте GPT-таблицу
    создаёте разделы в тех же самых местах
    Ответ написан
  • Возможно ли mbr в gpt без потери информации на system разделе?

    Melkij
    @Melkij
    PostgreSQL DBA
    Смена таблицы разделов перетирает только свои сектора, но не трогает лишние данные, иначе было бы жутко медленно и печально.

    GPT хранит себя в первых и последних 40 секторах диска (вроде 34 в начале и 32 в конце). MBR — в первых 63.
    Итого, оперируем непременно секторами! (на примере GNU parted — unit s)
    0) Смотрите имеющуюся разметку, перепишите её на листочек.
    1) проверьте, что после последнего раздела должно быть свободно 40 секторов. Если это не так — измените размер раздела.
    Место перед разделами есть априори — MBR занимает больше места в начале диска, чем GPT
    2) создаёте новый заголовок GPT (mklabel gpt)
    3) создаёте разделы по секторам 1в1 как те, что были
    4) ФС не должны ничего заметить

    Не могу гарантировать, что винда корректно заведётся, если ей вдруг подсунуть не ту таблицу разделов, к которой она привыкла.
    Ну и, само собой, только имея бекапы всех важных данных.
    Ответ написан