Centos 7 разбиение диска вручную
Утилита fdisk часто оказывает устрашающее действие на начинающих пользователей. И потому, идя навстречу их невысказанным пожеланиям, Кевин Мартин написал к ней консольный фронт-энд с меню-ориентированным интерфейсом, получивший имя cfdisk . Как и fdisk , эта утилита входит в состав пакета linux-utils-ng .
Cfdisk — утилита, подобная fdisk , но использующая более удобный консольный интерфейс.
Утилита cfdisk описывается в литературе гораздо реже, хотя во многих дистрибутивах она принята для разметки диска по умолчанию или пропагандируется как предпочтительная. Традиционно она считается более удобной, чем fdisk — впрочем, это субъективно и зависит от привычки.
2. Cfdisk — работа с разделами диска.
2.1. Создание раздела на новом диске.
Запустить cfdisk можно одноименной командой, с указанием имени дискового устройства в качестве аргумента:
Если аргумент в командной строке опущен — по умолчанию команда будет исполнена для первого физического диска машины.
В случае успешного запуска нас будет приветствовать экран:
Приступим к созданию раздела. Нажимаем на New, создать раздел.
На вопрос: «Сколько будем делать по размеру раздел?», отвечаем вводом размера или пропуском (всё использует) и нажимаем клавишу Enter.
Выбираем Primary (основной).
Получаем макет готового раздела на весь физический диск:
Нажимаем Bootable (если нужно, чтобы он был загружаемый).
Анкета диска дополнится строкой:
Если уверены, что всё сделано правильно — записываем изменения, нажимаем Write.
И печатаем руками ответ yes.
Об успехе операции нас известит надпись «The partition table has been altered».
Всё, разделы созданы, выходим из программы, выбирая Quit.
Таким образом, все происходит почти также, как в fdisk . Это и не удивительно: cfdisk по сути лишь интерфейсная для fdisk оболочка.
Хотя cfdisk несколько менее гибок: например, раздел в середине неразбитого дискового пространства создать нельзя.
2.2. Если на диске «битый» раздел?
К примеру, таблица разделов на флешке повреждена настолько, что проще всё снести и создать заново — тогда делаем так:
Параметр -z создаёт нулевую таблицу разделов, и позволяет сразу начать формировать новую.
2.3. Переключение утилиты на английский язык.
Некоторое неудобство возникает при работе с cfdisk при использовании русской юникодовской системной локали (ru_RU.UTF-8).
Во-вторых, даже при сборке с поддержкой UTF-8 буквенные сокращения команд меню иногда отказываются работать.
И в-третьих, если при англоязычном интерфейсе очевидно, что таким сокращением является первый символ соответствующего пункта меню, в интерфейсе русскоязычном эта мнемоника теряется.
Так что cfdisk целесообразно использовать в англоязычном варианте. Что достигается просто — принудительным определением локали администратора как C или POSIX (что эквивалентно). Это можно сделать или в командной строке, или в профильном файле командной оболочки root’а, строкой вида (для bash):
Последнее предпочтительней: локали, отличные от POSIX , не полезны при ряде административных действий.
Полноты картины ради замечу, что cfdisk можно запустить и в интерактивном режиме, однако, его мало кто использует.
Когда на сервере с Asterisk заканчивается свободное место, например из-за хранящихся записей разговоров, возникает необходимость расширения дискового пространства, подключения новых дисков и их разметки. Для разметки дисков можно использовать утилиты fdisk и parted. Утилита Fdisk Fdisk – утилита для работы с таблицей разделов. Fdisk может создавать разделы объемом до 2Тб. Для создания разделов большего размера […]
Когда на сервере с Asterisk заканчивается свободное место, например из-за хранящихся записей разговоров, возникает необходимость расширения дискового пространства, подключения новых дисков и их разметки. Для разметки дисков можно использовать утилиты fdisk и parted.
Утилита Fdisk
Fdisk – утилита для работы с таблицей разделов. Fdisk может создавать разделы объемом до 2Тб. Для создания разделов большего размера в Linux системах используется утилита parted.
Основные команды, которые доступны в консоли утилиты fdisk:
n-создание нового раздела
d — удаление существующего раздела
p-вывод таблицы разделов
w-запись изменений в таблицу разделов
q-выход из утилиты fdisk
Для создания раздела на диске, необходимо:
- Определить его название, полученное в системе. Просмотреть информацию по дискам можно командами:
lsblk ( lsblk –f выведет информацию также о файловой системе )
fdisk -l
Просмотр информации по дискам утилитой fdisk
- Запустить утилиту fdisk, выбрав этот диск, например если подключенный диск отображается как /dev/sdb:
fdisk /dev/sdb
- Выбрать n – создание нового раздела
- Выбрать тип раздела (extended или primary) и его номер.
- Указать номер первого блока, указать последний блок — размер раздела или номер последнего блока.
- Для записи изменений ввести w.
Создание нового раздела, занимающего весь объем диска, утилитой fdisk
Просмотр параметров файловой системы утилитой tune2fs
Если раздел использовался ранее, перед форматированием необходимо закрыть все процессы, использующие его и размонтировать.
Посмотреть pid процессов, использующих раздел, можно командой
lsof | grep /dev/раздел — /dev/раздел – имя раздела(устройства)
kill pid — pid идентификатор процесса(число)
umount /dev/раздел
Также (если диск не SSD), можно выполнить низкоуровневое форматирование, заполнив диск нулевыми байтами. При этом исправляются софтовые бэд-блоки появившиеся во время эксплуатации диска (некорректно или медленно работающие секторы на диске, причиной появления которых не являлись физические причины – царапины, трещины и т.д.). Кроме этого, низкоуровневое форматирование – удаление данных без возможности их восстановления т.к. при обычном (быстром) форматировании происходит только очистка оглавления. Низкоуровневое форматирование – процесс, занимающий длительное время (в зависимости от размера диска).
Низкоуровневое форматирование утилитой dd
Отформатировать можно утилитой mke2fs:
mke2fs /dev/раздел — форматирование в файловую систему ext2
mkfs.ext3 /dev/раздел или mke2fs –j /dev/раздел — форматирование в ext3
mkfs.ext4 /dev/раздел — форматирование в ext4
mkfs.vfat /dev/раздел- форматирование в fat
mkfs.reiserfs /dev/раздел- форматирование в ReiserFS
mkfs.ntfs /dev/раздел- форматирование в NTFS
Также, можно передать необязательные параметры в mke2fs.
— m — процент блоков файловой системы, зарезервированных для пользователя root. По умолчанию-5%.
— b — размер блока, указанный в байтах. Допустимые значения: 1024, 2048 и 4096 байт на блок.
Форматирование файловой системы утилитой mke2fs
Проверить тип файловой системы, созданной на каком-либо разделе можно утилитой blkid, которая также выводит UUID(уникальный идентификатор диска):
Просмотр uui раздела и типа файловой системы утилитой blkid
После создания раздела и форматирования его можно смонтировать. Сначала создайте каталог, в котором должен быть смонтирован раздел.
mount /dev/sdd1 /mnt/asterisk/monitor/
Чтобы автоматически монтировать файловую систему после перезагрузки, добавьте запись в/etc /fstab
Первое поле (UUID=…) – идентификатор раздела, который можно посмотреть утилитой blkid.
Второе (/mnt/asterisk/monitor/) – точка монтирования раздела
Третье (ext4) – тип файловой системы
Четвертое (defaults) — опции монтировании в fstab. Опция defaults — использование параметров по-умолчанию: exec, auto, rw, nouser, async, nosuid, atime. Разрешить запуск исполняемых файлов, установить права на чтение и запись, обычным пользователям запретить подключать/отключать устройство, включение опции асинхронного ввода/вывода, производить запись времени последнего доступа к файлу, заблокировать работу SUID и SGID битов для устройства.
Пятое поле — необходимость создавать резервные копии раздела утилите dump.
0 – не создавать резервные копии.
1 – разрешить резервные копии.
Шестое — необходимость проверки файловой системы утилитой fsck
0 – раздел не будет проверяться.
1 –будет проверяться в первую очередь.
2 –будет проверяться после раздела со значением 1.
Содержимое файла /etc/fstab
Parted – утилита, работающая с таблицей разделов. Утилита parted может создавать разделы объемом более 2 Тб.
Чтобы запустить parted, выполните от root команду parted /dev/sda, где /dev/sda — устройство, которое вы хотите разметить.
Список команд parted.
check minor-num Выполняет простую проверку файловой системы
cp from to Копирует файловую систему из одного раздела в другой, вмето from и to указываются младшие номера разделов
help Выводит список доступных команд
mklabel label Назначает метку диска для раздела
mkfs minor-num file-system-type Создаёт файловую систему типа file-system-type
mkpart part-type fs-type start-mb end-mb Создает раздел, не создавая новую файловую систему
mkpartfs part-type fs-type start-mb end-mb Создает раздел и создаёт указанную файловую систему
move minor-num start-mb end-mb Перемещает раздел
name minor-num name Назначает имя раздела (только для меток диска Mac и PC98)
print Вывести таблицу разделов для выбранного диска
quit Завершает работу parted
rescue start-mb end-mb Восстанавливает потерянный раздел с start-mb на end-mb
resize minor-num start-mb end-mb Изменяет размер раздела с start-mb на end-mb
rm minor-num Удаляет раздел
select device Выбирает другое устройство для настройки, например select /dev/sdd1 — выбрать диск sdd1
set minor-num flag state Устанавливает флаг для раздела; state может иметь значение «on» или «off»
Добавление диска объемом более 2 Тб в OS CentOS/Red Hat/Fedora
Для разметки диска объемом более 2 Тб с помощью parted необходимо сделать следующее:
- Запустить parted для работы с диском, например, если это диск /sdd:
- Записать метку диска GPT:
- Создать первичный раздел, который занимает весь объем жесткого диска, для 3Тб можно командами:
Где ext4 – файловая система (необязательный параметр, по умолчанию создается файловая система ext2). Начиная с версии 3, parted не создает файловую систему.
При использовании последнего варианта для создания раздела mkpart primary 0% 100% утилита parted автоматически определит отступ раздела. Этот параметр влияет на выравнивание раздела. Несоответствие между физического и логического распределения данных может привести к снижению производительности системы и сокращению срока службы оборудования. Отступ должен быть кратен размеру блока в файловой системе. Посмотреть с какого сектора начинается раздел можно, если установить размерность диска в секторах и вывести таблицу разделов:
(parted) unit s
(parted) print
Содержимое файла /etc/fstab
Далее необходимо выполнить аналогичные действия, как и при использовании утилиты fdisk: если файловая система не была создана с помощью parted – если требуется, запустить низкоуровневое форматирование, создать файловую систему и смонтировать раздел в нужную папку.
Форматирование диска более 2Тб в ext4
После переноса данных (записей разговоров) на новый диск, который будет смонтирован, например в /mnt/asterisk/monitor/, на старом диске можно создать символическую ссылку на новый раздел, где будут храниться записи, символическая ссылка создается командой:
Познакомьтесь с возможностями Asterisk. Найдите инструменты, которые помогут вашей компании развиваться.
11.12.2020
VyacheslavK
CentOS, Linux
комментариев 6
В этой статье мы рассмотрим, как добавить новый диск на сервер с Linux CentOS: как обнаружить новый диск, разбить его на разделы, отформатировать и смонтировать. В этом примере мы добавляем новый диск на физический Linux сервер (как добавить новый диск виртуальную машину KVM мы рассматривали ранее).
Создание нового раздела в parted
Для создания раздела в parted, используется утилита mkpart . При вводе команды в интерактивном режиме будут появляться вопросы о параметрах нового раздела:
- Partition type — указываем тип раздела (primary / extended)
- File system type — файловая система, по умолчанию предлагается ext2 (в дальнейшем мы ее изменим);
- Start — начальный сектор раздела
- End — конечный сектор раздела (в мегабайтах). В нашем примере мы указали 5000, это значит, что будет создан раздел размером 5Гб.
(parted) print free
Можно сразу создать раздел на весь диск:
или указать произвольный размер раздела так:
Также можно указывать размер диска в % и задать метку:
Чтобы выйти из оболочки parted, выполните команду:
Отформатируем раздел в файловой системе ext4:
Проверяем файловую систему раздела и видим, что она изменилась (обратите внимание что команда print выводит теперь список разделов на диске, их номера, тип, размер и файловую систему).
Можно создать раздел и отформатировать его, не входя в оболочку parted, например:
Данной командой мы создадим раздел на диске vdb, под который отдадим всё пространство.
Таким образом вы можете упрощать себе работу или же добавлять подобные команды в какие-то скрипты или файлы кикстарта.
Управление таблицей разделов в parted, разметка диска
Выведем список доступных дисков:
Доступен диск /dev/vdb размером 21 Гб, диску не присвоена метка (error /dev/vdb: unrecognized disk label), какая таблица разделов – не понятно.
Можно создать на диске разметку msdos (MBR)
Или таблицу разделов gpt ( GUIE partition table поддерживает размер раздела более 2 Тб) :
Обратите внимаени, что в parted в отличии от fdisk нет команды для записи изменений. Все изменения применяются немедленно.
Теперь parted показывает тип таблицы разделов (разметки) на диске:
Как вы видите, на диске уже есть таблица разделов MBR, но сами разделы еще не созданы.
Если у вас на сервере имеется несколько свободных дисков, то можно переключаться между ними с помощью команды:
Удаление LVM групп и томов
Для удаления LVM томов, используется команда lvremove:
Чтобы удалить группу логических томов, используйте:
Убрать метки с LVM дисков:
Восстановление случайно удаленных разделов с помощью rescue
Удаленный раздел можно восстановить с помощью утилиты rescue, которая доступа в оболочке parted:
Команда запросит начальный и конечный размер разделе. Если на этих позициях есть инфа о разделе, команда попробует восстановить удаленный раздел.
Как видите, утилита parted проста в использовании и очень удобна для создания/изменения разделов вашего диска. Надеемся, что данная статья поможет вам разобраться во многих вопросах.
04.02.2020
VyacheslavK
CentOS, Linux
комментария 4
LVM (Logical Volume Manager) – подсистема операционных систем Linux, позволяющая использовать разные области физического жесткого диска или разных жестких дисков как один логический том. LVM встроена в ядро Linux и реализуется на базе device mapper.
Главные преимущества LVM – высокий уровень абстракции от физических дисков, гибкость и масштабируемость. Вы можете на лету изменять размер логического тома, добавлять (и удалять) новые диски. Для LVM томов поддерживается зекалирование, снапшоты (persistent snapshot) и striping (расслоение данных между несколькими дисками с целью увеличения производительности).
В данной статье мы рассмотрим использование LVM разделов на примере Linux CentOS 8, покажем процесс объединения двух дисков в одну группу LVM, посмотрим как создавать группы, тома, монтировать, расширять и уменьшать размер LVM разделов.
Прежде всего нужно разобраться с уровнями дисковых абстракций LVM.
- Physical Volume (PV) – физический уровень. Физические диски инициализируются для использования в LVM.
- Volume Group (VG) – уровень группы томов. Инициализированные диски объединяются в логические группы с именем.
- Logical Volume (LV) — создается логический том на группе томов, на котором размещается файловая система и данные.
Увеличение логического тома LVM
Чтобы добавить дополнительный диск к группе томов, нужно воспользоваться уже знакомой схемой:
pvcreate /dev/нашдиск — инициализация диска для lvm
vgextend test /dev/нашдиск — добавление диска в группу томов
Чтобы расширить логический том, воспользуйтесь следующей схемой:
lvextend -L10G /dev/test/test1
Данным способом вы расширите раздел на 10 Гб.
Еще несколько примеров расширения LVM раздела:
lvextend -L+10G /dev/test/test1 — добавите 10 Гб к вашему тому
lvextend -l +100%FREE /dev/test/test1 — выделите все нераспределенное пространство в группе test
Осталось увеличить раздел файловой системы:
resize2fs /dev/test/test1 – для ext4
xfs_growfs /dev/test/test1 – для xfs
Создание LVM разделов
Итак, у нас имеется виртуальная машина KVM, к которой подключены два дополнительных диска. Проверим, что они доступны в системе, используя команду:
Как вы видите, у меня доступны два диска /dev/vdb и /dev/vdc .
При настройке LVM на своем виртуальном или физическом сервере, используйте свою маркировку дисков.
Чтобы диски были доступны для LVM, их нужно пометить (инициализировать) утилитой pvcreate:
pvcreate /dev/vdb /dev/vdc
Теперь, чтобы убедиться, что данные диски можно использовать для LVM, введите команду pvdisplay:
Как видим, оба диска отображаются. Разберем информацию из вывода команды:
- PV Name – имя диска или раздела
- VG Name – группа томов, в которую данный диск входит (мы пока группу не создали)
- PV Size – размер диска или размера
- Allocatable – распределение по группам. В нашем случае распределения не было, поэтому указано NO
- PE Size – размер физического фрагмента. Если диск не добавлен ни в одну группу, значение всегда будет 0
- Total PE – количество физических фрагментов
- Free PE — количество свободных физических фрагментов
- Allocated PE – распределенные фрагменты
- PV UUID – идентификатор раздела
С помощью команды pvscan вы можете просканировать диски на предмет PV.
Чтобы проверить результат введите vgdisplay:
Как видим, диски объединены в группу test и VG Size показывает общий размер дисков.
Разберем информацию из листинга команды vgdisplay:
- VG Name – группа томов, в которую данный диск входит.
- Format – версия подсистемы lvm, которая используется для создание группы (в нашем случае версия 2)
- Metadata Areas – область метаданных
- VG Access – уровень доступа к группе логических томов
- VG Size – общий объем дисков, которые входят в группу
- PE Size — размер физического фрагмента
- Alloc PE / Size – распределенное пространство(количество и объем фрагментов)
После того, как мы создали общую группу для дисков, мы можем создать логический том на этой группы. При создании тома, используется команда lvcreate.
Чтобы в вашей группе создать логический том определенного размера и именем, используйте команду:
Как видим из листинга, в группе test был создан логический том с именем lvol0 и размером 5G.
Если вы хотите сами задать имя, используйте флаг -n:
Несколько примеров для создания логических томов с разными размерами:
lvcreate -l 40%VG test – 40% от дискового пространства группы test
lvcreate -l 100%FREE test – использовать все свободное пространство группы test
Чтобы вывести информацию о логическом томе, используйте lvdisplay:
Так же разберем листинг данной команды:
- LV Path – путь к устройству логического тома (к диску или разделу)
- LV Name – имя логического тома
- VG Name – имя группы томов
- LV UUID – идентификатор логического тома
- LV Write Access – уровень доступа к логическому тому
- LV Creation host, time — информация о хосте, дата когда был создан логический том
- LV Size – размер диска, доступный для использования логическому тому
- Current LE – количество логических фрагментов
Установка parted в Linux
Обновите набор по на сервере и установите пакет parted с помощью менеджера пакетов вашего дистрибутива Linux. Для CentOS 8 с менеджером пакетов dnf (который заменил yum), можете установить parted из базового репозитория командой:
Или в Debian/Ubuntu:
Чтобы проверить версию утилиты, выполните команду:
Чтобы попасть в саму оболочку, введите:
Удаление раздела с помощью parted
Если вам требуется удалить раздел на диске, вы можете использовать команду rm в оболочке parted:
Эта команду удалит раздел с номером 1:
Будьте осторожны в использовании данной команды, так как она не требует подтверждение удаления.
Как расширить или уменьшить размер раздела диска с помощью parted
Чтобы расширить или уменьшить размер раздела в partedиспользуется субкоманда resizepart Можно изменить размер раздела в интерактивном режиме. В оболочке parted введите команду:
Система запросит номер раздела (берется из вывода команды print) и конечный размер раздела. В этом примере размер разделе будет увеличен с 5 до 10 Гб:
Сначала увеличьте размер раздела, а потом растяните файловую систему на нем. Если вы уменьшаете размер раздела – сначала нужно сжать размер файловой системы, и только после этого уменьшать размер раздела. Иначе потеряете данные.
Для уменьшения размер файловой системы используются следующие команды. Для файловых систем ext2/3/4 :
resize2fs /dev/sdab size
btrfs filesystem resize /dev/sdab size
Изменять флаг раздела в parted тоже возможно, вы можете установить один из нужных вам:
Например сделаем раздел загрузочным:
LVM: создание файловой системы, монтирование логического тома
Чтобы создать файловую систему на логическом томе, воспользуйтесь утилитой mkfs:
Создадим файловую систему ext4 на LVM томе:
Файловая система была создана без ошибок.
Теперь создадим тестовую директорию и примонтируем логический том к данной директории:
Как видите, все прошло без ошибок и теперь директория /var/www/home существует как отдельный раздел.
Чтобы логический том монтировался при загрузке системы, нужно добавить его в fstab и назначить директорию для монтирования.
Откроем файл:
nano /etc/fstab
И добавим в него следующую информацию:
После чего примонтировать том можно будет через mount -a:
Чтобы проверить общую информацию по дискам, разделам и томам, введите команду lsblk:
Как видим, наш созданный том отображается, и указана директория к которой он примонтирован.
Команда lvmdiskscan позволяет просканировать доступные диски, показывает их размер и принадлежность к LVM.
Установка утилиты lvm2
Чтобы начать работу с LVM, нужно установить утилиту lvm2. Выполним следующие команды:
apt-get install lvm2 — для Ubuntu, Mint, Debian
yum install lvm2 – для Centos, Red-Hat, Fedora
В разных версиях Linux отличается только способ установки утилиты lvm2 (установка через yum/dnf или apt-get), дальнейшие команды для работы с LVM, одинаковы.
Уменьшение LVM томов
LVM позволяют уменьшать размер тома. Но для безопасности умеьшения размера раздела его нужно отключить.
Отмонтируем том от директории:
Выполним проверку диска:
e2fsck -fy /dev/test/test1
Уменьшим раздел файловой системы на 4 Гб:
Теперь уменьшим размер самого LVM тома:
lvreduce -L-4G /dev/test/test1
После чего, нужно примонтировать том обратно и проверить текущий размер:
Как видим, размер уменьшился до 4 Гб.
2. Cfdisk — работа с разделами диска.
2.1. Создание раздела на новом диске.
Запустить cfdisk можно одноименной командой, с указанием имени дискового устройства в качестве аргумента:
Если аргумент в командной строке опущен — по умолчанию команда будет исполнена для первого физического диска машины.
В случае успешного запуска нас будет приветствовать экран:
Приступим к созданию раздела. Нажимаем на New, создать раздел.
На вопрос: «Сколько будем делать по размеру раздел?», отвечаем вводом размера или пропуском (всё использует) и нажимаем клавишу Enter.
Выбираем Primary (основной).
Получаем макет готового раздела на весь физический диск:
Нажимаем Bootable (если нужно, чтобы он был загружаемый).
Анкета диска дополнится строкой:
Если уверены, что всё сделано правильно — записываем изменения, нажимаем Write.
И печатаем руками ответ yes.
Об успехе операции нас известит надпись «The partition table has been altered».
Всё, разделы созданы, выходим из программы, выбирая Quit.
Таким образом, все происходит почти также, как в fdisk . Это и не удивительно: cfdisk по сути лишь интерфейсная для fdisk оболочка.
Хотя cfdisk несколько менее гибок: например, раздел в середине неразбитого дискового пространства создать нельзя.
2.2. Если на диске «битый» раздел?
К примеру, таблица разделов на флешке повреждена настолько, что проще всё снести и создать заново — тогда делаем так:
Параметр -z создаёт нулевую таблицу разделов, и позволяет сразу начать формировать новую.
2.3. Переключение утилиты на английский язык.
Некоторое неудобство возникает при работе с cfdisk при использовании русской юникодовской системной локали (ru_RU.UTF-8).
Во-вторых, даже при сборке с поддержкой UTF-8 буквенные сокращения команд меню иногда отказываются работать.
И в-третьих, если при англоязычном интерфейсе очевидно, что таким сокращением является первый символ соответствующего пункта меню, в интерфейсе русскоязычном эта мнемоника теряется.
Так что cfdisk целесообразно использовать в англоязычном варианте. Что достигается просто — принудительным определением локали администратора как C или POSIX (что эквивалентно). Это можно сделать или в командной строке, или в профильном файле командной оболочки root’а, строкой вида (для bash):
Последнее предпочтительней: локали, отличные от POSIX , не полезны при ряде административных действий.
Полноты картины ради замечу, что cfdisk можно запустить и в интерактивном режиме, однако, его мало кто использует.
Когда на сервере с Asterisk заканчивается свободное место, например из-за хранящихся записей разговоров, возникает необходимость расширения дискового пространства, подключения новых дисков и их разметки. Для разметки дисков можно использовать утилиты fdisk и parted. Утилита Fdisk Fdisk – утилита для работы с таблицей разделов. Fdisk может создавать разделы объемом до 2Тб. Для создания разделов большего размера […]
Когда на сервере с Asterisk заканчивается свободное место, например из-за хранящихся записей разговоров, возникает необходимость расширения дискового пространства, подключения новых дисков и их разметки. Для разметки дисков можно использовать утилиты fdisk и parted.
Утилита Fdisk
Fdisk – утилита для работы с таблицей разделов. Fdisk может создавать разделы объемом до 2Тб. Для создания разделов большего размера в Linux системах используется утилита parted.
Основные команды, которые доступны в консоли утилиты fdisk:
n-создание нового раздела
d — удаление существующего раздела
p-вывод таблицы разделов
w-запись изменений в таблицу разделов
q-выход из утилиты fdisk
Для создания раздела на диске, необходимо:
- Определить его название, полученное в системе. Просмотреть информацию по дискам можно командами:
lsblk ( lsblk –f выведет информацию также о файловой системе )
fdisk -l
Просмотр информации по дискам утилитой fdisk
- Запустить утилиту fdisk, выбрав этот диск, например если подключенный диск отображается как /dev/sdb:
fdisk /dev/sdb
- Выбрать n – создание нового раздела
- Выбрать тип раздела (extended или primary) и его номер.
- Указать номер первого блока, указать последний блок — размер раздела или номер последнего блока.
- Для записи изменений ввести w.
Создание нового раздела, занимающего весь объем диска, утилитой fdisk
Просмотр параметров файловой системы утилитой tune2fs
Если раздел использовался ранее, перед форматированием необходимо закрыть все процессы, использующие его и размонтировать.
Посмотреть pid процессов, использующих раздел, можно командой
lsof | grep /dev/раздел — /dev/раздел – имя раздела(устройства)
kill pid — pid идентификатор процесса(число)
umount /dev/раздел
Также (если диск не SSD), можно выполнить низкоуровневое форматирование, заполнив диск нулевыми байтами. При этом исправляются софтовые бэд-блоки появившиеся во время эксплуатации диска (некорректно или медленно работающие секторы на диске, причиной появления которых не являлись физические причины – царапины, трещины и т.д.). Кроме этого, низкоуровневое форматирование – удаление данных без возможности их восстановления т.к. при обычном (быстром) форматировании происходит только очистка оглавления. Низкоуровневое форматирование – процесс, занимающий длительное время (в зависимости от размера диска).
Низкоуровневое форматирование утилитой dd
Отформатировать можно утилитой mke2fs:
mke2fs /dev/раздел — форматирование в файловую систему ext2
mkfs.ext3 /dev/раздел или mke2fs –j /dev/раздел — форматирование в ext3
mkfs.ext4 /dev/раздел — форматирование в ext4
mkfs.vfat /dev/раздел- форматирование в fat
mkfs.reiserfs /dev/раздел- форматирование в ReiserFS
mkfs.ntfs /dev/раздел- форматирование в NTFS
Также, можно передать необязательные параметры в mke2fs.
— m — процент блоков файловой системы, зарезервированных для пользователя root. По умолчанию-5%.
— b — размер блока, указанный в байтах. Допустимые значения: 1024, 2048 и 4096 байт на блок.
Форматирование файловой системы утилитой mke2fs
Проверить тип файловой системы, созданной на каком-либо разделе можно утилитой blkid, которая также выводит UUID(уникальный идентификатор диска):
Просмотр uui раздела и типа файловой системы утилитой blkid
После создания раздела и форматирования его можно смонтировать. Сначала создайте каталог, в котором должен быть смонтирован раздел.
mount /dev/sdd1 /mnt/asterisk/monitor/
Чтобы автоматически монтировать файловую систему после перезагрузки, добавьте запись в/etc /fstab
Первое поле (UUID=…) – идентификатор раздела, который можно посмотреть утилитой blkid.
Второе (/mnt/asterisk/monitor/) – точка монтирования раздела
Третье (ext4) – тип файловой системы
Четвертое (defaults) — опции монтировании в fstab. Опция defaults — использование параметров по-умолчанию: exec, auto, rw, nouser, async, nosuid, atime. Разрешить запуск исполняемых файлов, установить права на чтение и запись, обычным пользователям запретить подключать/отключать устройство, включение опции асинхронного ввода/вывода, производить запись времени последнего доступа к файлу, заблокировать работу SUID и SGID битов для устройства.
Пятое поле — необходимость создавать резервные копии раздела утилите dump.
0 – не создавать резервные копии.
1 – разрешить резервные копии.
Шестое — необходимость проверки файловой системы утилитой fsck
0 – раздел не будет проверяться.
1 –будет проверяться в первую очередь.
2 –будет проверяться после раздела со значением 1.
Содержимое файла /etc/fstab
Parted – утилита, работающая с таблицей разделов. Утилита parted может создавать разделы объемом более 2 Тб.
Чтобы запустить parted, выполните от root команду parted /dev/sda, где /dev/sda — устройство, которое вы хотите разметить.
Список команд parted.
check minor-num Выполняет простую проверку файловой системы
cp from to Копирует файловую систему из одного раздела в другой, вмето from и to указываются младшие номера разделов
help Выводит список доступных команд
mklabel label Назначает метку диска для раздела
mkfs minor-num file-system-type Создаёт файловую систему типа file-system-type
mkpart part-type fs-type start-mb end-mb Создает раздел, не создавая новую файловую систему
mkpartfs part-type fs-type start-mb end-mb Создает раздел и создаёт указанную файловую систему
move minor-num start-mb end-mb Перемещает раздел
name minor-num name Назначает имя раздела (только для меток диска Mac и PC98)
print Вывести таблицу разделов для выбранного диска
quit Завершает работу parted
rescue start-mb end-mb Восстанавливает потерянный раздел с start-mb на end-mb
resize minor-num start-mb end-mb Изменяет размер раздела с start-mb на end-mb
rm minor-num Удаляет раздел
select device Выбирает другое устройство для настройки, например select /dev/sdd1 — выбрать диск sdd1
set minor-num flag state Устанавливает флаг для раздела; state может иметь значение «on» или «off»
Добавление диска объемом более 2 Тб в OS CentOS/Red Hat/Fedora
Для разметки диска объемом более 2 Тб с помощью parted необходимо сделать следующее:
- Запустить parted для работы с диском, например, если это диск /sdd:
- Записать метку диска GPT:
- Создать первичный раздел, который занимает весь объем жесткого диска, для 3Тб можно командами:
Где ext4 – файловая система (необязательный параметр, по умолчанию создается файловая система ext2). Начиная с версии 3, parted не создает файловую систему.
При использовании последнего варианта для создания раздела mkpart primary 0% 100% утилита parted автоматически определит отступ раздела. Этот параметр влияет на выравнивание раздела. Несоответствие между физического и логического распределения данных может привести к снижению производительности системы и сокращению срока службы оборудования. Отступ должен быть кратен размеру блока в файловой системе. Посмотреть с какого сектора начинается раздел можно, если установить размерность диска в секторах и вывести таблицу разделов:
(parted) unit s
(parted) print
Содержимое файла /etc/fstab
Далее необходимо выполнить аналогичные действия, как и при использовании утилиты fdisk: если файловая система не была создана с помощью parted – если требуется, запустить низкоуровневое форматирование, создать файловую систему и смонтировать раздел в нужную папку.
Форматирование диска более 2Тб в ext4
После переноса данных (записей разговоров) на новый диск, который будет смонтирован, например в /mnt/asterisk/monitor/, на старом диске можно создать символическую ссылку на новый раздел, где будут храниться записи, символическая ссылка создается командой:
Познакомьтесь с возможностями Asterisk. Найдите инструменты, которые помогут вашей компании развиваться.
11.12.2020
VyacheslavK
CentOS, Linux
комментариев 6
В этой статье мы рассмотрим, как добавить новый диск на сервер с Linux CentOS: как обнаружить новый диск, разбить его на разделы, отформатировать и смонтировать. В этом примере мы добавляем новый диск на физический Linux сервер (как добавить новый диск виртуальную машину KVM мы рассматривали ранее).
Создание зеркальных томов LVM
LVM позволяет создать зеркальные тома для повышения отказоустойчивости хранения данных. В LVM зеркале данные одновременно хранятся на двух (или более) физических дисках (подобие RAID-1). Процедура создания зеркального тома в LVM.
- Инициализация дисков: pvcreate /dev/sd
- Создаем LVM группу: vgcreate mirror1 /dev/sd
- Создадим зеркальный LVM том: lvcreate -L 5g -m1 -n lvMirr1 VGmirror1
Инструменты LVM очень удобны для работы, с помощью них можно легко управлять томами, нарезать их на нужные вам размеры и с легкостью использовать под свои нужды. В данной статье я постарался затронуть все основные моменты в работе с LVM.
Добавление нового диска, разметка, создание разделов в Linux
Обычно для работы с дисками я использую утилиту fdisk. Но так как она позволяет создавать разделы максимального размера в 2ТБ, в данной инструкции мы будем использовать утилиту parted.
Parted – свободный редактор дисковых разделов, предназначенный для создания и удаления разделов. Также parted может использовать для копирования разделов между дисками.
По умолчанию parted уже установлен в CentOS Linux. Если у вас его по каким-то причинам нет, вы можете установить его с помощью команды пакетного менеджера:
После подключения физического или виртуального диска к серверу, нужно проверить, определился ли он:
Этак команда выведет информацию о дисках в системе.
В моем случае это диск /dev/sda размером 5.5 Тб. Также вы можете вывести список дисков с помощью команды lsblk:
Подробную информацию о физическом диске, его характеристиках можно получить с помощью утилит hdparm, smartctl и lshw. Об этом в статье по ссылке.
Теперь нужно выбрать новый диск в контексте утилиты parted:
В контексте parted выполните команду print , чтобы вывести информацию о диске и его разделах (если они имеются):
Если дисков несколько, можно переключать между ними в оболочке parted, используя команду select:
Нажмите Enter и укажите название диска.
Прежде чем создать разделы, нужно создать таблицу разделов для диска. Мы будем использовать таблицу разделов GPT:
(parted) mklabel GPT
Система предупредит, что все данные на диске будут уничтожены. Подтвердите это.
Для создания нового раздела на диске, используется команда mkpart:
Укаэите имя раздела, файловую систему, первый и последний сектор раздела (в Мб). Так как у нас нет ни одного раздела, мы начинаем с 1 и заканчиваем 300000. Таким образом будет создан новый раздел размером 300 Гб:
Раздел создан, можно вывести информацию о нем с помощью команды print.
Мы создали раздел test, размером 300Гб и файловой системой ext4. Чтобы выйти с оболочки parted, наберите quit.
Несмотря на то, что при создании раздела мы выбрали файловую систему ext4, нужно отформатировать раздел, чтобы он определялся как полноценный раздел диска с UUID:
Если раздел не форматировать, ваш раздел будет определяться так:
У него не будет иметь UUID с помощью которого мы в дальнейшем будем монтировать данный раздел.
Удалить созданный раздел вы можете с помощью команды rm. Войдите в оболочку parted нужного диска:
И удалите нужный раздел:
В моем случае раздел был один (если у вас их несколько, укажите нужный).
Монтирование нового диска, добавление в fstab
После того как на диске создали раздел, можно смонтировать его. Создадим новую директорию на сервере:
Самвый простой способ примонтировать раздел к директории — через раздел:
Также раздел можно примонтировать через UUID раздела:
UUID раздела можно получить с помощью команды blkid:
Но раздел будет смонтирован только до перезагрузки сервера. При следующей загрузке раздел опять придется монтировать вручную. Для автомонтирования добавьте строку для нового раздела в файл /etc/fstab:
UUID="3f5e32ac-ba1a-4167-8b06-c8ee35bf8071" /test_disk ext4 defaults 1 2
Сохраните файл и примонтируйте все разделы:
Для удаления монтирования, используйте команду:
Проверим, что раздел доступен. Создадим в нем файл:
Мы создали файл с нулями размером 40Гб. С помощью следующей команды можно вывести занятое место на разделе:
Итак, мы рассмотрели, как подключить новый диск к Linux серверу, создать на нем разделы и смонтировать.
Предыдущая статья Следующая статья
Установка и настройка GLPI и FusionInventory, инвентаризация ИТ инфраструктуры
20.02.2021
VyacheslavK
CentOS, Linux, Ubuntu
Один комментарий
Parted – (сокращенно от PARTition EDitor) редактор дисковых разделов для Linux, предназначенный для управления разметкой, создания, удаления и изменения размеров разделов диска. Утилита проста в использовании и доступна для всех дистрибутивов Unix/Linux систем. Кроме того, доступна GUI версия — Gparted. В данной статье, мы покажем, как управлять разделами диска с помощью parted на примере CentOS 8 (в других дистрибутивах Linux все работает аналогично). В Windows аналогом команды parted является diskpart .
Читайте также: