Доступно множество инструментов для разбиения на разделы, большинство из которых имеют интерфейс в виде списка. С помощью горячих клавиш и некоторой настройки вы можете довольно быстро разбить диск на разделы. Однако fdisk не предназначен для использования внутри скриптов; sfdisk предназначен для написания сценариев. Ваше мнение о том, что лучше, может отличаться. Здесь вы можете узнать, как запустить parted.
Вы можете запускать parted только из командной строки, но в двух режимах; командная строка и интерактивный. В интерактивном режиме у вас есть новая оболочка только с разделенными командами, а в командной строке вы каждый раз вводите новую команду. Также есть опция -s, поэтому вы можете запускать несколько команд за один раз.
Прежде чем что-либо начинать, вы должны убедиться, что диск именно такой, как вы думаете. Для этого используйте опцию списка. Обратите внимание, что parted покажет только те диски, к которым у вашего пользователя есть доступ, поэтому вам, возможно, придется использовать root, чтобы найти свой новый блестящий диск. Кроме того, он показывает все диски.
$ parted -l
Список, если у вас новый диск, должен выглядеть примерно так:
Model: ATA QEMU HARDDISK (scsi) Disk /dev/sda: 21.5GB Sector size (logical/physical): 512B/512B Partition Table: Disk Flags: Number Start End Size File system Name Flags Warning: Unable to open /dev/sr0 read-write (Read-only file system). /dev/sr0 has been opened read-only. Model: QEMU QEMU DVD-ROM (scsi) Disk /dev/sr0: 599MB Sector size (logical/physical): 2048B/2048B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 2 19.7MB 116MB 96.5MB primary esp
Обратите внимание, что есть два диска: компакт-диск и новый жесткий диск. Внимательные читатели заметят, что я использую виртуальную машину для выполнения этих команд. Если вы хотите распечатать только свой диск, вам необходимо использовать следующий формат:
$ parted /dev/sda1 – print [root@nixos:~]# parted /dev/sda -- print Model: ATA QEMU HARDDISK (scsi) Disk /dev/sda: 21.5GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 3 1049kB 537MB 536MB fat32 ESP boot, esp 1 537MB 19.3GB 18.8GB ext4 primary 2 19.3GB 21.5GB 2147MB primary
Метки при использовании parted обозначают тип таблицы разделов, которую вы хотите использовать. Если вы выбрали «gpt», убедитесь, что вы загрузились с машины UEFI. Ваша система не загрузится, если вы ошиблись! Чтобы проверить что у вас, распечатайте прошивку. Как ни странно, при форматировании дисков с помощью mkfs можно поставить метки и другое понятие.
$ ls sys/firmware
Если он содержит строку efi, все готово!
acpi dmi efi memmap qemu_fw_cfg
Если вы видите то, что показано ниже, вам нужно выбрать msdos. Я исключаю Mac здесь, потому что у меня еще нет опыта их использования.
acpi dmi memmap qemu_fw_cfg
Теперь, когда вы уверены, что у вас есть реализация UEFI на вашем компьютере, вы можете установить метку.
$ parted /dev/sda – mklabel gpt
Во втором случае, msdos, вы делаете то же самое, но с другим параметром.
$ parted /dev/sda – mklabel msdos
Теперь можно приступать к созданию разделов!
В случае UEFI вам нужно выделить место для загрузочного раздела или раздела ESP. Здесь вы можете разместить все загрузочные материалы, поддерживаемые UEFI/EFI. По этой причине вы должны оставить место перед основным разделом. В этой первой команде мы также добавляем место для раздела подкачки. Посмотрите на команду ниже:
$ parted /dev/sda – mkpart primary 512MiB -8GiB
Эта команда запускает раздел с 512 МБ и заканчивает его с 8 ГБ до конца диска. Обратите внимание на «-» перед вторым членом. Во втором случае, msdos, вы делаете то же самое, но начинаете ближе к началу. Размер MBR не превышает 1 МБ, включая резервную копию.
$ parted /dev/sda – mkpart primary 1MiB -8GiB
В обоих случаях ваш диск заполнит все между началом и непосредственно перед концом. Этот раздел заполнит пространство между началом и концом.
$ parted -l
Чтобы увидеть, что происходит с вашим диском. Делайте это между каждым шагом, пока не будете уверены в том, что происходит.
На остальной части диска поместите свой раздел подкачки.
$ parted /dev/sda – mkpart primary linux-swap -8GiB 100%
Обратите внимание, что для процедуры не требуется знать размер диска, если он превышает 8 гигабайт. Очевидно, что в зависимости от размера свопа вы можете установить объем оперативной памяти в вашем случае. В виртуальной машине вам, вероятно, следует разместить максимум 2 ГБ.
Наконец, только для случая UEFI создайте системный раздел UEFI.
$ parted /dev/sda – mkpart ESP fat32 1MiB 512MiB
Как вы видите в этой команде, вы можете установить файловую систему для раздела при его создании. Вы также можете установить его после того, как создали.
Вы можете заполнить диск parted, не зная его общего размера. Есть много способов сделать это, и ранее вы видели пример, в котором вы устанавливаете 100%, чтобы достичь конца диска. Другой способ заполнить ваш диск — использовать s; по отрасли,%; для процента и chs; для совмещенной ГБЦ и сектора. Самое приятное в этом случае то, что вы можете ошибаться в том, с чего начать, и parted предложит вам ближайшее возможное решение, и вы можете ответить «да».
В случае с UEFI вы хотите убедиться, что ESP настроен именно так, запустив parted.
$ parted /dev/sda – set 3 esp on
Так вы устанавливаете все флаги.
Сделал ошибку? Меняется стратегия? Вы можете удалять разделы по одному. Вы можете изменить номер раздела, чтобы выбрать правильный.
$ parted /dev/sda – rm 1
Ничего не добавляет.
Вы также можете спасти свой старый диск с помощью параметра восстановления. Это работает, даже если вы удалили раздел по ошибке.
$ parted /dev/sda – rescue 1MiB 20GiB
Действие выполняется медленно, но может помочь вам оправиться от проблем. Когда parted что-то найдет, он предложит вам действовать.
Заключение
Parted — это очень эффективный способ разбить ваш диск на разделы. Вы можете запустить команду за раз или открыть оболочку.