Размечаем стационарный диск компьютера

prolinux

Опубликован:  2023-07-05T10:50:13.136009Z
Отредактирован:  2023-07-05T10:50:13.136009Z
Статус:  публичный
50
0
0

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

Загружаем компьютер с USB-накопителя

Итак, в моих руках флешка с записанным на неё iso-образом SimplyLinux, в BIOS моего компьютера установлен приоритет для этого устройства, программа будет искать операционную систему сначала на этом устройстве. Вставляю накопитель в USB-разъём своей машины и включаю компьютер. На старте меня встречает вот такое симпатично нарисованное меню базового загрузчика.

7C0hTGnJvU.png

Замечание: именно в этой демонстрации я загрузил свой компьютера не с USB носителя, а с диска в DVD-приводе компьютера, ввиду некоторых организационных особенностей мне так удобней, и это никак не скажется на сути процесса и последовательности выполняемых действий.

Выбираю в этом меню второй пункт сверху (LiveCD), жму клавишу Enter и дожидаюсь полной загрузки живой операционной системы. В конце концов на экране монитора появляется рабочий стол, нахожу в самом низу экрана панель задач и в ней кнопку доступа к системному меню, это первая кнопка слева, на ней нарисованы литеры SL. Жму эту кнопку и в системном меню нахожу раздел "Системные" и в нём пункт "Редактор разделов".

5nmhVUODSD.png

Жму левой кнопкой мыши на этот пункт. В результате запускается предназначенная для разметки и форматирования дисков графическая программа GParted. В ней обнаруживаю единственный жесткий диск sda, на моей машине нет других.

sC7akrYcFL.png

GParted - это всеобъемлющий комбайн с великолепным интуитивно понятным графическим интерфейсом, в этой программе есть всё необходимое, чтобы разметить любое блочное устройство: hdd, ssd, flash и т.п. Освоить эту программу и научиться пользоваться её функциями совершенно не сложно, именно по причине наличия интуитивно понятного графического интерфейса пользователя. В этом блоге когда-нибудь в перспективе я обязательно покажу ключевые возможности GParted и порядок действий при разметке диска с его помощью, но в рамках этой демонстрации я предпочту другие инструменты. Закрываю окно GParted.

Размечаем стационарный диск компьютера

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

Перед разметкой диска следует убедиться, что диск в системе точно есть, обнаружен, и что ни один из его разделов не смонтирован. В этом мне поможет программа lsblk, запускаю терминал с помощью всё того же системного меню и в нём (терминале) даю команду.

$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0    7:0    0   1,7G  1 loop /.ro
sda      8:0    0 232,9G  0 disk 
└─sda1   8:1    0 232,9G  0 part 
sr0     11:0    1   1,8G  0 rom  /image

В выхлопе lsblk видно, что у компьютера есть стационарный диск - sda. На этом диске уже имеется один единственный раздел, и этот раздел не имеет точки монтирования, в столбце MOUNTPOINT отсутствует отметка напротив этого раздела.

В повседневной практике бывает всякое, случалось, что на стационарном диске была нанесена чудовищная на мой взгляд разметка, куча логических дисков.., ад кромешный. Чтобы не иметь дело со всякими глупостями, удобнее всего просто удалить базовую таблицу разделов диска, для этого у меня есть в системе программа wipefs, и поскольку она осуществляет системное действие, запускать её следует с правами суперпользователя. Запускаю...

$ sudo wipefs -a /dev/sda

Мы полагаем, что ваш системный администратор изложил вам основы
безопасности. Как правило, всё сводится к трём следующим правилам:

    №1) Уважайте частную жизнь других.
    №2) Думайте, прежде что-то вводить.
    №3) С большой властью приходит большая ответственность.

/dev/sda: 2 bytes were erased at offset 0x000001fe (dos): 55 aa
/dev/sda: calling ioctl to re-read partition table: Выполнено

LiveCD SimplyLinux великолепно настроен, при первом запуске sudo не требует пароля, но предупреждает об ответственности. В результате выполнения этой команды, мой стационарный HDD лишился таблицы разделов, удалять уже существующий раздел или разделы нет необходимости.

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

$ sudo parted /dev/sda
GNU Parted 3.2.46-e4ae
Используется /dev/sda
Добро пожаловать в GNU Parted! Наберите "help" для просмотра списка команд.
(parted)

Parted имеет интерактивный режим, и запустив программу этой командой я оказываюсь в нём. У интерактивного режима есть приглашение, выглядит оно как (parted), рядом с приглашением стоит курсор, пользователь может ввести все необходимые команды parted с клавиатуры.

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

(parted) unit mib
(parted)

Поскольку с помощью wipefs я удалил таблицу разделов, необходимо создать новую, в соответствии со схемой разметки выбираю таблицу msdos.

(parted) mklabel msdos                                                    
(parted)

Создаю раздел для корневой файловой системы будущей ОС, в соответствии со схемой разметки в следующей команде задаю выбранные параметры.

(parted) mkpart primary ext4 1 51201                                      
(parted)

Второй раздел я создам точно также, но с другими параметрами. Минус единица в конце команды указывает, что создаётся раздел на всё оставшееся на диске пространство вплоть до последнего МиБ.

(parted) mkpart primary ext4 51201 -1                                     
(parted)

Всё, разделы созданы, с помощью команды print можно увидеть как они выглядят в интерпретации parted.

(parted) print
Модель: ATA VBOX HARDDISK (scsi)
Диск /dev/sda: 238475MiB
Размер сектора (логич./физич.): 512B/512B
Таблица разделов: msdos
Флаги диска: 

Номер  Начало    Конец      Размер     Тип      Файловая система  Флаги
 1     1,00MiB   51201MiB   51200MiB   primary  ext4              lba
 2     51201MiB  238474MiB  187273MiB  primary  ext4              lba

(parted)

Флаги lba с обоих разделов необходимо снять, а первому разделу необходимо добавить флаг boot, на нём будет корень будущей операционной системы. Выполняю последовательно ещё три команды.

(parted) set 1 lba off
(parted) set 2 lba off
(parted) set 1 boot on                                                    
(parted)

Покинуть интерактивную сессию parted можно с помощью команды quit.

(parted) quit                                                             
Информация: Не забудьте обновить /etc/fstab.

И вот как завершенная интерактивная сессия в итоге выглядит в моём терминале.

voyO5xwm9i.png

Жесткий диск размечен, но пока не готов к использованию по назначению, созданные разделы нужно отформатировать.

Форматируем созданные разделы

Очень многие LiveCD почти всех известных вендоров настроены не очень корректно, в них по-умолчанию включено в системе автоматизированное монтирование сменных накопителей. Нередки случаи, когда сразу после создания разделов в parted или GParted, операционная система пытается примонтировать их. Именно поэтому перед форматированием только что созданных разделов необходимо ещё раз взглянуть на выхлоп lsblk.

$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0    7:0    0   1,7G  1 loop /.ro
sda      8:0    0 232,9G  0 disk 
├─sda1   8:1    0    50G  0 part 
└─sda2   8:2    0 182,9G  0 part 
sr0     11:0    1   1,8G  0 rom  /image

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

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

$ sudo mkfs.ext4 -L rootfs /dev/sda1

В данном случае ключ -L задаёт метку тому rootfs. При выполнении программа mkfs находит на диске руины ранее существовавшей на нём файловой системы ntfs, и запрашивает в интерактивной режиме разрешения на продолжение действия.

UYHBwB2W0h.png

Как видно, мне достаточно было ввести символ y, чтобы согласиться.

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

$ sudo mkfs.ext4 -L homefs /dev/sda2
mke2fs 1.46.2 (28-Feb-2021)
Creating filesystem with 47941934 4k blocks and 11993088 inodes
Filesystem UUID: 127385ac-e630-4906-9d40-342a3d479151
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624, 11239424, 20480000, 23887872

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information: done

И это последнее для выбранной схемы разметки действие. Стационарный диск моего компьютера готов к использованию, и на него я могу установить любую операционную систему на базе ядра Linux. Чтобы зафиксировать в памяти картинку, давайте ещё раз запустим GParted, хоть это и не обязательно, и посмотрим на размеченный диск.

EaiMeKovwf.png

Разделы готовы, метки заданы, флаги расставлены. Задача решена только техническими средствами, никакой магии...

Рекомендации

Поскольку почти у всех известных мне LiveCD на базе Linux по-умолчанию включено автоматизированное монтирование дисков, перед тем как приступить к разметке дисков или других блочных устройств, крайне желательно его (автоматизированное монтирование) отключить. Для этого нужно запустить файловый менеджер, в SimplyLinux, например, на рабочем столе есть ярлык домашнего каталога. С помощью меню в окне файлового менеджера нужно зайти в настройки, и на соответствующей вкладке снять галку на флажке "Включить управление томами", в этом случае после создания разделов на диске они гарантированно не будут смонтированы.

2eoLaof47J.png

Выводы и умозаключения

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

  2. Диск можно разметить с помощью мощного и всеобъемлющего комбайна GParted, или с помощью командной строки и её удобных инструментов. От перемены мест слагаемых сумма никак не меняется, а выбор делает конкретный оператор компьютера в соответствии с собственными предпочтениями.

  3. Все популярные на сегодня LiveCD на основе Linux автоматически монтируют сменные носители, при разметке диска эта опция может серьёзно помешать, её желательно отключить перед началом выполнения задуманных действий.