Linux создание загрузочного раздела

Основы разметки диска при установке Linux-дистрибутивов

В материале про установку Linux Mint на виртуальную машину я говорил о том, что нужно выбирать автоматическую разметку диска.

Это действительно удобно при использовании виртуальной машины или когда у вас один диск без других предустановленных систем на нем. Но для понимания сущности работы Linux-дистрибутива нужно познакомиться с ручной разметкой и тем, что лежит в ее основе. Материал ориентирован, в первую очередь, на начинающих и будет касаться основ.

Разделы диска

Люди, привыкшие к Windows, помнят, что при установке системы чаще используется два «диска» C (туда устанавливается операционная система) и D (там хранятся пользовательские файлы и все такое). На самом деле, никаких двух отдельных дисков при установке не создается, используется один физический жесткий диск (HDD или SSD) пространство которого делится на несколько частей (разделов). В Windows это происходит не так очевидно и понятно, Linux-дистрибутивы в этом отношении сразу вводят пользователя в необходимость понимания того, что такое раздел.

Также в Linux существует корневая файловая система, в качестве которой используется выбранный пользователем раздел диска. Уже после в корневой файловой системе создаются подкаталоги, которые являются другими созданными разделами. Если очень упростить, то корневая файловая система словно матрешка содержит в себе другие разделы.

Наиболее известными корневыми файловыми системами Linux являются:

Пользователь может при установке вообще не создавать дополнительных разделов и поместить все в корневую файловую систему. Но это может привести к негативным последствиям, потому рекомендуется выделять отдельные разделы для хранения определенных групп файлов.

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

Каждый раздел выполняет определенную функцию и содержит определенные файлы. Для безопасности систему лучше разделы изолировать, так в случае нештатных ситуаций выйдет из строя только раздел, а не вся система.

Например, если в разделе с домашней директорией пользователя закончится свободное место, то корневая файловая система продолжит работу и вы сможете высвободить место, почистив ненужные файлы. Кроме того, раздел с домашней директорией удобен при переустановке Linux-дистрибутива: так если вы в результате экспериментов загубили раздел с корневой файловой системой, то ваши личные файлы никуда не денутся, при переустановке вы просто выберите нужный раздел диска и укажите установщику, что желаете использовать его как раздел /home. Раздел, отвечающий за загрузку системы тоже стоит вынести отдельно, так как если он пострадает, то вся остальная система останется целой и нужно будет только восстановить загрузочный раздел.

Читайте также:  Linux аналог partition magic

Основные разделы Linux

Давайте познакомимся с основными разделами и узнаем за что они отвечают.

  • / или корневой раздел (root) — используется для хранения корневой файловой системы, там располагаются все системные файлы, в него же будут примонтированы другие разделы.
  • /boot или загрузочный раздел — здесь хранятся файлы, отвечающие за загрузку системы, проверку того, чтобы перед стартом ее все было в норме.
  • /home или «хомяк» — раздел для хранения файлов пользователя, в котором хранятся скачанные им файлы, установленные пользователем программы и пр.
  • swap или раздел подкачки — здесь размещается неиспользуемая память на случай, если она может понадобится в случае нехватки оперативной, также здесь записывается содержимое памяти, если компьютер уходит в режим сна или гибернации.

Существуют и другие разделы, но в качестве информации для знакомства хватит и тех, про которые написал выше.

Подведем итоги

  • Физический диск вашего компьютера при установке Linux нужно разделить на несколько частей, называемых разделами.
  • Деление на разделы необходимо для безопасного использования системы, для того чтобы избегать ситуации при которых из-за ошибки все файлы будут потеряны.
  • Основными разделами в Linux являются root (/), /boot, /home и swap, каждый из которых предназначен для выполнения конкретной функции.

Повторюсь, что это основа по разделам, более детально эту тему затрону в других материалах на канале. Завтра планирую выпустить пост с наглядной демонстрацией работы с разметкой диска при установке Linux Mint. Надеюсь, что для начинающих изложенная информация оказалась понятной и полезной. Другие посты, посвященные особенностям работы с Linux вы найдете по ссылкам ниже.

Чтобы не пропустить новые посты нужно подписаться на канал, а чтобы заметки чаще попадали в ленту рекомендаций Дзена поставьте лайк!

Источник

Создание загрузочной системы EFI⚓︎

Отключите secure boot ! На данный момент эта технология не поддерживается. Чтобы настроить процесс загрузки с помощью GRUB для UEFI, необходимо отключить её в интерфейсе конфигурации прошивки. Прочтите документацию, предоставленную производителем вашей системы, чтобы узнать, как это сделать.

Читайте также:  Linux посмотреть файлы директории

Убедитесь, что вы не пропустили раздел по настройке ядра, для поддержки EFI.

Поиск, или создание системного раздела EFI⚓︎

В системе на основе EFI загрузчики устанавливаются в специальный раздел FAT32, называемый системным разделом EFI (ESP). Если ваша система поддерживает EFI и предустановлен дистрибутив Linux и (или) Windows, скорее всего, ESP уже создан. Посмотрите все разделы на вашем жёстком диске (замените sda на нужное устройство):

Столбец ESP type должен быть EFI System .

 Устр-во начало Конец Секторы Размер Тип /dev/sda1 4096 618495 614400 300M EFI /dev/sda2 618496 268430084 267811589 127,7G Файловая система Linux 

Если система или жёсткий диск новые, или если вы впервые устанавливаете ОС, загружаемую через UEFI , ESP может не существовать. В этом случае создайте новый раздел, создайте на нем файловую систему vfat и установите тип раздела EFI system .

Некоторые (старые) реализации UEFI могут требовать, чтобы ESP был первым разделом на диске.

Создайте точку монтирования для ESP и смонтируйте ее (замените sda1 на соответствующий ESP ):

 mkdir -pv /boot/efi && mount -v -t vfat /dev/sda1 /boot/efi 

Добавьте запись для ESP в /etc/fstab , чтобы он автоматически монтировался во время загрузки системы:

 cat >> /etc/fstab  /dev/sda1 /boot/efi vfat defaults 0 1 EOF 

Монтирование EFI Variable File System⚓︎

Для установки GRUB на UEFI необходимо смонтировать файловую систему EFI Variable, efivarfs . Если она еще не была смонтирована ранее, выполните команду:

 mountpoint /sys/firmware/efi/efivars || mount -v -t efivarfs efivarfs /sys/firmware/efi/efivars 

Добавьте запись для efivarfs в /etc/fstab , чтобы она автоматически монтировалась во время загрузки системы:

 cat >> /etc/fstab  efivarfs /sys/firmware/efi/efivars efivarfs defaults 0 0 EOF 

Если система не загружается с UEFI, каталог /sys/firmware/efi будет отсутствовать. В этом случае вы должны загрузить систему в режиме UEFI с аварийным загрузочным диском.

Настройка⚓︎

В системах на основе UEFI GRUB работает устанавливая приложение EFI (особый вид исполняемого файла) в /boot/efi/EFI/[id sizes/grubx64.efi , где /boot/efi — точка монтирования ESP , а [id] заменяется идентификатором, указанным в командной строке grub-install . GRUB создаст запись в переменных EFI , содержащую путь EFI/[id]/grubx64.efi , чтобы прошивка EFI могла найти grubx64.efi и загрузить его.

grubx64.efi очень легкий (136 Кб), поэтому он не будет занимать много места в ESP. Типичный размер ESP составляет 100 Мб (для диспетчера загрузки Windows, который использует около 50 Мб в ESP). Как только grubx64.efi загружен прошивкой, он загрузит модули GRUB в загрузочный раздел. Расположение по умолчанию — /boot/grub .

Установите файлы GRUB в /boot/efi/EFI/LFS/grubx64.efi и /boot/grub . Затем настройте загрузочную запись в переменных EFI:

 grub-install --bootloader-id=LIN --recheck 

Если установка прошла успешно, вывод должен быть:

 Installing for x86_64-efi platform. Installation finished. No error reported. 

Запустите efibootmgr , чтобы ещё раз проверить конфигурацию загрузки EFI.

 BootCurrent: 0000 Timeout: 1 seconds BootOrder: 0005,0000,0002,0001,0003,0004 Boot0000* ARCH Boot0001* UEFI:CD/DVD Drive Boot0002* Windows Boot Manager Boot0003* UEFI:Removable Device Boot0004* UEFI:Network Device Boot0005* LIN 

Обратите внимание, что 0005 является первым в BootOrder , а Boot0005 — это LIN . Это означает, что при следующей загрузке системы будет использоваться версия GRUB , установленная в LIN .

Создание файла конфигурации GRUB⚓︎

Создайте /boot/grub/grub.cfg для настройки меню загрузки GRUB:

 cat > /boot/grub/grub.cfg  # Begin /boot/grub/grub.cfg set default=0 set timeout=5 insmod part_gpt insmod ext2 set root=(hd0,2) if loadfont /boot/grub/fonts/unicode.pf2; then set gfxmode=auto insmod all_video terminal_output gfxterm fi menuentry "GNU/Linux, Linux 5.10.17-lfs-10.1"  linux /boot/vmlinuz root=/dev/sda2 ro > menuentry "Firmware Setup"  fwsetup > EOF 

(hd0,2) , sda2 следует заменить в соответствии с вашей конфигурацией.

Для GRUB файлы используются относительно раздела. Если вы использовали отдельный раздел /boot , удалите /boot из указанных выше путей (к ядру и к unicode.pf2). Вам также нужно будет изменить строку корневого раздела, чтобы она указывала на загрузочный раздел.

Загрузка вместе с Windows⚓︎

Добавьте запись в файл конфигурации grub.cfg :

 cat >> /boot/grub/grub.cfg  # Begin Windows addition menuentry "Windows 10"  insmod fat insmod chain set root=(hd0,1) chainloader /EFI/Microsoft/Boot/bootmgfw.efi > EOF 

(hd0,1) следует заменить назначенным GRUB именем для ESP. Директива chainloader может использоваться, чтобы указать GRUB запустить другой исполняемый файл EFI, в данном случае диспетчер загрузки Windows. вы можете поместить больше используемых инструментов в исполняемом формате EFI (например, оболочку EFI) в ESP и создать для них записи GRUB.

Источник

Оцените статью
Adblock
detector