Linux как редактировать разделы

Расширение диска или раздела Linux

В инструкции рассмотрены сценарии расширения дискового пространства разделов в Linux без потери информации.

Принцип увеличения диска:

  1. Расширение раздела.
  2. Изменение размера файловой системы.

В зависимости от типа раздела и файловой системы, действия различаются.

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

Шаг 1. Расширение раздела

Обычные тома

Допустим, есть диск /dev/sdb и раздел /dev/sdb2, который нужно увеличить.

Сначала необходимо отмонтировать раздел:

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

Подключаемся утилитой fdisk к /dev/sdb:

Если мы работаем с разделом более чем 2Тб, используем утилиту parted.

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

Удаляем раздел (не переживайте — все данные сохраняются):

* в моем примере, раздел для удаления на второй позиции.

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

Номер раздела — 2:

На запрос начального и конечного секторов просто нажимаем Enter.

Если раздел был загрузочный, добавляем соответствующий флаг:

Еще раз проверяем, что получилось:

LVM-тома расширяются на лету, даже для корневых разделов. В данном примере, работаем с /dev/sda.

Открываем диск утилитой fdisk:

* напомню, что при работе с диском 2Тб и более, следует использовать утилиту parted.

Создаем еще один раздел:

Номер раздела оставляем тот, который предлагает система (просто нажимаем Enter).

Первый и последний сектора также оставляем по умолчанию для использования всего дискового пространства (еще два раза Enter).

Задаем тип раздела:

Выбираем номер раздела (в моем примере создавался раздел 3):

Командой L можно посмотреть список всех типов, но нас интересует конкретный — LVM (8e):

Проинформируем систему, что в таблице разделов произошли изменения:

Создаем физический том из нового раздела:

Смотрим наши Volume Group и для нужного добавляем созданный том:

vgextend vg_centos /dev/sda3

* в моем примере группа томов LVM называется vg_centos

Смотрим LVM-разделы и расширяем пространства для нужного:

lvextend -l +100%FREE /dev/vg_centos/lv_root

* данная команда расширяем LVM-раздел /dev/vg_centos/lv_root, используя все свободное пространство (100%FREE).

Шаг 2. Изменение размера для файловой системы

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

Посмотреть файловую систему:

ext2/ext3/ext4:

XFS:

Reiserfs:

* обратите внимание, что в данных примерах используются различные устройства.

Если раздел был отмонтирован, монтируем его, например:

mount /dev/sda2 /mnt

Проверяем, что настройки применились:

Увеличение разделов с Gparted

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

Запускаем утилиту — выбираем диск, с которым будем работать — кликаем правой кнопкой по разделу, который хотим увеличить и выбираем Resize/Move:

В открывшемся окне с помощью мышки или форм меняем размер раздела:

Нажимаем кнопку Resize/Move.

Проверяем изменения в окне программы и сохраняем настройки кнопкой «Apply All Operations»:

Источник

Команда fdisk в Linux

В Linux существует множество способов разметки диска, создания на нём разделов и просмотра уже существующих. Это утилиты parted и cfdisk в терминале и графическая утилита gparted. Однако сегодня мы поговорим про самую простую утилиту для разметки диска в терминале — fdisk.

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

Читайте также:  All sound editor windows 10

Опции и синтаксис fdisk

Синтаксис утилиты ничем не отличается от других команд Linux:

$ fdisk опции устройство

Ей надо передать опции, согласно действия, которое вы хотите выполнить, а также раздел диска или устройство к которому эти действия надо применить. Давайте теперь рассмотрим опции fdisk:

  • -B, —protect-boot — не стирать первые 512 байт диска чтобы не повредить загрузочную запись;
  • -L, —color — настройка цветного вывода, возможные значения auto, never или always;
  • -l, —list — вывести все разделы на выбранных устройствах или если устройств не задано, то на всех устройствах;
  • -o, —output — указывает какие поля данных надо показывать в выводе программы, доступные поля рассмотрим ниже;
  • -u, —units — настраивает формат вывода размера разделов, доступные значения: cylinders, sectors, по умолчанию используется sectors;
  • -w, —wipe — режим стирания файловой системы или RAID с диска, возможные значения auto, never или always по умолчанию используется auto;
  • -W, —wipe-partition — режим стирания файловой системы или RAID из только что созданного раздела. Возможные значения аналогичны предыдущей опции;
  • -h, —help — показать справку по утилите;
  • -v, —version — опция выводит версию утилиты.

Опции используются для настройки работы утилиты, мы рассмотрели только самые главные, которые могут вам пригодится, теперь перейдём к командам:

  • a — включение или выключения флага boot для раздела;
  • d — удалить раздел;
  • F — показать свободное место;
  • l — вывести список известных типов разделов;
  • n — создать новый раздел;
  • p — вывести таблицу разделов;
  • t — изменение типа раздела;
  • i — вывести информацию о разделе;
  • I и O — записать или загрузить разметку в файл сценария sfdisk;
  • w — записать новую таблицу разделов на диск;
  • q — выйти без сохранения;
  • g — создать пустую таблицу разделов GPT;
  • o — создать пустую таблицу разделов MBR.

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

Примеры использования команды fdisk

1. Список дисков и разделов

Чтобы посмотреть список доступных вам дисков и разделов на них используйте опцию -l:

Утилита покажет все блочные устройства. На снимке есть /dev/sda, это обычный жесткий диск и /dev/nvme0n1 — это M.2 накопитель, а также там есть есть несколько /dev/loop* устройств, созданных ядром, которые лучше не трогать.

2. Интерактивный режим

Большинство операций fdisk по разметке дисков выполняются в интерактивном режиме. Чтобы запустить fdisk в интерактивном режиме передайте утилите блочное устройство которое надо разметить. В моём примере, это /dev/nvme0n1:

sudo fdisk /dev/nvme0n1

Вам не обязательно возвращаться к этой статье, когда вы захотите снова поработать с программой, посмотреть доступные команды можно выполнив команду m:

3. Просмотр таблицы разделов

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

В данном примере на диске уже есть несколько разделов, а таблица разделов используется MBR (dos).

4. Создание таблицы разделов

Давайте создадим новую таблицу разделов GPT. Для этого используйте команду g. Для таблицы разделов MBR нам бы понадобилась команда o.

5. Создание разделов

Чтобы создать раздел используйте команду n. Команда спросит какой номер раздела надо присвоить этому разделу, затем спросит сектор начала раздела, эти значения можно оставить по умолчанию, так как утилита предлагает минимальные доступные. Далее надо указать размер раздела. Это можно сделать тремя способами:

  • указать количество секторов раздела;
  • указать последний сектор раздела;
  • указать размер раздела в килобайтах, мегабайтах или гигабайтах, обозначения стандартные K,M,G.

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

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

Во втором способе укажем размер раздела в секторах. Для получения раздела размером 1 гигабайт нам понадобится примерно 2 000 000 секторов. По умолчанию размер сектора 512 байт, поэтому 2 000 000 * 512 получится примерно 1024 000 000 байт:

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

Читайте также:  Отключить проверку цифровой подписи драйверов windows server 2016

На этом создание разделов fdisk завершено. А вот форматирование разделов в fdisk невозможно, для этого придется воспользоваться утилитой mkfs.

6. Тип раздела

Кроме обычных разделов для пользовательских файлов существуют и другие типы разделов, например раздел EFI, BIOS boot, Windows Recovery, Linux swap, этот тип влияет на назначение раздела, например, раздел EFI не будет использоваться пока для него не будет выбран правильный тип. Чтобы изменить тип раздела используйте команду t:

Для вывода всех доступных типов и их номеров используйте команду L:

Для выхода из списка разделов нажмите q, а затем просто наберите номер нужного типа:

7. Удаление раздела

Чтобы удалить раздел выполните команду d, а затем введите его номер:

Вот так просто выполняется удаление.

8. Загрузочный раздел

При загрузке компьютера с диска, на котором используется таблица разделов MBR, BIOS ищет раздел, отмеченный как загрузочный и начинает искать загрузчик именно на нём. Чтобы сделать раздел загрузочным если он ещё не загрузочный или наоборот сделать его не загрузочным используйте команду a:

Загрузочность отмечается звездочкой в выводе команды p. В таблице разделов GPT для записи загрузчика используется раздел с типом BIOS boot, а флага загрузочности здесь уже нет.

9. Применение изменений

Все изменения, которые вы сейчас вносили, ещё не записаны на диск. Для их записи надо выполнить команду w:

После записи изменений программа завершится.

Выводы

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

Источник

Команда parted в Linux

При переустановке системы, установке нового дистрибутива или просто реорганизации файловых систем мы часто имеем дело с жесткими дисками. Часто нужно добавлять, удалять или изменять размер разделов, управлять их флагами или конвертировать файловые системы. Для этого в Linux есть достаточно различных инструментов как с графическим интерфейсом, так и консольных. Разобраться в графическом интерфейсе Gparted, я думаю вам не составит труда, но в некоторых случаях бывает нужна разбивка жесткого диска на разделы linux в терминале, без доступа к Х серверу, а это может стать серьезной проблемой.

В этой статье мы разберем как выполнять основные операции, которые мы привыкли делать в Gparted, такие как разметка диска, удаление и создание раздела, в терминале, а поможет в этом команда parted Linux. Сначала рассмотрим саму команду parted.

Синтаксис parted

Синтаксис parted выглядит следующим образом:

$ parted [опции] устройство [команда]

В квадратных скобках указанны необязательные аргументы.

  • опции указывают как будет работать программа, например, интерактивный режим работы или скриптовый, или нужно просто вывести справку.
  • устройство — жесткий диск с которым будет работать программа.
  • команда — действие которое нужно выполнить над жестким диском.

Опции и команды parted

У parted всего несколько опций и огромное количество команд.

  • -h — вывести справку о программе
  • -v — вывести версию программы
  • -s — скриптовый режим, программа работает без запросов к пользователю
  • -i — интерактивный режим, пользователь вводит команды в интерактивном режиме. По умолчанию программа работает в этом режиме.

Команд не очень много, но даже помнить их все вовсе не обязательно. Рассмотрим только те, которые нам пригодятся в сегодняшних примерах:

  • help команда — помощь по выбранной команде;
  • mkpart тип раздела файловая система начало конец — создание раздела linux с файловой системой начиная с позиции начало заканчивая конец, два последних параметра задаются в мегабайтах по умолчанию;
  • mktable тип — создать таблицу разделов;
  • print — отобразить таблицу разделов;
  • quit — выйти;
  • resizepart раздел конец — изменить размер раздела;
  • rm раздел — удалить раздел;
  • select раздел — установить раздел как текущий;
  • set раздел флаг состояние — установить флаг для раздела. Состояние может быть on (включен) или off(выключен).
Читайте также:  Механизм управления windows приложениями

Раньше поддерживались также опции работы с файловой системой mkfs, check, mkpartfs но начиная с версии 2.4 они были удаленны. Но программа не стала хуже.

Я понимаю что сейчас разметка дисков в linux для вас непонятна и расплывчата, но с примерами станет намного яснее. Больше не будем о теории, перейдем к примерам.

Разметка диска в Linux

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

Создадим себе тестовый полигон командой:

sudo dd if=/dev/zero of=/disk.img count=2000 bs=1M

Таким образом, мы получим файл размером 2000 мегабайт, заполненный нулями, с которым можно спокойно работать. Запустим parted, передав ему вместо устройства наш файл:

sudo parted /disk.img

Когда надо будет работать с реальным диском, просто передайте путь к файлу его устройства утилите:

sudo parted /dev/sda

Программа запустится в интерактивном режиме и вы сможете выполнять нужные команды. Сначала попытаемся посмотреть список разделов на устройстве:

Он пуст потому что даже нет таблицы разделов. Пока её нет, разметка дисков в Linux не может быть выполнена, нам предстоит ее создать. Для этого воспользуйтесь командой mktable:

(parted) mktable gpt

Будем мы создали таблицу разделов типа gpt, но можно выбрать одну из этих: aix, amiga, bsd, dvh, gpt_sync_mbr, gpt, mac, msdos, pc98, sun, loop

Теперь давайте создадим новый раздел с файловой системой ext2 размером 100 мегабайт. Для этого есть команда mkpart, как вы помните ей нужно передать три параметра: тип раздела, файловую систему и координаты. Тип раздела может быть: primary, logical, extended (первичный, логический и расширенный).

В gpt можно создавать нужное количество первичных разделов и не задумываться об их типе. Это все было создано для MBR, в этой таблице есть ограничение на количество первичных разделов — только четыре. Поэтому приходилось создавать три первичных и один расширенный, в который вкладывались уже сколько нужно логических.

Ну так вот, создаем первичный:

(parted) mkpart primary ext2 0 400М

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

Смотрим список разделов еще раз:

Создадим еще несколько разделов, например для корня системы и для домашней папки:

(parted) mkpart primary ext4 400 1000M

(parted) mkpart primary ext4 1000M -0M

Параметр -0 означает вести отсчет от конца раздела, таким образом будет занято все доступное пространство под третий раздел. Смотрим что получилось:

Работа с диском в Linux осуществляется по их номерам. Давайте уменьшим последний раздел и создадим после него ещё один:

(parted) resizepart 3 1600M

Также можно указать нужный размер в процентах:

(parted) resizepart 3 60%

А теперь создание раздела parted:

mkpart primary ext4 1600M -0M

Удалим только что созданный четвертый раздел:

Зададим метки для существующих разделов с помощью команды name:

(parted) name 1 boot

(parted) name 2 root

(parted) name 3 home

Сделаем первый раздел загрузочным командой set:

Можно устанавливать следующие флаги: boot, root, swap, hidden, raid, lvm, lba, hp-service, palo, prep, msftres, bios_grub, atvrecv, diag, legacy_boot, type, irst.

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

Выводы

Теперь вы знаете как пользоваться parted Linux и этой информации достаточно чтобы не потеряться в случае, если окажетесь без доступа к графическому интерфейсу и вам понадобится разбивка жесткого диска в консоли Linux.

Источник

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