Подготовка дисков

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:AMD64/Installation/Disks and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎polski • ‎português do Brasil • ‎čeština • ‎русский • ‎தமிழ் • ‎中文(中国大陆)‎ • ‎日本語 • ‎한국어
AMD64 Handbook
Установка
Об установке
Выбор подходящего источника для установки
Настройка сети
Подготовка дисков
Установка stage3
Установка базовой системы
Настройка ядра
Настройка системы
Установка системных утилит
Настройка загрузчика
Завершение
Работа с Gentoo
Введение в Portage
USE-флаги
Возможности Portage
Система сценариев инициализации
Переменные окружения
Работа с Portage
Файлы и каталоги
Переменные
Смешение ветвей программного обеспечения
Дополнительные утилиты
Дополнительные репозитории пакетов
Расширенные возможности
Настройка сети
Начальная настройка
Расширенная настройка
Модульное построение сети
Беспроводная сеть
Добавляем функциональность
Динамическое управление


Введение в блочные устройства

Блочные устройства

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

Для начала, рассмотрим блочные устройства. Устройства SCSI и Serial ATA обозначаются как /dev/sda, /dev/sdb, /dev/sdc и так далее. На более современных компьютерах твердотельные накопители NVMe на базе PCI Express имеют дескриптор вида /dev/nvme0n1, /dev/nvme0n2 и так далее.

Следующая таблица поможет определить необходимый тип блочного устройства в системе:

Тип устройства Дескриптор устройства по умолчанию Примечания и полезные сведения
SATA, SAS, SCSI или USB flash /dev/sda Данный тип устройств стал доступным примерно с 2007 года и встречается до сих пор, являясь, пожалуй, самым используемым типом в Linux. Устройства могут подключаться через шины SATA, SCSI или USB в виде устройства блочного хранилища. Например, первый раздел на первом SATA устройстве обозначается как /dev/sda1.
NVM Express (NVMe) /dev/nvme0n1 Передовая на данный момент технология твердотельных накопителей. Устройства NVMe подключаются к шине PCI Express и обладают наиболее быстрой скоростью передачи блочных данных, доступной на рынке. Системы образца 2014 года и новее могут иметь поддержку устройств NVMe. Первый раздел на первом NVMe устройстве обозначается как /dev/nvme0n1p1.
MMC, eMMC и SD /dev/mmcblk0 Устройства embedded MMC, SD-карты и другие типы карт памяти могут использоваться для хранения данных. Однако не все системы могут позволить загружаться с данного типа устройств. Не рекомендуется использовать данные устройства для установки Linux; лучше используйте их по прямому назначению — для переноса файлов. Также их можно использовать для кратковременного резервного копирования.

Данные блочные устройства представляют абстрактный интерфейс к диску. Пользовательские приложения могут использовать их для взаимодействия с диском, не заботясь о том, какой это диск — SATA, SCSI или какой-либо ещё. Программа просто адресует пространство на диске как совокупность следующих друг за другом 4096-байтных (4K) блоков с произвольным доступом.


Таблица разделов

Несмотря на то, что теоретически возможно использовать неразбитый диск целиком для размещения системы Linux (например, для создании btrfs RAID), этого почти никогда не случается на практике. Наоборот, блочные устройства диска разбиваются на меньшие, более удобные для обращения, блочные устройства. В системах amd64 они называются разделами. В настоящее время есть две стандартных технологии разметки дисков: MBR (которую ещё иногда называют DOS disklabel) и GPT; оба подхода тесно связаны с двумя типами загрузки системы: загрузка через legacy BIOS и UEFI.

GUID Partition Table (GPT)

GUID Partition Table (GPT, таблица разделов GUID, также может называться GPT disklabel) использует 64-битные идентификаторы разделов. Место, в котором хранится информация о разделах, также гораздо больше, чем 512 байт таблицы разделов MBR (DOS disklabel), что означает, что нет почти никаких ограничений на количество разделов для диска с GPT. Также предельный размер раздела был значительно увеличен (почти 8 ЗиБ — да, зебибайт).

Когда программным интерфейсом системы между операционной системой и прошивкой является UEFI (вместо BIOS), GPT является почти обязательным, так как с DOS disklabel будут возникать проблемы совместимости.

Также GPT использует контрольные суммы и избыточность. Он содержит контрольные суммы CRC32 для обнаружения ошибок в заголовке и таблице разделов. У GPT есть резервная таблица в конце диска. Её можно использовать для восстановления первичной таблицы GPT, которая располагается в начале диска.

Важно
There are a few caveats regarding GPT:
  • Using GPT on a BIOS-based computer works, but then one cannot dual-boot with a Microsoft Windows operating system. The reason is that Microsoft Windows will boot in UEFI mode if it detects a GPT partition label.
  • Some buggy (old) motherboard firmware configured to boot in BIOS/CSM/legacy mode might also have problems with booting from GPT labeled disks.

Master boot record (MBR) или загрузочный сектор DOS

Загрузочный сектор Master boot record (также известный как загрузочный сектор DOS или DOS disklabel) впервые появился в PC DOS 2.x, выпущенном в 1983 году. MBR использует 32-битные идентификаторы для определения начала сектора и длины раздела и поддерживает три типа разделов: основные, расширенные и логические. Информация о расположении основных разделов хранится в самой главной загрузочной записи — очень небольшом (обычно 512 байт) месте в самом начале диска. Из-за её небольшого размера поддерживаются только четыре основных раздела (например, от /dev/sda1 до /dev/sda4).

Для поддержки большего количества разделов один из основных разделов в MBR может быть помечен как расширенный. Этот раздел может содержать дополнительные логические разделы (разделы внутри раздела).

Важно
Хотя большинство производителей материнских карт до сих пор поддерживают загрузочные секторы MBR, их вместе с ограничениями принято считать устаревшими. Кроме случаев, когда приходится работать с произведённым до 2010 года оборудованием, наилучшим выбором будет таблица разделов GUID. Те, кто всё-таки следует по пути MBR, должны знать о следующих ограничениях:
  • В большинстве материнских карт, произведённых после 2010 года, загрузочный сектор MBR считается устаревшим режимом загрузки (не всегда хорошо поддерживаемым).
  • Из-за использования 32-битных идентификаторов таблицы разделов в MBR не могут обращаться к адресам дискового пространства размером свыше 2 ТиБ.
  • Без использования расширенных разделов MBR поддерживает максимум только четыре раздела.
  • Данный режим не предоставляет никаких средств резервирования главной загрузочной записи, если что-то затрёт таблицу разделов, вся информация будет потеряна.

Однако, MBR и загрузка BIOS до сих пор может часто использоваться в виртуализированных облачных средах, например в AWS.

Авторы Руководства при установке Gentoo рекомендуют использовать GPT везде, где это возможно.

Продвинутая организация хранилища

Установочный CD amd64 предоставляет поддержку Logical Volume Manager (LVM). LVM увеличивает гибкость в создании разделов. Он позволяет сочетать разделы и диски в группы разделов и определять группы RAID или кэши на быстрых SSD для медленных жёстких дисков. Инструкции по установке ниже сконцентрируются на использовании «обычных» разделов, но LVM при необходимости также поддерживается. Посетите статью LVM для более подробной информации. Новички, будьте осторожны: полная поддержка LVM выходит за рамки данного руководства.

Схема разделов по умолчанию

Throughout the remainder of the handbook, we will discuss and explain two cases: 1) GPT partition table and UEFI boot, and 2) MBR partition table and legacy BIOS boot. While it is possible to mix and match, that goes beyond the scope of this manual. As already stated above, installations on modern hardware should use GPT partition table and UEFI boot; as an exception from this rule, MBR and BIOS boot is still frequently used in virtualized (cloud) environments.

Будет использоваться следующая схема разделов как простой пример разбиения диска:

Раздел Файловая система Размер Описание
/dev/sda1 fat32 (UEFI) или ext2 (BIOS) 256M Системный раздел Boot/EFI
/dev/sda2 (swap) Размер ОЗУ * 2 Раздел подкачки
/dev/sda3 ext4 Оставшаяся часть диска Корневой раздел

Если вам этого достаточно, вы можете сразу переходить к разметке диска.

И fdisk, и parted являются инструментами для создания разделов. fdisk широко известен, стабилен и рекомендован для создания разделов MBR. parted был первым в Linux менеджером блочных устройств, имеющим поддержку разделов GPT. Здесь мы используемfdisk, так как у него лучше текстовый интерфейс.

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

Разработка схемы разделов

Сколько разделов и насколько больших?

Расположение разделов на диске сильно зависит от потребностей системы и файловой системы (файловых систем). Если в ней будет много пользователей, рекомендуется разместить /home на отдельном разделе, что улучшит безопасность и значительно упростит резервное копирование (а также другие операции сопровождения). Если Gentoo устанавливается для использования в роли почтового сервера, следует отделить /var, так как вся почта хранится в каталоге /var. Для игровых серверов потребуется отдельный раздел /opt, так как большинство игровых серверов устанавливается туда. Причины выделения те же, что и для каталога /home: безопасность, резервное копирование и сопровождение.

В большинстве случаев /usr и /var должны быть достаточно большого размера. В /usr хранится большинство приложений, доступных системе, а также исходные коды ядра Linux (в каталоге /usr/src). По умолчанию в /var хранится репозиторий пакетов Gentoo (расположенный в /var/db/repos/gentoo), который, в зависимости от файловой системы, занимает около 650 МиБ дискового пространства. Оценка этого пространства не включает каталоги /var/cache/distfiles и /var/cache/binpkgs, в которых будут скапливаться архивы исходных кодов и (не обязательно) двоичных пакетов, которые будут формироваться в самой системе.

Сколько именно и какого объёма разделов нужно системе — всё зависит от сочетания различных факторов, которые необходимо принимать во внимание. Наличие отдельных разделов или томов имеет следующие плюсы:

  • Можно выбрать наиболее подходящую файловую систему для каждого раздела или тома.
  • Свободное место во всей системе не закончится внезапно из-за того, что одна-единственная сбойная программа постоянно записывает файлы в раздел или том.
  • Необходимая проверка файловых систем будет занимать меньше времени, так как проверка разных разделов может выполняться параллельно (хотя это это преимущество относится больше к нескольким дискам, чем к нескольким разделам).
  • Можно повысить безопасность системы, монтируя часть разделов в режиме только для чтения, nosuid (игнорируется бит setuid), noexec (игнорируется бит исполнения) и так далее.


Однако у множества разделов также есть недостатки:

  • Если они не настроены правильно, может получиться так, что будет огромное количество свободного места на одном разделе и нехватка на другом.
  • Отдельный раздел для /usr/ может потребовать загрузки с initramfs, чтобы смонтировать раздел прежде, чем запустятся другие загрузочные сценарии. Так как сборка initramfs выходит за рамки данного руководства, мы рекомендуем новичкам не создавать отдельный раздел для /usr/.
  • Также существует лимит в 15 разделов для SCSI и SATA, если только на диске не используются метки GPT.
Заметка
Если вы планируете использовать Systemd, /usr/ должен быть доступен во время загрузки, как часть корневого раздела или смонтированный с помощью initramfs.

Что по поводу пространства подкачки?

Не существует идеального значения для раздела подкачки. Целью пространства подкачки является предоставление дискового пространства ядру в условиях активного использования оперативной памяти. Пространство подкачки позволяет ядру переносить на диск страницы оперативной памяти, которые не будут использоваться в ближайшее время, освобождая её (swap или page-out). Конечно, если эта память вдруг неожиданно понадобится, эти страницы должны быть помещены обратно в память (page-in), что займет намного больше времени, чем чтение с оперативной памяти (так как диски — это очень медленные устройства по сравнению с оперативной памятью).

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

Как правило, рекомендуется создавать пространство подкачки с размером в два раза больше оперативной памяти (ОЗУ). Для систем с несколькими дисками, целесообразно создать по одному разделу подкачки на каждом диске, чтобы их можно было использовать для параллельных операций чтения/записи. Чем быстрее диск может подкачивать, тем быстрее система будет работать, когда ей необходимо прочитать данные с пространства подкачки. При выборе между жестким диском и твердотельным накопителем, с точки зрения производительности лучше создать пространство подкачки на SSD. Также вы можете использовать файлы подкачки вместо разделов подкачки; в основном это необходимо для систем с очень ограниченным дисковым пространством.


Что такое EFI System Partition (ESP)?

При установке Gentoo на систему, использующую UEFI для загрузки операционной системы (вместо BIOS) важно, чтобы был создан системный раздел EFI (EFI System Partition, ESP). Расположенные ниже инструкции содержат необходимую для этого информацию. EFI System Parition не обязателен при загрузке в режиме BIOS/Legacy.

ESP должен быть одним из вариантов файловой системы FAT (иногда отображаемый как vfat на системах Linux). В официальной спецификации UEFI говориться о том, что прошивка UEFI может работать с FAT12, 16 и 32, но для ESP рекомендуется использовать FAT32. После разбивки, отформатируйте раздел ESP:

root #mkfs.fat -F 32 /dev/sda1
Предупреждение
Если раздел ESP не отформатирован под один из вариантов FAT, то не гарантируется, что прошивка UEFI сможет найти загрузчик (или ядро Linux) и, скорей всего, не сможет загрузить систему!


Что такое загрузочный раздел BIOS?

Загрузочный раздел BIOS необходим, только если вы комбинируете разметку дисков GPT с загрузчиком GRUB2 в режиме BIOS/Legacy. Он не требуется при загрузке в режиме EFI/UEFI, и также не требуется при использовании дисков MBR. Это очень маленький (1—2 Мб) раздел, в который загрузчики типа GRUB2 могут разместить дополнительные данные, которые не помещаются в выделенное хранилище. Мы не будем использовать его в данном руководстве.


Создание разделов на диске с GPT для UEFI

Следующие части объяснят, как создать структуру разделов из примера для установки с GPT/UEFI с использованием fdisk (пример структуры разделов приводился выше):

Раздел Описание
/dev/sda1 Системный (и загрузочный) раздел EFI (ESP)
/dev/sda2 Раздел подкачки
/dev/sda3 Корневой раздел

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

Просмотр текущей разметки разделов

fdisk является популярным и мощным инструментом для создания разделов на диске. Запустите fdisk, передав в качестве параметра имя диска (в нашем примере мы используем /dev/sda):

root #fdisk /dev/sda

Нажмите на клавишу p для отображения текущей конфигурации разделов:

Command (m for help):p
Disk /dev/sda: 28.89 GiB, 31001149440 bytes, 60549120 sectors
Disk model: DataTraveler 2.0
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: gpt
Disk identifier: 21AAD8CF-DB67-0F43-9374-416C7A4E31EA
 
Device        Start      End  Sectors  Size Type
/dev/sda1      2048   526335   524288  256M EFI System
/dev/sda2    526336  2623487  2097152    1G Linux swap
/dev/sda3   2623488 19400703 16777216    8G Linux filesystem
/dev/sda4  19400704 60549086 41148383 19.6G Linux filesystem

Данный диск был разбит на две файловые системы Linux (каждый раздел соответственно подписан как «Linux»), а также раздел подкачки (названный как «Linux swap»).

Создание нового disklabel / удаление всех разделов

Нажмите g, чтобы создать новую разметку GPT на диске; это удалит все существующие разделы.

Command (m for help):g
Created a new GPT disklabel (GUID: 87EA4497-2722-DF43-A954-368E46AE5C5F).

Для диска с существующей разметкой GPT (смотрите вывод p выше), вы также можете удалять существующие разделы на диске. Нажмите d для удаления раздела. Например, чтобы удалить существующий /dev/sda1:

Command (m for help):d
Partition number (1-4): 1

Теперь раздел отмечен для удаления. Он больше не будет отображаться в списке разделов при вводе p, но не будет удален, пока не будут сохранены изменения. Это даёт возможность пользователю прервать операцию, если была допущена ошибка — в этом случае сразу нажмите q и Enter, и раздел не будет удален.

Удалите все разделы, поочерёдно нажимая на p для вывода списка разделов, d и номер раздела — для удаления. В конечном счете, таблица разделов будет пуста:

Command (m for help):p
Disk /dev/sda: 28.89 GiB, 31001149440 bytes, 60549120 sectors
Disk model: DataTraveler 2.0
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: gpt
Disk identifier: 87EA4497-2722-DF43-A954-368E46AE5C5F

Теперь, когда запомненная в памяти таблица разделов пуста, мы готовы создавать разделы.

Создание EFI system partition (ESP)

Сначала создадим небольшой системный раздел EFI. Нажмите n, чтобы создать новый раздел, затем 1 для выбора первого основного раздела. При запросе первого сектора, убедитесь, что он начинается с 2048 (может понадобиться для загрузчика) и нажмите Enter. При запросе последнего сектора введите +256M для создания раздела размером 256 Мбайт:

Command (m for help):n
Partition number (1-128, default 1): 1
First sector (2048-60549086, default 2048): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-60549086, default 60549086): +256M
 
Created a new partition 1 of type 'Linux filesystem' and of size 256 MiB.

Пометьте раздел как системный раздел EFI:

Command (m for help):t
Selected partition 1
Partition type (type L to list all types): 1
Changed type of partition 'Linux filesystem' to 'EFI System'.

Создание раздела подкачки

Для создания раздела подкачки введите n, чтобы создать новый раздел, затем введите 2 для создания второго основного раздела, /dev/sda2. При появлении запроса первого сектора, введите Enter. При появлении запроса последнего сектора, наберите +4G (или любой другой размер, необходимый для подкачки) для создания раздела размером 4 ГБ.

Command (m for help):n
Partition number (2-128, default 2): 
First sector (526336-60549086, default 526336): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (526336-60549086, default 60549086): +4G
 
Created a new partition 2 of type 'Linux filesystem' and of size 4 GiB.

После этого введите t для выбора типа раздела, 2 для выбора только что созданного раздела и введите 19, чтобы установить тип раздела как «Linux Swap».

Command (m for help):t
Partition number (1,2, default 2): 2
Partition type (type L to list all types): 19
 
Changed type of partition 'Linux filesystem' to 'Linux swap'.

Создание корневого раздела

Наконец, чтобы создать корневой раздел, введите n, чтобы создать новый раздел. Затем введите 3, чтобы создать третий основной раздел, /dev/sda3. При запросе последнего сектора нажмите Enter, чтобы создать раздел, занимающий всё оставшееся доступное пространство диска. После завершения этих шагов введите p для вывода на экран таблицы разделов, которая должна выглядеть примерно так:

Command (m for help):p
Disk /dev/sda: 28.89 GiB, 31001149440 bytes, 60549120 sectors
Disk model: DataTraveler 2.0
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: gpt
Disk identifier: 87EA4497-2722-DF43-A954-368E46AE5C5F
 
Device       Start      End  Sectors  Size Type
/dev/sda1     2048   526335   524288  256M EFI System
/dev/sda2   526336  8914943  8388608    4G Linux swap
/dev/sda3  8914944 60549086 51634143 24.6G Linux filesystem

Сохранение разметки разделов

Для сохранения разметки разделов и выхода из fdisk введите w.

Command (m for help):w

Разделы созданы, теперь настало время создать на них файловые системы.

Создание разделов на диске с MBR для BIOS / legacy загрузки

The following explains how to create the example partition layout for a MBR / BIOS legacy boot installation. The example partition layout mentioned earlier is now:

Раздел Описание
/dev/sda1 Загрузочный раздел
/dev/sda2 Раздел подкачки
/dev/sda3 Корневой раздел

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

Просмотр текущей разметки разделов

Fire up fdisk against the disk (in our example, we use /dev/sda):

root #fdisk /dev/sda

Нажмите на клавишу p для отображения текущей конфигурации разделов:

Command (m for help):p
Disk /dev/sda: 28.89 GiB, 31001149440 bytes, 60549120 sectors
Disk model: DataTraveler 2.0
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: gpt
Disk identifier: 21AAD8CF-DB67-0F43-9374-416C7A4E31EA
 
Device        Start      End  Sectors  Size Type
/dev/sda1      2048   526335   524288  256M EFI System
/dev/sda2    526336  2623487  2097152    1G Linux swap
/dev/sda3   2623488 19400703 16777216    8G Linux filesystem
/dev/sda4  19400704 60549086 41148383 19.6G Linux filesystem

This particular disk was until now configured to house two Linux filesystems (each with a corresponding partition listed as "Linux") as well as a swap partition (listed as "Linux swap"), using a GPT table.

Создание нового disklabel / удаление всех разделов

Type o to create a new MBR disklabel (here also named DOS disklabel) on the disk; this will remove all existing partitions.

Command (m for help):o
Created a new DOS disklabel with disk identifier 0xe04e67c4.
The device contains 'gpt' signature and it will be removed by a write command. See fdisk(8) man page and --wipe option for more details.

For an existing DOS disklabel (see the output of p above), alternatively consider removing the existing partitions one by one from the disk. Type d to delete a partition. For instance, to delete an existing /dev/sda1:

Command (m for help):d
Partition number (1-4): 1

Теперь раздел отмечен для удаления. Он больше не будет отображаться в списке разделов при вводе p, но не будет удален, пока не будут сохранены изменения. Это даёт возможность пользователю прервать операцию, если была допущена ошибка — в этом случае сразу нажмите q и Enter, и раздел не будет удален.

Удалите все разделы, поочерёдно нажимая на p для вывода списка разделов, d и номер раздела — для удаления. В конечном счете, таблица разделов будет пуста:

Command (m for help):p
Disk /dev/sda: 28.89 GiB, 31001149440 bytes, 60549120 sectors
Disk model: DataTraveler 2.0
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: 0xe04e67c4

Теперь мы готовы создать разделы.

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

First, create a small partition which will be mounted as /boot. Type n to create a new partition, followed by p for a primary partition and 1 to select the first primary partition. When prompted for the first sector, make sure it starts from 2048 (which may be needed for the boot loader) and hit Enter. When prompted for the last sector, type +256M to create a partition 256 Mbyte in size:

Command (m for help):n
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-60549119, default 2048): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-60549119, default 60549119): +256M
 
Created a new partition 1 of type 'Linux' and of size 256 MiB.

Создание раздела подкачки

Next, to create the swap partition, type n to create a new partition, then p, then type 2 to create the second primary partition, /dev/sda2. When prompted for the first sector, hit Enter. When prompted for the last sector, type +4G (or any other size needed for the swap space) to create a partition 4GB in size.

Command (m for help):n
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (526336-60549119, default 526336): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (526336-60549119, default 60549119): +4G
 
Created a new partition 2 of type 'Linux' and of size 4 GiB.

После этого введите t для выбора типа раздела, 3 для выбора только что созданного раздела и введите 82, чтобы установить тип раздела как «Linux Swap».

Command (m for help):t
Partition number (1,2, default 2): 2
Hex code (type L to list all codes): 82

Changed type of partition 'Linux' to 'Linux swap / Solaris'.

Создание корневого раздела

Finally, to create the root partition, type n to create a new partition. Then type p and 3 to create the third primary partition, /dev/sda3. When prompted for the first sector, hit Enter. When prompted for the last sector, hit Enter to create a partition that takes up the rest of the remaining space on the disk. After completing these steps, typing p should display a partition table that looks similar to this:

Command (m for help):p
Disk /dev/sda: 28.89 GiB, 31001149440 bytes, 60549120 sectors
Disk model: DataTraveler 2.0
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: 0xe04e67c4
 
Device     Boot   Start      End  Sectors  Size Id Type
/dev/sda1          2048   526335   524288  256M 83 Linux
/dev/sda2        526336  8914943  8388608    4G 82 Linux swap / Solaris
/dev/sda3       8914944 60549119 51634176 24.6G 83 Linux

Сохранение разметки разделов

Для сохранения разметки разделов и выхода из fdisk введите w.

Command (m for help):w

Настало время разместить файловые системы на разделы.


Создание файловых систем

Введение

Теперь, когда разделы созданы, пора разместить на них файловые системы. В следующем разделе описаны различные поддерживаемые в Linux файловые системы. Те из читателей, кто уже знает, какую файловую систему будет использовать, могут продолжить с раздела Создание файловой системы. Другим стоит продолжить чтение, чтобы узнать о доступных вариантах…

Файловые системы

Linux поддерживает несколько десятков файловых систем, хотя для большинства из них необходимы достаточно веские причины их использовать. Лишь только некоторые из них можно считать стабильными на архитектуре amd64. Рекомендуется прочитать информацию о файловых системах и об их состоянии поддержки перед тем, как останавливать свой выбор на экспериментальных. ext4 — рекомендуемая стабильная файловая система для всех платформ

btrfs
Файловая система следующего поколения, обеспечивающая множество дополнительных функций, таких как мгновенные снимки, самовосстановление с помощью контрольных сумм, поддержка прозрачного сжатия, субтомов и интегрированный RAID. Ядра старше ветки 5.4 не обеспечивают безопасную работу btrfs, так как исправления наиболее серьёзных проблем стабильности появились только в более поздних ветках долговременной поддержки ядра. Ошибки с повреждением файловой системы довольно часты для старых версий ядра, особенно небезопасны и нестабильны версии старше 4.4. Повреждения файловой системы для ядер старше 5.4 обычно характерны при включении сжатия. RAID 5/6 и quota groups небезопасны для всех версий btrfs. Более того, btrfs может неявным образом нарушить работу с файловыми операциями с ошибкой ENOSPC (при этом df сообщает, что свободное место есть) из-за внутренней фрагментации (свободное место высчитывается из расчёта DATA + SYSTEM участков, но при этом этом не учитывается в участках METADATA). Также, единственная ссылка 4K на экстент 128M внутри btrfs может отображать свободное место, которое недоступно для использования. Всё это приводит к тому, что btrfs возвращает ENOSPC, а df говорит, что есть свободное пространство. Установка sys-fs/btrfsmaintenance и конфигурация сценариев на периодический запуск поможет сократить количество проблем с ENOSPC путём ребалансировки btrfs, но не устранит их окончательно. Некоторые системы могут никогда не получить ошибку ENOSPC, когда как другие будут встречать её часто. Если риск получения ошибки ENOSPC недопустим, следует использовать другую файловую систему. При использовании btrfs убедитесь, что не собираетесь использовать конфигурацию, которая известна своей нестабильностью. За исключением проблемы ENOSPC, информация о существующих проблемах btrfs в последних ветках ядра доступна на вики-странице состояния btrfs.
ext2
Это проверенная и надежная файловая система Linux, но она не обладает средствами журналирования метаданных, что означает, что проверка файловой системы ext2 при запуске может занимать довольно много времени. Существует достаточно широкий выбор журналируемых файловых систем нового поколения, целостность которых может быть проверена очень быстро, что является преимуществом перед нежурналируемыми системами. Журналирование файловой системы позволяет избежать долгих задержек при загрузке системы, а также избежать её нестабильного состояния.
ext3
Журналируемая версия файловой системы ext2, обеспечивающая журналирования метаданных для быстрого восстановления в дополнение к другим режимам журналирования, таким как журналирование всех данных и упорядоченных данных. В данной ФС используются индексы на базе деревьев хешей, что в большинстве случаев обеспечивает высокую производительность. Вкратце, ext3 — это очень хорошая и надёжная файловая система.
ext4
Изначально созданная как ответвление от ext3, ext4 реализует новые возможности, повышение производительности и устранение ограничений на размер раздела на диске ценой незначительного изменения формата данных на диске. Она может быть размером до 1 ЭБ, а максимальный размер файла может составлять 16 ТБ. Вместо классического ext2/3 блочного распределения ext4 использует экстенты, которые улучшают производительность при работе с большими файлами и уменьшают фрагментацию. Ext4 также обеспечивает более сложные алгоритмы распределения блоков (отложенное распределение и мультиблочное распределение), дающие драйверу файловой системы больше возможностей по оптимизации размещения данных на диске. Ext4 рекомендуется как универсальная файловая система для всех платформ.
f2fs
Файловая система (Flash-Friendly File System) была создана Samsung для использования на NAND-накопителях. По состоянию на 2 квартал 2016 года файловая система считается не завершенной, но она может быть достойным выбором при установке на microSD карту, USB-накопитель или другие накопители.
JFS
Высокопроизводительная журналируемая файловая система от IBM. JFS — это легкая, быстрая и надежная файловая система, основанная на двоичных деревьях с хорошей производительностью в различных условиях.
ReiserFS
Основанная на двоичных деревьях журналируемая файловая система с хорошей общей производительностью, особенно при работе с множеством мелких файлов ценой чутью больших затрат центрального процессора. ReiserFS версии 3 включена в ядро Linux, однако не рекомендуется использовать её для первичной установки системы Gentoo. Существуют более новые версии ReiserFS, но для своей работы они требуют дополнительных патчей ядра.
XFS
Файловая система с журналированием метаданных, которая поставляется с мощным набором функций и оптимизирована для масштабируемости. XFS менее снисходительно относится к различным аппаратным проблемам, однако непрерывно обновляется, обрастая новым возможностями.
VFAT
Так же известна как FAT32, поддерживается Linux, но не имеет поддержку стандартных файловых разрешений UNIX. В основном используется для взаимодействия с другими операционными системами (в основном Microsoft Windows и Apple OSX), но также необходима при использовании некоторых системных прошивок загрузчика (например, UEFI).
NTFS
New Technology Filesystem является основной файловой системой для Microsoft Windows начиная с NT 3.5. Как и vfat, она не сохраняет настройки UNIX разрешений и расширенные атрибуты, необходимые для нормальной работы BSD или Linux, поэтому её не следует использоваться в качестве корневой файловой системы. Её необходимо использовать только для взаимодействия с системами Microsoft Windows (обратите внимание на акцент слова только).

Создание файловой системы

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

Файловая система Команда для создания Есть на минимальном CD? Пакет
btrfs mkfs.btrfs Да sys-fs/btrfs-progs
ext2 mkfs.ext2 Да sys-fs/e2fsprogs
ext3 mkfs.ext3 Да sys-fs/e2fsprogs
ext4 mkfs.ext4 Да sys-fs/e2fsprogs
f2fs mkfs.f2fs Да sys-fs/f2fs-tools
jfs mkfs.jfs Да sys-fs/jfsutils
reiserfs mkfs.reiserfs Да sys-fs/reiserfsprogs
xfs mkfs.xfs Да sys-fs/xfsprogs
vfat mkfs.vfat Да sys-fs/dosfstools
NTFS mkfs.ntfs Да sys-fs/ntfs3g

Например, чтобы создать загрузочный раздел (/dev/sda1) в FAT32 и корневой раздел (/dev/sda3) в ext4 при использовании структуры разделов из примера, используются следующие команды:

root #mkfs.vfat -F 32 /dev/sda1
root #mkfs.ext4 /dev/sda3

При использовании ext2, ext3 или ext4 на малых разделах (менее 8 ГиБ) файловая система должна быть создана с особыми параметрами для резервирования достаточного количества индексных дескрипторов (inodes). Для этого используется следующая команда

root #mkfs.ext2 -T small /dev/<device>
root #mkfs.ext3 -T small /dev/<device>
root #mkfs.ext4 -T small /dev/<device>

Данная команда учетверит количество индексных дескрипторов для такой ФС, так как мы уменьшили количество байт на каждый дескриптор («bytes-per-inode») с 16 кб до 4 кб.

Теперь создайте файловые системы на только что созданных томах (или логических разделах).

Активация раздела подкачки

Для инициализации разделов подкачки используется команда mkswap:

root #mkswap /dev/sda2

Чтобы активировать раздел подкачки, используйте swapon:

root #swapon /dev/sda2

Создайте и активируйте раздел подкачки командами выше.

Монтирование корневого раздела

Теперь, когда созданы разделы и размещённые на них файловые системы, настало время их смонтировать. Используйте команду mount, только не забудьте предварительно создать каталоги для монтирования каждого созданного раздела. В качестве примера мы смонтируем корневой раздела:

root #mount /dev/sda3 /mnt/gentoo
Заметка
Если /tmp/ находится на отдельном разделе, не забудьте после монтирования изменить права доступа:
root #chmod 1777 /mnt/gentoo/tmp
Это также справедливо для /var/tmp.

Позже в инструкции будут смонтированы файловая система proc (виртуальный интерфейс к ядру) и другие псевдофайловые системы ядра. Но сначала мы установим установочные файлы Gentoo.