Расширение диска или раздела Linux
В инструкции рассмотрены сценарии расширения дискового пространства разделов в Linux без потери информации.
Принцип увеличения диска:
- Расширение раздела.
- Изменение размера файловой системы.
В зависимости от типа раздела и файловой системы, действия различаются.
Любая работа с диском несет риск потери информации. Перед началом работ убедитесь в наличие резервных копий ценных данных.
Шаг 1. Расширение раздела
Обычные тома
Допустим, есть диск /dev/sdb и раздел /dev/sdb2, который нужно увеличить.
Сначала необходимо отмонтировать раздел:
В случае работы с корневой директорией, отмонтировать ее не получиться. В таком случае необходимо загрузить компьютер с LiveCD.
Подключаемся утилитой fdisk к /dev/sdb:
Если мы работаем с разделом более чем 2Тб, используем утилиту parted.
Смотрим номера разделов:
Удаляем раздел (не переживайте — все данные сохраняются):
* в моем примере, раздел для удаления на второй позиции.
Создаем новый раздел:
На запрос начального и конечного секторов просто нажимаем 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:
Reiserfs:
* обратите внимание, что в данных примерах используются различные устройства.
Если раздел был отмонтирован, монтируем его, например:
Проверяем, что настройки применились:
Увеличение разделов с Gparted
Если работы выполняются на системе с графическим интерфейсом или есть возможность перезагрузить сервер и загрузиться с LiveCD, можно воспользоваться простым средством — утилитой Gparted, которая позволяем менять размер разделов мышкой.
Запускаем утилиту — выбираем диск, с которым будем работать — кликаем правой кнопкой по разделу, который хотим увеличить и выбираем Resize/Move:
В открывшемся окне с помощью мышки или форм меняем размер раздела:
Нажимаем кнопку Resize/Move.
Проверяем изменения в окне программы и сохраняем настройки кнопкой «Apply All Operations»:
Расширение диска в Linux (Debian, CentOS, Ubuntu)
Важно! До внесения изменений, обязательно сделайте резервную копию (backup) всех данных сервера. Любые манипуляции с разделами несут в себе риск потери данных.
Расширение будет выполнено без потери данных. Это такая «хитрая техника»: существующий раздел удаляется, а на его месте создается новый, большего размера.
В нашем примере устройство называется vda и находится в каталоге /dev
1. Необходимо узнать название устройства жесткого диска который мы хотим расширить. Делается это командой fdisk -l
2. Чтобы увеличить размер раздела (партиции, слайса) на диске, нам необходимо выполнить: fdisk /dev/vda
3. Затем внутри командной строки приложения fdisk выполнить p (print), чтобы увидеть таблицу разделов на диске.
В нашем примере раздел один. Называется /dev/vda1 и имеет объем 5ГБ. Сам же жесткий диск имеет объем 10ГБ. Давайте расширим /dev/vda1 до 10ГБ.
4. Выполним d для удаления существующего раздела. Затем n – для создания нового, p – для primary, 1 – это номер раздела; и укажем начало и конец раздела в секторах. Начальный сектор должен соответствовать начальному сектору раздела, который был удален. На скриншоте видно, что это 2048. Последний сектор раздела выбираем максимально возможным. В нашем случае fdisk предлагает нам 20971519. Его и введем.
5. Еще раз p – чтобы убедиться, что раздел теперь увеличился до необходимого нам размера. И w – для записи и выхода из fdisk.
После этого мы получим предупреждение, что устройство подмонтировано и суперблок недоступен, и что объем раздела будет изменен после перезапуска ОС.
6. Перезагружаем ОС — reboot
7. После перезагрузки нам необходимо расширить ФС на весь раздел. Сделаем это командой resize2fs /dev/vda1
8. Далее, df -h – чтобы удостовериться, что все получилось.
Расширение дискового пространства в Ubuntu Linux
Часто бывает необходимо расширить имеющееся дисковое пространство без потери места и данных. Данная инструкция описывает весь процесс расширения — от добавления дополнительного файлового пространства в панели администрирования до настройки операционной системы и того, как выполнить увеличение размера диска в Ubuntu.
Перейдите в панель управления, выберите ваш сервер, перейдите на вкладку Действия, выберите Выключить средствами ОС и нажмите кнопку Выключить. После этого перейдите на вкладку Настройки, Конфигурация, увеличьте величину диска и нажмите кнопку Изменить (рис. 1).
Рис. 1. Конфигурация виртуального сервера
В нашем примере величина дискового пространства в корневом каталоге составляла 20 Гб. Сделаем жесткий диск виртуальной машины равным 40 Гб.
После нажатия на кнопку Изменить нужно дождаться выполнения операции и можно будет снова запускать сервер.
Рис. 2. Изменение конфигурации выполнено
Расширение дискового пространства в операционной системе Linux
Перед тем как в Ubuntu увеличить диск, посмотрим, как выполнена разметка и сколько сейчас дискового пространства доступно:
Рис. 3. Доступно 19 G
Как видите, общая величина группы томов /dev/mapper/ составляет 19 Гб. Наша задача — расширить размер этой группы томов до полной величины диска.
8 Parted команд Linux для создания, изменения размера и восстановления разделов диска
Parted — известный инструмент командной строки, который позволяет вам легко управлять разделами жесткого диска. Это может помочь вам добавить, удалить, сжать и расширить разделы диска вместе с файловыми системами, расположенными на них. Parted прошла долгий путь. Некоторые из его функций были удалены, другие добавлены.
В этом уроке вы узнаете основы parted, и мы покажем вам некоторые практические примеры. Если у вас нет предыдущего опыта с parted, помните, что он сразу же записывает изменения на ваш диск, поэтому будьте осторожны, если вы попытаетесь изменить разделы диска.
Если вы планируете тестировать parted, лучшим вариантом будет просто использовать виртуальную машину или старый компьютер/ноутбук без какой-либо ценной информации. Чтобы внести изменения в раздел диска, он не должен использоваться. Если вам нужно работать с основным разделом, вы можете загрузиться в режим rescue mod.
Примечание . Вам нужно будет иметь права root к компьютеру
Как установить Parted в Linux
Во многих дистрибутивах Linux parted сразу установлен. Если он не включен в дистрибутив, вы можете установить его с помощью:
После этого вы можете продолжить поиск некоторых реальных примеров команды parted в остальной части этой статьи.
1. Проверка версии Parted
Выполняя следующую команду, вы увидите сообщение, похожее на изображении ниже. Не беспокойтесь, если ваша версия parted отличается. Если не указано иное, parted будет использовать ваш основной диск, который в большинстве случаев будет /dev/sda.
Если вы хотите выйти из parted, просто введите:
2. Список разделов диска Linux
Теперь, когда запустился parted, давайте перечислим разделы выбранного жесткого диска. Как упоминалось ранее, parted выбирает ваш первый диск по умолчанию. Чтобы увидеть разделы диска, выполните print:
При запуске print , он также отображает информацию и модель жесткого диска. Вот пример с жесткого диска (не виртуального, как показано на изображении выше):
В приведенном выше примере вы можете увидеть модель диска, размер сектора и таблицу разделов.
3. Список дисков и выбор другого диск
Если у вас более одного жесткого диска, вы можете легко переключаться между дисками, используя команду «select». В приведенном ниже примере я переключусь с /dev/sda на /dev/sdb, который является логическим диском в моей системе.
Чтобы легко переключаться между дисками, вы можете использовать:
Измените «X» на букву диска, на которую вы хотите переключиться.
4. Создание первичного или логического раздела в Linux.
Parted может использоваться для создания первичных и логических разделов диска. В этом примере я покажу вам, как создать основной раздел, но шаги для логических разделов одинаковы.
Чтобы создать новый раздел, parted использует «mkpart». Вы можете указать дополнительные параметры, такие как «первичный» или «логический», в зависимости от типа раздела, который вы хотите создать.
Прежде чем приступать к созданию разделов, важно убедиться, что вы используете (вы выбрали) правильный диск.
Как показано на приведенном выше изображении, мы используем виртуальный диск объемом 34 ГБ. Сначала мы поставим метку новому диску, а затем создадим раздел и установим в него файловую систему.
Теперь первым шагом будет присвоение метки новому диску:
Теперь создайте новый раздел с помощью mkpart. Указанные единицы находятся в мегабайтах (МБ). Мы создадим раздел размером 10 ГБ, начиная с начала диска, 1 до 10000:
Затем выйдите с помощью команды «quit». Мы будем форматировать наш новый раздел в файловой системе ext4 с помощью mkfs. Для этого, выполните следующую команду:
Примечание . При выполнении вышеуказанной команды важно выбрать правильный диск и раздел!
Теперь давайте проверим наши результаты, напечатав таблицу разделов на нашем вторичном диске. В столбце файловой системы вы должны увидеть ext4 или тип файловой системы, который вы решили использовать для своего раздела:
5. Изменение размера раздела диска Linux
Parted включает несколько полезных функций, и одна из них — «resizeepart», которая поможет вам изменить размер раздела.
В следующем примере вы увидите, как изменить размер данного раздела. Для этого примера мы будем использовать ранее созданный раздел.
Сначала вам нужно знать номер раздела, размер которого вы будете изменять. Это можно легко найти, используя «print»:
В нашем примере номер раздела «1». Теперь запустите команду resizeepart:
Вам будет предложено указать размер раздела, который вы хотите изменить. Введите его номер. После этого вам будет предложено установить новую конечную точку для этого раздела. Помните, что по умолчанию единицы находятся в МБ. В нашем примере мы установили размер нового раздела в 15 ГБ:
Теперь проверьте результаты с помощью «print»:
6. Удаление раздела
Следующее, что вы узнаете, — это удаление раздела с жесткого диска. Для этого вам нужно будет использовать команду «rm» в разделе parted. Чтобы удалить раздел диска, вам нужно знать его номер.
Как упоминалось ранее, вы можете легко получить это число, используя «print». В нашем примере мы удалим раздел с номером 1 из нашего логического диска /dev/sdb1:
Проверьте результаты, распечатав таблицу разделов:
7. Восстановление раздела диска
Parted поддерживает утилиту rescue(восстановления), которая поможет вам восстановить потерянный раздел между начальной и конечной точками. Если раздел найден в этом диапазоне, он попытается восстановить его.
8. Изменение флага раздела
Используя parted, вы можете изменить значение флага для разделов диска. Поддерживаемые флаги:
Состояния могут быть либо «on», либо «off». Чтобы изменить флаг, просто выполните команду «set» в parted:
Вышеуказанная команда устанавливает флаг lba на втором разделе. Проверьте результаты c помощью:
Вопросы по статье задавайте в комментариях ниже.
Спасибо за уделенное время на прочтение статьи!
Если возникли вопросы, задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University.