Сделать диск активным linux

Обновлено: 07.07.2024

В статье, мы разберем как работать в операционной системе Linux с HDD, Logical Volume и все что с этим связанно. А также рассмотрим утилиты для работы с HDD. Разберем, что такое LVM.

ВВОДНАЯ

Те, кто читал пред идущие стати должны понимать, что в операционной системе есть определенные папки. Это стандартный набор папок. Сейчас обратим внимание на те папки, в которые могут быть смонтированы отдельные разделы. Это значит, что если мы видим в корневом разделе какую-либо папку, то не факт, что данная папка находится на том же жестком диске, что и соседние папки или даже сама корневая файловая система. Это могут быть отдельные жесткие диски или разделы жестких дисков, которые смонтированы в корневую файловую систему. Самый большой раздел - это сама корневая файловая система, обозначается символом " / " . Следующий раздел, который обычно находится отдельно - это " /boot ", загрузочный раздел, обычно он мегабайт на 100. Там хранятся файлы необходимые для загрузки операционной системы и само ядро. Можно данную директорию оставить на корневом разделе, но если у нас большой жесткий диск хотя бы на 1 ТБ, то старые диски его могут не увидеть при загрузке, поэтому хороший тон создавать отдельный раздел на жестком диске размером от 100 МБ.

Директория " /home " - это домашние папки пользователей. Это некий аналог папки в операционной системе Windows, такой как Documents and Settings или c:\users. Это директория, где хранятся все папки пользователя. Его можно монтировать, как сетевую папку. Например, если у вас используются какие-нибудь перемещаемые профили. Пользователь работает на нескольких компьютерах и ему необходимо, что бы везде был одинаковый рабочий стол. Вот в таком случае было бы правильно хранить его домашнюю папку где-нибудь на сервере и просто ее монтировать как сетевую папку, предоставляя доступ к файлам.

Следующая папка, которая находится в корне - это " /root " она является домашней папкой суперпользователя, очень важная папка поэтому она хранится отдельно.

Папка " /etc " - в ней находится конфигурация нашей операционной системы и ее компонент. Так же бывает, что она находится на отдельных дисковых разделах. Мы конечно сами определяем при установке как разбить жесткий диск, но, если при установке мы ставим галочку в установщике, чтобы он автоматически разбил жесткий диск и создал разделы так, как он считает нужным.

Директория " /opt " в данной директории находится программное обеспечение от третьих поставщиков. Некоторые серверные дистрибутивы тоже хранят ее на отдельном логическом разделе.

Директория " /var " здесь хранятся все часто меняющиеся данные. Например, логи различного программного обеспечения или изменяющиеся программные данные. Возможно для этой директории имеет смысл использовать быстрые диски, например, SSD. Потому, что к ним будет идти очень частое обращение программного обеспечения.

Директория " /usr " в ней находятся все установленные пакеты программ, документация и исходный код ядра. Чаще всего данная директория смонтирована вообще в режиме "только чтения" и в принципе она может быть расположена вообще на каком ни будь медленном диске или папке в сети.

Директория " /tmp " предназначена для хранения временных файлов. Важной особенностью данной папки является то, что хранящиеся файлы в ней, будут удалены в случае перезагрузки машины. Т.е при перезагрузки данная папка очищается автоматически. Существует еще один отдельный раздел подкачки swap. Обычно операционная система windows использует файл подкачки, то Linux чаще всего использует раздел подкачки, хотя может использовать и файл. Данный раздел не монтируется в нашу файловую систему, он просто существует отдельно.

КАК ЭТО ВЫГЛЯДИТ В КОНСОЛИ.

Переходим в корневую директорию cd / . Вводим команду ls и видим, как все директории у нас отображаются. Все те папки о которых шла речь мы видим находятся в корневой директории, кроме раздела swap. Для того, чтобы посмотреть, что и куда смонтировано, то необходимо посмотреть специальный конфигурационный файл cat /etc/fstab

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

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

Опции и синтаксис 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 байт:

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

На этом создание разделов 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 если надо разметить диск в терминале. Последнюю мы разберем в одной из следующих статей.

Нет похожих записей


Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.

Это очень полезный инструмент для выделения пространства для новых разделов, организации пространства на новых дисках, реорганизации старых дисков, а также копирования или перемещения данных на новых дисков. Он позволяет создавать до четырех первичных разделов и некоторое количество логических (расширенных) разделов в зависимости от размера жесткого диска в вашей системе.

Мы рассмотрим ряд базовых команд fdisk для управления таблицей разделов в Linux. Для запуска команды fdisk нужно обладать root-привилегиями (или использовать sudo), иначе будет выведена ошибка “command not found”.

Просмотр всех разделов диска


Просмотр разделов заданного диска

Для просмотра всех разделов заданного жесткого диска укажите опцию -l с именем устройства. Например, следующая команда отобразит все разделы диска /dev/sda :


Командный режим

Чтобы войти в командный режим, просто введите fdisk с именем жёсткого диска, например, /dev/sda , как показано ниже:


Для получения списка команд, которые fdisk может выполнить на диске, введите “m”. Рассмотрим значение этих команд.

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

Допустим, нам нужно удалить определенный раздел, например, /dev/sda4, с определенного жёсткого диска, например, /dev/sda. Сначала нужно зайти в командный режим:

Затем введите d для удаления раздела. После этого у вас будет запрошен номер раздела для удаления с диска /dev/xvdb. Для удаления раздела номер 2 (то есть, /dev/xvdb2) нужно ввести соответствующую цифру, 2. Затем нужно ввести команду w, чтобы записать таблицу на диск и выйти.



Как мы видим раздел /dev/xvdb2 был удален.

Внимание : будьте осторожны с этой командой, потому что удаление раздела полностью уничтожит все данные на нем.

Создание нового раздела

Войдите в командный режим и введите “n”:


При создании нового раздела нужно выбрать одну из двух опций: extended для логического раздела или primary для первичного и нажать, соответственно, e или p . Затем потребуется ввести номера первого и последнего цилиндра раздела (либо смещение в цилиндрах или размер). Лучше всего оставить заданное по умолчанию значение первого цилиндра и ввести нужный размер раздела, например, “+5000M”, что означает размер 5000 мегабайт. После создания раздела нужно нажать w для сохранения изменений в таблице разделов.


Теперь мы видим на диске /dev/xvdb два раздела.

Также при создании раздела можно указать размер раздела с помощью опции +size. Т.е если нужно создать раздел размером 2 Гб, в качестве последнего сектора можно указать +2G


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

После создания нового раздела не забудьте отформатировать его командой mkfs. Для этого выполните следующую команду:

где в ключе -t указываем тип файловой системы в которую мы хотим отформатировать наш раздел.


Проверка размера раздела

Когда раздел отформатирован, проверьте его размер при помощи опции -s (размер отображается в блоках). Так можно узнать размер любого заданного устройства:


Исправление нумерации в таблице разделов

Если вы удалили логический раздел, возможны ошибки вида ‘partition out of order‘ (нарушение порядка разделов) или ‘Partition table entries are not in disk order‘ (записи таблицы разделов не соответствуют порядку дисков). Допустим у нас диск со следующими разделами


Флаг загрузочного раздела

Чтобы включить или отключить на заданном разделе флаг загрузочного раздела (отображается символом ‘*’ в таблице разделов), нужно выполнить следующие действия.

fdisk -l /dev/xvda

Вы увидите на диске /dev/sda1 флаг загрузочного раздела (звёздочка ‘*’)



Заключение

Мы рассмотрели базовые возможности команды fdisk, необходимые для работы с разделами. Более подробную информацию, в том числе об экспертных командах, доступ к которым осуществляется командой x , можно получить на соответствующей man-странице ( man fdisk ).

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

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

Активация диска в Linux

Предположим вы подключили новый диск, на котором ещё нет файловой системы. Система его не видит и нам нужно выполнить команды для его подключения.

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

При подключении нового диска нам нужно:

  • разметить его на разделы
  • отформатировать каждый раздел для создания файловой системы
  • смонтировать диск для возможности записи и чтения данных
  • настроить автоматическое монтирование при включении компьютера

Как узнать имена дисков, как просмотреть все диски в системе

Начать нужно с того, чтобы узнать имя диска, который мы будем изменять. В Linux совсем непохожая на Windows система обозначения дисков. Вместо привычных дисков C, D, E и так далее, в Linux диски это устройства в папке /dev/. В dev вообще все возможные устройства, даже весьма экзотические, не существующие в Windows.

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


Как видно из скриншота, имеется диск /dev/nvme0n1. Затем перечислены два устройства /dev/nvme0n1p1 и /dev/nvme0n1p2. По совпадающему части названия nvme0n1 можно понять, что это разделы, на которые разделён диск /dev/nvme0n1.

Также имеется диск /dev/sda, который не разделён ни на какие разделы — именно его я и буду подключать.

Разметка дисков (разделение на разделы) в Linux

В консоли диск можно разбить на разделы командой cfdisk. После неё укажите имя диска, с которым вы хотите выполнить действия:


Диск может быть GPT или MBR (показывается как dos). Вы без труда найдёте множество информации об этих таблицах разделов в Интернете. Только отмечу, что GPT является более современной и имеет больше возможностей. Поэтому если не нужно работать со старым железом, которое понимает только MBR, то выбираем GPT.

Для создания диска выберите Новый:


Введите его размер.

Если нужно, поменяйте тип раздела:


Затем переместитесь вниз на свободное место и повторяйте эти действия по созданию разделов. Когда закончите, выберите Запись.

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

Для форматирования в ext4:

Для форматирования в ext3:

Для форматирования в ext2:

Для форматирования в FAT32:

Мой пример (я не стал разбивать диск на разделы):


Кстати, если вы хотите отформатировать раздел, который уже используете, то его нужно сначала отмонтировать (об этом дальше).

Монтирование и размонтирование дисков

С дисками в /dev/ нельзя работать напрямую, то есть нельзя на них записывать файлы или копировать с них файлы. Для работы с ними их нужно смонтировать. Это делается командой mount.

Диск подключается к точке монтирования и уже в этой папке можно работать с содержимом диска.

Эта концепция может показаться непривычной пользователям Windows, но это очень удобно! Диск можно смонтировать в любую папку. Например, домашняя папка может быть на другом диске — удобно при переустановке системы — данные не нужно копировать в безопасное место, поскольку они уже на другом диске.

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

Допустим, я хочу, чтобы новый диск был подключён (смонтирован) к папке /mnt/disk_d. Название можно выбрать любое и точка монтирования необязательно должна быть в директории /mnt/ - можно сделать в домашней папке или в любой другой.

Начинаем с создания директории, в которую будет смонтирован диск:

Разрешаем доступ всем в этот диск, чтобы обычный пользователь также мог смотреть и записывать туда файлы:

На самом деле, права доступа можно настроить более тонко — без полного разрешения для всех.

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

Автоматическое монтирование диска при загрузке Linux

Диски для монтирования при запуске Linux прописаны в файле /etc/fstab.

Допустим, я хочу при загрузке монтировать диск /dev/sda в директорию /mnt/disk_d/. При этом я хочу чтобы диск был доступен для чтения и записи пользователем. Тогда я создаю каталог — точку монтирования:

Открываю файл /etc/fstab:

и дописываю туда следующую строчку:

В этой строке вам нужно заменить

  • /dev/sda — на диск, который вы желаете смонтировать
  • /mnt/disk_d — на вашу точку монтирования, которую вы выбрали для своего диска.
  • ext4 — на файловую систему вашего диска

Если вы не уверены в файловой системе или её обозначении, то выполните команду:

В результате диск будет автоматически монтироваться при каждом старте системы.

Чтобы ваш пользователь имел доступ к этой папке без необходимости повышать свои привилегии, выполните команду:

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

Обратите внимание, что если вы что-то неправильно сделали в файле /etc/fsta, то система не сможет загрузиться в графический интерфейс и вам придётся всё исправлять из консоли. Ссылка на дополнительную инструкцию в конце этой статьи.

Для проверки записей в файле /etc/fstab используйте команду


На скриншоте можно увидеть, что диск с UUID равным 26FC3023FC2FEC2D является недоступным (unreachable). Это может означать, что запись в файле /etc/fstab имеет ошибку. Но в данном случае диск с UUID=26FC3023FC2FEC2D — это съёмный диск, для его монтирования указана опция nofail (не вызывать фатальную ошибку, даже если диск отсутствует), поэтому предупреждение можно проигнорировать.

Для вывода более подробной информации добавьте опцию --verbose:


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

  • /mnt/disk_e — точка монтирования
  • [ ] target exists — целевая папка (точка монтирования), существуют, то есть директория /mnt/disk_e имеется в системе
  • [ ] VFS options: rw — найдена такая опция монтирования как rw, то есть диск монтируется для чтения и для записи. VFS — это опции ядра, системных вызовов. Эти опции одинаковы для всех файловых систем.
  • [ ] FS options: utf8 — найдена опция, специфичная для данной файловой системы. Этой опцией является utf8, то есть для преобразования имён файлов будет использоваться кодировка UTF-8.
  • [ ] userspace options: noauto,nofail — здесь перечислены опции пользовательского пространства. Опция noauto означает не монтировать автоматически, а опция nofail означает не сообщает об ошибках для этого устройства, если оно не существует — эта опция важна для съёмных носителей и сетевых дисков, которые могут отсутствовать во время загрузки компьютера.

Подключение съёмного носителя (флешки, внешнего диска) в Linux

Между прочим, многие дистрибутивы Linux при подключении USB флешки или внешнего диска автоматически их монтируют. Автоматическое монтирование обычно является функцией окружения рабочего стола. То есть на одном и том же дистрибутиве Linux, но с разными рабочими столами (версии Linux Mint как пример) автомонтирование может иметься или отсутствовать.

Если этого не произошло, значит нужно смонтировать вручную. Этот процесс ничем не отличается от обычного монтирования дисков: также создайте точку монтирования и используйте команду mount.

Съёмные носители можно монтировать через /etc/fstab, для этого даже есть специальная опция nofail — игнорировать ошибки, если диск отсутствует.

Как просмотреть все диски и точки монтирования

Для этого используйте уже знакомую нам команду:


Как удалить разделы диска

Если вы хотите удалить всё содержимое диска, в том числе его разбивку на разделы, то это делается так:

Откройте диск в gdisk:

Для перехода в экспертный режим там введите

Затем для удаления GPT введите

Дважды согласитесь, чтобы полностью очистить диск.

Перемонтирование диска с правами записи

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

В ней /dev/sdb1 замените на имя вашего раздела.

Если вы столкнулись с ошибкой:

То нужно выполнить команду (замените /dev/sdb1 на ваш раздел):

После этого перемонтируйте диск.

Обратите внимание, что если вы монтируете диск с файловой системой NTFS, то у вас должен быть установлен пакет ntfs-3g, иначе что бы вы не делали, диск будет только для чтения.

Заключение

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

Ещё несколько советов и проблемных случаев рассмотрено в статье «Работа с дисками в BlackArch (монтирование, решение проблем)» - эта статья подходит для всех дистрибутивов, не только BlackArch.

Читайте также: