Разметка жёсткого диска с использованием fdisk

Одна из тонкостей установки Arch Linux состоит в том, что при разметке жёсткого диска в его начале нужно оставить немного пустого места. Если этого не сделать, загрузчик GRUB2 может не уместиться в служебную область и, соответственно, оказаться неработоспособным.

К сожалению, cfdisk (наиболее простая консольная утилита для разметки дисков) не позволяет явно выделить необходимые нам 1-2 пустых мегабайта в начале диска, поэтому мы будем использовать fdisk (без c).

Будем считать, что диск, с которым мы работаем, совершенно пуст и не содержит никаких разделов и данных (если разделы есть, их лучше удалить, чтобы не путаться).

Для примера зададим следующую разметку: пустое место, небольшой раздел, все остальное.

Итак, запускаем:

fdisk /dev/sda

добавляем новый раздел:

n

выбираем тип раздела (основной):

p

вводим номер раздела:

1

отступаем от начала диска 2048 секторов (в 1 секторе 512 байт, значит 1 килобайт занимает 2 сектора, а 1 мегабайт занимает 2048 секторов):

2048

указываем размер раздела (если указывается не конечный сектор, а именно размер, нужно добавить знак + и единицу измерения):

+5G

записываем разметку на диск и выходим:

w

Всё, раздел создан. Для проверки запускаем:

cfdisk /dev/sda

и видим, что всё создалось так, как мы и хотели. Разве что размеры немного исказились, но точно в них попасть всё равно не получится, придётся довольствоваться тем, что есть.

Для создания следующего раздела действия нужно будет повторить, хотя с дальнейшей разметкой и cfdisk прекрасно справится. Если всё же воспользуетесь fdisk, то не забудьте, что для второго раздела смещение относительно начала диска будет рассчитано автоматически и нужно будет только его подтвердить.

После разметки не забудьте одному из созданных разделов установить флаг bootable. Флаг можно поставить в уже запущенном cfdisk, или в fdisk при помощи команды a.

Комментарии (RSS)

"смещение относительно начала диска будет рассчитано автоматически и нужно будет только его подтвердить" - прикольная такая автоматика, чтоб она сработала нужно ввести неправильное значение. Я десять минут жизни потратил, пока это не вкурил.

Ответить Отменить ответ

Я уж не знаю, что я там делаю не так, но! На втором шаге, default у меня опять таки 2048, честно. Я реально думал, что должно быть как на скрине (надеялся прям, прям логикой чуял), но нет. default 2048, ввожу например 5000, соответственно ошибка, зато default уже правильный. Так что, как то так. :)

Ответить Отменить ответ

Мне тут подсказывают, что если первым сектором первого раздела назначить не 2048, а 4096, то действительно, возникает та же самая ошибка. Проверил, это действительно так. Поменял значение в статье.

Ответить Отменить ответ

А зачем надо отступ делать? Я про 4096. По умолчанию приделагают 2048. Но, для чего это нужно? Зачем эти начальные 2 Мб?? Для загрузчика что ли?

Ответить Отменить ответ

Да, для него. Помнится мне, достаточно и 2048, но я решил перестраховаться на случай, если grub растолстеет сильнее. И, видимо, зря, потому что из-за этого возникают определённые неудобства (см. комментарии выше).

Ответить Отменить ответ

при автоматической установке манджара сделала 2мб+900мб.своп+рут+хоум+2мб (ну у меня комп старый и слабый) потом я переделал ручками http://pixs.ru/showimage/Screenshot_9626528_11309991.png и переустановил. эти 2мб для гроба, или он все-таки пишет в бут ? насколько действительно они нужны ?

Ответить Отменить ответ

Посмотрите через fdisk -l с какого сектора у вас начинается первый раздел. Хотя сейчас это уже не так важно, если система установилась нормально, то всё в порядке.

Ответить Отменить ответ
sudo fdisk -l

Disk /dev/sda: 14.3 GiB, 15367790592 bytes, 30015216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x9944dfde

Device    Boot     Start       End   Blocks  Id System
/dev/sda1             63   2120579  1060258+ 82 Linux swap / Solaris
/dev/sda2 *      2120580  30015215 13947318  83 Linux 

разбивал я его cfdisk'ом. Теперь вижу старт с 64 А я иногда посмеивался когда видел "пустые" 1мб дырки, остающиеся после работы автоскриптов или гпарта :(

Ответить Отменить ответ

Если загрузчик нормально установился, то ничего страшного в этом нет. Ну а в случае чего, swap - это ведь не раздел с данными, его легко можно уменьшить.

Ответить Отменить ответ

Зачем размер 5Гб и как эта статья перекликается с той про установку арча, в которой есть ссылка на эту статью в начале при разбивке диска. Я по ошибке так и сделал - прописал 5 Гб, а надо было вообще не трогать ибо 5Г это балды, а надо под систему все оставшееся место.

Ответить Отменить ответ

Это всё потому, что инструкции нужно не копипастить, а стараться понять ;)

Ответить Отменить ответ