Создать файловую систему линукс

Создать файловую систему линукс

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

Общее дерево файлов и каталогов системы Linux формируется из отдельных «ветвей», соответствующих различным физическим носителям. Часто говорят, что оно формируется из отдельных файловых систем. Говорить так позволяет тот факт, что в UNIX нет понятия «форматирования диска» (и команды форматирования), а используется понятие «создание файловой системы». Когда мы получаем новый носитель, например, жесткий диск, мы должны создать на нем файловую систему. То есть каждому носителю ставится в соответствие отдельная файловая система. Чтобы эту файловую систему использовать для записи в нее файлов, надо ее вначале подключить в общее дерево каталогов («смонтировать»). Вот и получается, что можно говорить о монтировании файловых систем или о монтировании носителей (с созданными на них файловыми системами).

Можно еще в виде предисловия отметить, что обычно жесткий диск предварительно разбивается на разделы (особенно современные диски, имеющие емкость, исчисляемую десятками гигабайт). Создание разделов облегчает выполнение резервного копирования, решение задач разграничения полномочий, повышает производительность и ограничивает потенциальный ущерб, наносимый вышедшими из-под контроля программами. Поэтому в дальнейшем будем говорить о создании файловой структуры в одном разделе (диск, не имеющий разделов, можно тоже рассматривать как один раздел).

Еще один момент, существенный в контексте этого раздела, связан с тем, что Linux может работать с разными типами файловых систем. «Родной» файловой системой для него в настоящее время является «вторая расширенная файловая система» (second extended filesystem) ext2fs. Ho в Linux можно работать и с 16-разрядной файловой системой FAT, создаваемой в MS-DOS, и с 32-разрядной FAT32, разработанной для MS Windows 95, и с файловой системой ISO9660, используемой для записи информации на CD-ROM, и с другими типами файловых систем (в число которых пока, правда, не входит NFTS ). То есть, при рассмотрении вопросов создания и монтирования файловых систем надо постоянно помнить о том, что типы файловых систем на разных носителях могут различаться.

Итак, вначале рассмотрим случай, когда требуется создать в каком-то разделе диска файловую систему. Будем предполагать, что создается файловая система типа ext2fs (создание файловых систем других типов — тема для книг, посвященных другим операционным системам). Создание файловой системы типа ext2fs подразумевает создание в данном разделе на диске суперблока, таблицы индексных дескрипторов и совокупности блоков данных. Делается все это все с помощью команды mkfs . В простейшем случае достаточно дать эту команду в следующем формате:

[root]# mkfs -t ext2 /dev/hda5,

где /dev/hda5 надо, естественно, заменить указанием на соответствующее устройство или раздел. Например, если вы хотите создать файловую систему на дискете, то команда примет вид:

[root]# mkfs -t ext2 /dev/fd0

(Можно сказать, что мы «отформатировали дискету», но учтите, что в DOS или Windows такие дискеты не читаются. Для создания под Linux дискет, которые бы читались в DOS или Windows , служат специальные утилиты.)

После выполнения команды mkfs в указанном разделе будет создана файловая система ext2fs (еще раз повторю, что подробнее об этом вы узнаете в гл. 16). В новой файловой системе автоматически создается один каталог с именем lost+found. Он используется в экстренных случаях программой fsck , поэтому не удаляйте его. Для того, чтобы начать работать с новой файловой системой (например, переписать какие-то файлы на новый носитель), необходимо подключить ее в общее дерево каталогов, что делается с помощью команды mount .

В качестве параметров команде mount надо, как минимум, указать устройство и «точку монтирования». Точкой монтирования называется тот каталог в уже существующем и известном системе дереве каталогов, который будет теперь служить корневым каталогом для подключаемой файловой системы. Пример: команда

Читайте также:  Windows 10 pro 10162 pro

[root]# mount /dev/hdb1 /mnt/disk2

подсоединяет файловую систему первого раздела на втором жестком диске к каталогу /mnt/disk2 (этот каталог должен существовать!).

Отметим, что после монтирования файловой системы в каталог /mnt/disk2 прежнее содержимое этого каталога станет для вас недоступно (так же, как информация о прежнем владельце и правах доступа к этому каталогу) до тех пор, пока вы не размонтируете вновь подключенную файловую систему. Прежнее содержимое не уничтожается, а просто становится временно недоступным. Поэтому в качестве точек монтирования лучше использовать пустые каталоги (заранее заготовленные).

В той простейшей форме, которую мы использовали в приведенном выше примере, команда mount будет работать только при условии, что все недостающие ей для выполнения параметры она найдет в файле /etc/fstab. Если же такого файла не существует, или он не содержит необходимых данных, надо применять более полную форму команды mount :

[root]# mount -t type device path

где type задает тип файловой системы, device указывает, на каком устройстве (в каком разделе) она находится, а path задает точку монтирования.

Конфигурационный файл /etc/fstab используется в основном для того, чтобы обеспечить автоматическое монтирование файловых систем в процессе загрузки. Каждая строка этого файла содержит описание одной файловой системы и состоит из 6 полей, разделяемых пробелами (для удобочитаемости поля обычно выравнивают, но делать это не обязательно):

  • имя устройства. В качестве имени может использоваться как имя локального устройства, например, /dev/hda5 , так и путевое имя сетевой файловой системы NFS, например, pc21:/home/jim, что указывает на каталог /home/jim на машине с именем pc21;
  • точка монтирования (полное имя каталога, в который будет монтироваться файловая система);
  • тип файловой системы;
  • опции монтирования (по умолчанию подразумевается rw — чтение, запись);
  • уровень дампа. Это поле используется программой dump , предназначенной для создания резервных копий. Если файловая система должна участвовать в процессе резервного копирования, то здесь должно стоять число 1, если нет — 0. Возможны и другие значения (см. руководство к программе dump) ;
  • порядок (приоритет) проверки файловых систем программой fsck . Системы с меньшими значениями этого поля проверяются раньше. Системы с одинаковыми номерами проверяются, если это возможно, параллельно.

В настоящее время Linux поддерживает следующие типы файловых систем (см. страницу man fs, где дано их краткое описание): minix, ext, ext2, xia, msdos, umsdos, vfat, proc, nfs, iso9660, hpfs, sysv, smb, ncpfs. Вместо типа файловой системы в поле «тип файловой системы» (и в опции -t команды mount ) можно задать значение auto. В таком случае команда mount попытается самостоятельно определить тип монтируемой файловой системы. Однако это во многих случаях приводит к ошибкам, поэтому лучше указать тип явно. Можно перечислить несколько типов (через запятую). В команде mount можно также вначале задать список типов файловых систем, которые не надо монтировать. Этот список задается с помощью флага no . Такая возможность может оказаться полезной в том случае, когда используется команда mount с аргументом a . По этой команде производится монтирование всех файловых систем, перечисленных в файле /etc/fstab. С помощью дополнительного аргумента -t type в этом случае можно ограничиться монтированием файловых систем только определенного типа, а с помощью флага no можно указать типы, которые не надо монтировать. Например, команда

[root]# mount -a -t nomsdos,ext

монтирует все файловые системы, за исключением тех, которые относятся к типам msdos и ext.

Когда монтируется файловая система, упомянутая в файле /etc/fstab, то в команде монтирования достаточно указать только один аргумент — либо имя устройства, либо точку монтирования. Все остальные параметры команда mount возьмет из файла /etc/fstab.

Обычно монтировать файловые системы может только суперпользователь, но если в поле опций монтирования файла /etc/fstab указать опцию user, то соответствующую файловую систему смогут смонтировать все пользователи. Так, если в /etc/fstab имеется строка

Читайте также:  Вместо samp запускается обычная gta windows 10

/dev/cdrom /cd iso9660 ro,user,noauto,unhide,

то любой пользователь сможет смонтировать файловую систему на своем CDROM, используя команду

[user]$ mount /dev/cdrom или [user]$ mount /cd

В табл. 4.8 приведены еще некоторые опции, которые могут использоваться в команде mount и в файле /etc/fstab.

Таблица 4.8. Основные опции команды mount

Источник

ИТ База знаний

Курс по Asterisk

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Создание и форматирование разделов жестких дисков в Linux

Работаем с дисками

Целью статьи является рассмотреть вопросы разбития жестких дисков и создание на разделах различных файловых систем в Linux. Будет рассмотрено управление дисками MBR и GPT.

Мини — курс по виртуализации

Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена

Использование утилиты mkfs.

Основные утилиты для работы с разделами жестких дисков и создания файловых систем: fdisk , gdisk , parted , gparted , mkfs , mkswap .

Для работы с жесткими дисками, такими операциями как изменение размеров логических разделов, разбиение жестких дисков, создание файловых таблиц на разделах жестких дисков требуются права суперпользователя. Переключится в данных режим из режима обычного пользователя можно командой sudo –s и введя пароль.

Утилита fdisk , позволяет нам проводить различные манипуляции с разделами жесткого диска.

Команда fdisk –l , мы можем посмотреть какие разделы у нас есть на жестком диске.

И так вводим команду fdisk –l и видим у на 3 физических жестких диска /dev/sda , /dev/sdb , /dev/sdc соответствующих размеров. Нас интересует раздел /dev/sdc/ на 10 GB с которым мы будем производить манипуляции.

Далее сделаем разбивку и создадим логические разделы.

Сразу получаем предупреждение, что раздел не содержит ни одного опознанного раздела.

Создадим новые разделы. Поделим на 2 части. У нас получится следующее.

Как мы можем увидеть создались 2 раздела и имеют ID 83, т.е. Linux раздел по умолчанию.

Теперь давайте поменяем тип раздела. Это сделать можно просто в меню выбираем t – смена раздела. Выбираем номер, например, 2 и нажимаем L , чтобы посмотреть hex коды, соответствующие разным типам. Изменим тип раздела Linux на swap раздел подкачки.

И теперь мы можем увидеть введя команду p .

У нас изменился тип раздела на раздел подкачки. Обычно данные раздел используется, когда не хватает оперативной памяти у машины. Теперь необходимо записать производимые изменения командой w. После ввода данной команды диски синхронизируются и таблица разделов изменена. После этого введя команду fdisk –l мы можем убедиться, что действительно появились разделы. Для того, чтобы этот раздел действительно стал работать, как раздел подкачки, его необходимо отформатировать, как раздел подкачки. Для этого есть команда специальная mkswap /dev/sdc2 . Указываем команду и раздел, который должен быть размечен. После команды mkswap раздел размечается и теперь его необходимо включить swapon /dev/sdc2 .

Для того, чтобы посмотреть какие разделы подкачки используются используем команду swapon –s .

Для выключения раздела подкачки можно использовать обратную команду swapoff /dev/sdc2 .

На самом деле, как мы убедились разделы подкачки создавать достаточно просто. Если не хватает оперативки, то пере разбили, отформатировали и включили.

Теперь поработает с первым разделом. Будем использовать команду mkfs .

В описании утилиты сказано, что данная утилита, строит Linux файловую систему. У данной утилиты, очень большое количество ключей. Использую данную утилиты мы можем отформатировать логический раздел в старую файловую систему ext2, с помощью команды mkfs –t ext2 /dev/sdc1 . А затем переформатировать в более новую ext3. Файловые системы различаются тем, что более новая файловая система журналируемая. Т.е. ведется журнал изменений происходящего на данной файловой системе и в случае чего-нибудь мы можем восстановить или откатить изменения. Еще более новая файловая система ext4. Отличия данной файловой системы от предыдущей в том, что она может работать с большими размерами жестких дисков, может в себе хранить большие размеры файлов, намного меньше фрагментация. В случае если мы хотим использовать, какие-то более экзотические файловые системы, то нам необходимо скачать соответствующую утилиту. Например, если мы хотим использовать файловую систему xfs.

Читайте также:  Расширение файлов для windows phone

Если мы попробуем отформатировать mkfs –t xfs /dev/sdc1 то мы получим ошибку. Попробуем поискать в кэше необходимый пакет apt-cache search xfs .

Находим необходимый пакет. Как мы можем видеть это утилита для управления XFS файловой системой. Следовательно, необходимо установить данный пакет, и мы сможем отформатировать в xfs файловую систему. Устанавливаем apt-get install xfsprogs . После установки пробуем отформатировать в xfs. Учитывая то, что мы уже форматировали в файловую систему ext4, нам необходимо команду на форматирование запускать с ключом –f . Получаем в следующем виде:

Теперь думаю интересно будет посмотреть, как сделать данный раздел рабочим под Windows операционную систему.

Возвращаемся обратно в редактирование логических разделов fdisk /dev/sdc и говорим , что мы ходим поменять тип первого нашего раздела с помощью команды t . Далее выбираем метку, которую понимает операционная система Windows, это FAT/FAT16/FAT32/NTFS. Например, NTFS id 86. Изменили. В этом можно убедится выведя таблицу с помощью команды p .

После изменения типа логического раздела, не забываем записать изменения с помощью команды w . Далее необходимо логический раздел отформатировать mkfs -t ntfs /dev/sdc1 .

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

Если посмотреть мануал по fdisk , то мы увидим, что он не умеет работать с дисками GPT и не может работать с большими разделами, только с MBR. Как известно в современных ПК уже используется UEFI, которая работает с GPT. А как следствие мы можем сделать вывод, что fdisk не сможет работать с дисками размер которых более 2 ТБ. Для работы с большими дисками можно использовать другую программу gdisk .

Как можно прочитать в описании gdisk – это интерактивный манипулятор для работы с gpt . Он работает практически также как и fdisk , только для начала необходимо переразбить жесткий диск из MBR в GPT.

Нажав на знак вопроса получим небольшую подсказку.

И нажимаем команду o для создания нового пустого GPT.

Получаем вот такое предупреждение.

Которое говорит о том, что будет создан новый GPT и создаст маленький новый защищенный MBR для совместимости со старыми системами, иначе старые системы будут затирать GPT.

С помощью команды p можно посмотреть список логических разделов, а с помощью команды w записать изменения. Разделы в данной программе создаются аналогично fdisk .

Посмотрим еще одну утилиту parted .

Интересная программа имеющая больший функционал, чем fdisk и gdisk . Умеет работать с дисками более 2 ТБ, умеет изменять разделы на горячую, может создавать разделы сразу с файловой системой, искать и восстанавливать разделы на жестком диске.

Команда parted –l покажет информацию по подключенным жестким дискам, типам разделов и логическим разделам.

Заходим в редактирование жесткого диска parted /dev/sdc и набираем слово help . Получаем достаточно справку с опциями.

У данной утилиты есть графический интерфейс, если вы работаете с GUI. Можно установить через apt-get install gparted .

Онлайн курс по Linux

Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps

Источник

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