- Как создавать разделы диска в Linux
- Вариант 1: разбить диск на разделы с помощью команды parted
- Шаг 1. Список разделов
- Шаг 2: Откройте диск для хранения
- Шаг 3: Создайте таблицу разделов
- Шаг 4: проверьте таблицу
- Шаг 5: Создайте раздел
- Вариант 2: разбить диск на разделы с помощью команды fdisk
- Шаг 1. Список существующих разделов
- Шаг 2: Выберите диск для хранения
- Шаг 3: Создайте новый раздел
- Шаг 4: запись на диск
- Отформатируйте раздел
- Смонтировать раздел
- Разбивка дисков в Linux для самых маленьких
Как создавать разделы диска в Linux
Создание разделов диска позволяет разделить жесткий диск на несколько разделов, которые действуют независимо.
В Linux пользователи должны структурировать устройства хранения (USB и жесткие диски) перед их использованием. Разбиение на разделы также полезно, когда вы устанавливаете несколько операционных систем на одном компьютере.
В этом пошаговом руководстве вы узнаете, как создать раздел с помощью команды Linux parted или fdisk .
Вариант 1: разбить диск на разделы с помощью команды parted
Выполните следующие действия, чтобы разбить диск в Linux с помощью команды parted .
Шаг 1. Список разделов
Перед созданием раздела составьте список доступных запоминающих устройств и разделов. Это действие помогает определить устройство хранения, которое вы хотите разбить на разделы.
Выполните следующую команду с sudo, чтобы вывести список устройств хранения и разделов:
Терминал распечатывает доступные устройства хранения с информацией о:
- Model — Модель запоминающего устройства.
- Disk — Имя и размер диска.
- Sector size — логический и физический размер памяти. Не путать с доступным дисковым пространством.
- Partition Table — тип таблицы разделов (msdos, gpt, aix, amiga, bsd, dvh, mac, pc98, sun и loop).
- Disk Flags — разделы с информацией о размере, типе, файловой системе и флагах.
- Primary (Основной) — содержит файлы операционной системы. Можно создать только четыре основных раздела.
- Extended (Расширенный) — особый тип раздела, в котором можно создать более четырех основных разделов.
- Logical (Логический) — Раздел, созданный внутри расширенного раздела.
В нашем примере есть два устройства хранения — /dev/sda и /dev/sdb
Примечание. Первый диск хранения ( dev/sda или dev/vda ) содержит операционную систему. Создание раздела на этом диске может сделать вашу систему не загружаемой. Создавайте разделы только на дополнительных дисках ( dev/sdb , dev/sdc , dev/vdb или dev/vdc ).
Шаг 2: Откройте диск для хранения
Откройте диск хранения, который вы собираетесь разделить, выполнив следующую команду:
Всегда указывайте запоминающее устройство. Если вы не укажете имя диска, он будет выбран случайным образом. Чтобы сменить диск на dev/sdb , выполните:
Шаг 3: Создайте таблицу разделов
Прежде чем разбивать диск, создайте таблицу разделов. Таблица разделов расположена в начале жесткого диска и хранит данные о размере и расположении каждого раздела.
Типы таблиц разделов: aix, amiga, bsd, dvh, gpt, mac, ms-dos, pc98, sun и loop.
Чтобы создать таблицу разделов, введите следующее:
mklabel [partition_table_type]
Например, чтобы создать таблицу разделов gpt, выполните следующую команду:
Введите Yes , чтобы выполнить:
Примечание. Два наиболее часто используемых типа таблиц разделов — это gpt и msdos. msdos поддерживает до шестнадцати разделов и форматирует до 16 ТБ, а gpt форматирует до 9,4 ЗБ и поддерживает до 128 разделов.
Шаг 4: проверьте таблицу
Запустите команду print , чтобы просмотреть таблицу разделов. На выходе отображается информация об устройстве хранения:
Примечание. Запустите команду help mkpart , чтобы получить дополнительную справку о том, как создать новый раздел.
Шаг 5: Создайте раздел
Давайте создадим новый раздел размером 1854 Мбайт, используя файловую систему ext4. Назначенное начало диска должно быть 1 МБ, а конец диска — 1855 МБ.
Чтобы создать новый раздел, введите следующее:
mkpart primary ext4 1MB 1855MB
После этого запустите команду print , чтобы просмотреть информацию о вновь созданном разделе. Информация отображается в разделе Disk Flags:
В таблице разделов gpt, тип раздела — это обязательное имя раздела. В нашем примере primary — это имя раздела, а не тип раздела.
Чтобы сохранить свои действия и выйти, введите команду quit . Изменения сохраняются автоматически с помощью этой команды.
Примечание. Сообщение «You may need to update /etc/fstab file» сигнализирует о том, что раздел может быть смонтирован автоматически во время загрузки.
Вариант 2: разбить диск на разделы с помощью команды fdisk
Выполните следующие действия, чтобы разбить диск в Linux с помощью команды fdisk .
Шаг 1. Список существующих разделов
Выполните следующую команду, чтобы вывести список всех существующих разделов:
Вывод содержит информацию о дисках и разделах хранилища:
Шаг 2: Выберите диск для хранения
Выберите диск для хранения, на котором вы хотите создать разделы, выполнив следующую команду:
Диск /dev/sdbstorage открыт:
Шаг 3: Создайте новый раздел
- Запустите команду n , чтобы создать новый раздел.
- Выберите номер раздела, набрав номер по умолчанию (2).
- После этого вас попросят указать начальный и конечный сектор вашего жесткого диска. Лучше всего ввести в этом разделе номер по умолчанию (3622912).
- Последний запрос связан с размером раздела. Вы можете выбрать несколько секторов или установить размер в мегабайтах или гигабайтах. Введите + 2 GB , чтобы установить размер раздела 2 ГБ.
Появится сообщение, подтверждающее создание раздела.
Шаг 4: запись на диск
Система создала раздел, но изменения не записываются на диск.
1. Чтобы записать изменения на диск, выполните команду w :
2. Убедитесь, что раздел создан, выполнив следующую команду:
Как видите, раздел /dev/sdb2 создан.
Отформатируйте раздел
После создания раздела с помощью команды parted или fdisk отформатируйте его перед использованием.
Отформатируйте раздел, выполнив следующую команду:
Смонтировать раздел
Чтобы начать взаимодействие с диском, создайте точку монтирования (mount point) и смонтируйте к ней раздел.
1. Создайте точку монтирования, выполнив следующую команду:
2. После этого смонтируйте раздел, введя:
sudo mount -t auto /dev/sbd1 /mt/sdb1
Терминал не распечатывает вывод, если команды выполнены успешно.
3. Убедитесь, что раздел смонтирован, с помощью команды df hT :
Разбивка дисков в Linux для самых маленьких
У многих начинающих пользователей линукс возникают сомнения, как правильно разбить жесткий диск. Постараюсь немного облегчить муки выбора нашим коллегам.
У нас в распоряжении есть — физическая разбивка дисков на разделы(fdisk, gparted), соф-RAID (mdadm), менеджер логических дисков (LVM), ширование dm-crypt (остальным не стоит забивать голову).
Пути разбивки дисков неисповедимы, поэтому мы начнем с самого простого.
1. Физическая разбивка дисков
Это самый простой, надежный и совместимый «дедовский» метод. Он позволяет четко очертить границы разделов и их взаимное положение на диске.
При разбивке диска можно учесть его физические особенности и получить некоторый прирост производительности. Дело в том, что ближе к краю диска скорость чтения может быть в несколько раз выше, чем ближе к центру. Соответственно, если расположить например /boot(128 мб), swap (memory * 2 or 2.5), /(root) то мы получаем хорошую скорость загрузки и работы с разделом подкачки. Если есть несколько дисков, то можно расположить swap в начале каждого. Но парится со swap есть смысл, если вы работаете с большими объемами данных — linux не использует swap без крайней нужды. (проверьте free -m). Отказываться от использования swap крайне не рекомендуется, так как linux хорошая система, но чудес не бывает. Открыв файл на 1ГБ можно заблокировать систему намертво без возможности разблокирования.
Разбивка диска на большое количество разделов оправдана только, если это делается для какой-то особой цели. В других случаях — достаточно обойтись простейшим / (root) и swap.
Очень часто пользователи отделяют /home от / (root) — это не имеет никакого практического смысла в однопользовательских системах. Обычно, / (root), /var, /home разделяют на серверах, чтобы пользователи со злым умыслом не заполнили логи или свою домашнюю директорию. Кстати, смонтировать /home с noexec можно и не делая отдельного раздела (man mount).
Если вы пользуетесь парралельно windows то я рекомендую использовать FAT32 для разделов с музыкой/фильмами, к которым вы хотите иметь доступ в обоих системах (и ни в коем случае не делать /home или домашнюю папку в FAT32!!). NTFS хорошо поддерживается, но недостаточно, чтобы ей пользоваться каждый день (чтобы снять unclean shutdown который не дает смонтировать раздел- нужно грузить windows), ошибки в файловой системе могут вызывать подвисания и потерю данных (привет жадному Биллу).
Запомните: черезмерная разбивка — корень всех бед. Разбивать диски «особым» образом нужно только под КОНКРЕТНУЮ задачу.
2. Логическая разбивка дисков
Не бойтесь LVM — он не такой страшный. С его помощью можно переразбивать диски, расширять партиции, добавлять физические устройства и расширяться на них, делать теневое копирование, бекап аналогичный «time machine» появился еще примерно в 2002 году. Не бойтесь, делайте бекап и пользуйтесь гибкостью LVM.
Для работы LVM, MD, DM обязательно нужен физический раздел /boot который позволит загрузчику(grub, Lilo etc) скачать минимальный образ системы (initrd) с необходимыми драйверами и конфигами для старта основной системы.
С логической разбивкой все сложнее. Вложенность разделов может быть произвольная.
Например как делается полное шифрование в ubuntu: /boot DM-CRYPT[LVM[/(root) swap]] — физический раздел /boot, затем физический раздел с dm-crypt, в котором находится LVM в свою очередь в котором два логических раздела /(root) и swap.
С вложенностью шифрования и raid можно играться как угодно.
Пример из жизни параноика:
/boot DM-CRYPT[ LVM[ /root DM-CRYPT-random[/tmp] DM-CRYPT-random[/home] DM-CRYPT-random[/var/log] DM-CRYPT-random[swap] ]]
При каждой загрузке /tmp /home /var/log и swap инициализируются с рандомным ключом. Конечно это ставит жирный крест на hibernate но при каждой загрузке- система абсолютно чистая от логов и временных файлов. Вполне сгодится для студентов или любителей побродить по порносайтам.
3. Советы по оптимизации
/boot можно сделать в файловой системе ext2 — она быстрей, чем ext3 и этого будет достаточно.
На активно использующемся разделе можно отключить access time — флаг noatime. Так часто делают на веб-серверах для уменьшения нагрузки на жесткий диск.
Как показала многолетняя практика, не стоит надеяться на надежность простого либо навороченного решения. Стоит использовать самое удобное и делать регулярный rsync на внешний носитель. В таком случае отпрадают вопросы на счет восстановления данных, которые при любом решении (особенно при шифровании) сильно усложняют жизнь. Например беды на шированной партиции при наличии Luks могут вывести систему из строя без возможности восстановления данных. Шифрованные данные более подвержены сильным повреждениям, чем нешифрованные.
(советуйте, добавлю)
В linux можно сделать абсолютно все, что угодно и это будет работать. Главное, руководствоваться здравым смыслом и не брезговать читать man вместо довольно часто вредных и устаревших howto.
Итак, резюмируем:
Для десктопов и ноутбуков оптимальный метод разбивки — полное отсутствие разбивки.
Для тех, кто не любит бекапиться, использовать «сложные методы» вроде LVM. Может подойти вариант:
swap (memory * 2), / (остальное)
Для юзеров убунты достаточно выбрать: Использовать все свободное место под LVM, тогда у вас останется много возможностей «на вырост».
Если разбивать /, /home то вы рано или поздно столкнетесь с нехваткой места на одном из разделов.