Использование команды mkfs в Linux для форматирования файловой системы на диске или разделе
Главное меню » Linux » Использование команды mkfs в Linux для форматирования файловой системы на диске или разделе
Вы также можете использовать команду mkfs следующим образом:
В этой статье мы в общих чертах расскажем, что такое файловая система. А также приведем примеры эффективного использования команды mkfs.
Поскольку команда mkfs работает с дисками и разделами, вам необходимо быть пользователем root или sudo с правами доступа для запуска команд администратора.
MKFS это мощный инструмент. Важно понимать потенциальные последствия изменения файловой системы. Выбор неправильного узла устройства удалит все данные на этом устройстве. Используйте эту команду на свой страх и риск. Вы были предупреждены
Что такое файловая система
Файловая система (fs) относится к структуре и логике, которые управляют данными на устройстве. Файловая система контролирует, как данные хранятся и извлекаются.
Существует много типов файловых систем, каждая из которых имеет свои преимущества и недостатки. Вот наиболее распространенный тип файловых систем:
Возможно, вы уже сталкивались с одним или несколькими из этих типов файловых систем. Вы можете даже связать типы с их соответствующими операционными системами.
Вообще говоря, FAT/NTFS предназначены для Windows, Ext используется с системами Linux, а APFS/HFS – файловые системы macOS. Каждый из них по-разному обращается к логике файловой структуры, что может привести к проблемам.
Вот почему важно подумать об этом перед объявлением типа файловой системы или «форматированием» вашего устройства. Каждый вариант использования индивидуален, и вам решать, какая файловая система лучше всего подходит для ваших нужд.
Примеры команд mkfs
Позвольте нам показать вам наиболее распространенное использование команды mkfs.
Пожалуйста, не пытайтесь использовать вслепую ни одну из этих команд в вашей реальной системе. Они отформатирует целевое устройство/раздел диска, удалив все данные.
mkfs без опций создает файловую систему ext2
Если вы не укажете тип файловой системы для целевого устройства, он будет использовать файловую систему ext2 по умолчанию.
Укажите тип файла с помощью mkfs
Использование ext2 не очень удобно или целесообразно. В наши дни большинство систем Linux рекомендуют использовать ext4. Вы можете указать файловую систему следующим образом:
Вы также можете использовать это так:
Проверьте наличие плохих блоков на устройстве
Вы также можете проверить наличие плохих блоков на устройстве, но имейте в виду, что проверка часто занимает много времени.
Бонусный совет: проверьте тип файловой системы устройства
Вы можете проверить тип файловой системы устройства, которое вы только что отформатировали, используя команду mkfs. Вы можете использовать команду file для этой цели.
Вот пример, который показывает, какой вывод он может показать:
Реальный пример использования: использование команды mkfs для создания файловой системы на USB-устройстве.
Теперь, когда у вас есть некоторая справочная информация, вы можете начать использовать mkfs.
Самая практическая демонстрация, которую мы можем придумать, – это форматирование USB-накопителя. Эти же принципы будут применяться к любому типу хранилища по вашему выбору.
Найди свое устройство
Проверьте раздел
Устройство, которое мы используем, является USB-накопителем Patriot Memory, и оно находится по адресу /dev/sdb. В дополнение к определению правильного диска, вам нужно будет убедиться, что вы меняете fs нужного раздела.
Мы использовали инструменты fdisk, чтобы удалить существующие данные и написать новую таблицу разделов. Пока мы делали это, мы создали новый раздел для записи. Этот раздел будет нашей целью /dev/sdb1.
Управление накопителями в Linux: основные понятия и подходы
Операционная система Linux предоставляет производительные средства и наборы инструментов для управления аппаратными устройствами, в том числе накопителями. Эта статья расскажет, как Linux представляет эти устройства и, как превратить неформатированное хранилище (raw storage) в полезное пространство.
Блочные системы хранения
Блочная система хранения (block storage) – это ещё одно название блочного устройства в Linux. Блочное устройство – это часть аппаратных средств, предназначенная для хранения данных, например жесткий диск (hard disk drive, HDD), твердотельный накопитель (solid state drive, SSD), флэш-карта памяти и т.д. Они называются блочными устройствами, так как ядро подключается к аппаратным средствам путем ссылки на блоки фиксированного размера (фрагменты пространства).
По сути, блоковая система хранения – это обычное дисковое хранилище на компьютере. После установки и настройки такая система работает как продолжение дерева текущей файловой системы и позволяет записывать или считывать информацию с диска.
Разделы диска
Дисковые разделы – один из способов разделения накопителя на меньшие единицы. Разделом называется логически выделенная часть накопителя, которую, по сути, можно воспринимать и обрабатывать как сам накопитель.
Разделение диска позволяет сегментировать доступное пространство и использовать каждый его раздел для индивидуальной цели. Это дает пользователю большую гибкость, позволяя разделить установку на несколько операционных систем, пространств подкачки или специализированных файловых систем.
Конечно, диски можно форматировать и использовать без разделения. Однако некоторые операционные системы требуют предоставить им таблицу разделов, даже если на диске есть только один раздел. Как правило, для достижения большей гибкости в дальнейшем новые диски рекомендуется заранее разделять.
MBR и GPT
При разделении диска важно учитывать формат. Как правило, при этом используются форматы MBR (Master Boot Record) и GPT (GUID Partition Table).
MBR – традиционная система дискового разделения, которая используется уже более 30 лет. Из-за её возраста в ней есть ряд серьёзных ограничений. Например, её нельзя использовать для разделения дисков, чей объём превышает 2Тб. Также MBR позволяет создать максимум четыре первичных раздела; при этом четвертый раздел, как правило, является «расширенным разделом», в котором можно создавать «логические разделы» (то есть, таким образом можно разделить последний раздел, чтобы добавить дополнительные разделы).
GPT – более современная модель разделения диска, которая пытается решить некоторые из проблем MBR. Системы, использующие GPT, могут делить диск на большее количество разделов (как правило, ограничения в этом смысле накладываются самой операционной системой). Кроме того, GPT не ограничивает размеры диска, а таблица разделов доступна в нескольких точках системы из соображений безопасности.
В большинстве случаев лучше использовать GPT (если только операционная система или наборы инструментов не подразумевают другого решения).
Форматирование и файловые системы
Ядро Linux может распознавать неформатированный диск. Но накопитель должен обязательно быть отформатированным.
Форматирование – это процедура записи на диск меток, файловой системы и другой управляющей информации для дальнейшей работы с файлами. Файловая система – это система, которая структурирует данные и управляет операциями записи и извлечения данных на диске. Без файловой системы невозможно использовать устройство для хранения файлов и выполнения любых файловых операций.
Существует множество различных форматов файловых систем. На базовом уровне все они обеспечивают похожее представление диска, но каждый из них поддерживает разные функции и механизмы для обслуживания пользователей и выполнения операций.
Наиболее популярными файловыми системами в Linux являются:
Управление устройствами хранения в Linux
Файлы устройств в /dev
Система Linux почти всё представляет в виде файлов. Это касается и аппаратных накопителей, которые представлены в системе в виде файлов в каталоге /dev. Как правило, имена файлов, представляющих устройства хранения данных, начинаются с sd или hd, после чего следует буква. Например, первый диск на сервере, как правило, будет называться примерно так: /dev/sda.
Разделы таких накопителей тоже будут иметь свои файлы в /dev. В имя такого файла входит sd или hd + буква + порядковый номер раздела. Например, первый раздел на первом диске сервера будет называться /dev/sda1.
Файлы /dev/sd* и /dev/hd* представляют традиционный способ обозначения дисков и разделов, существует значительный недостаток в использовании значений. Ядро Linux распределяет имена устройств при каждой загрузке системы, а это может привести к путанице при изменении узлов устройств.
Чтобы обойти эту проблему, каталог /dev/disk содержит подкаталоги, которые предоставляют более надёжный способ определения дисков и разделов в системе. Они содержат символические ссылки на правильные файлы /dev/[sh]da*, которые создаются при загрузке системы. В названии ссылки содержится идентифицирующий признак каталога. Эти ссылки всегда указывают на правильные устройства, потому они используются как статические идентификаторы хранилищ.
В каталоге /dev/disk могут существовать следующие подкаталоги:
Как правило, для постоянной идентификации конкретных устройств используются каталоги by-label или by-uuid.
Монтирование блочных устройств
Файлы устройств в каталоге /dev используются для обмена данными с драйвером ядра. Тем не менее, чтобы рассматривать устройство в качестве сегмента доступного пространства, требуется более удобное разделение.
В Linux и других Unix-подобных системах вся система представлена единым унифицированным деревом файлов независимо от количества физических устройств. Таким образом, когда на диске или разделе используется файловая система, её нужно подключить к существующему дереву. Монтирование – это процесс присоединения отформатированного раздела или диска к каталогу в файловой системе Linux. Доступ к содержимому накопителя можно получить с помощью этого каталога.
Устройства обычно монтируются в специальные выделенные пустые каталоги; если устройство было смонтировано в непустой каталог, то текущее содержимое этого каталога будет недоступно, пока устройство не демонтируют. Существует множество различных опций для монтирования, которые можно настроить, чтобы изменить поведение смонтированного устройства (например, открыть устройство только для чтения, чтобы защитить его данные от изменений).
Стандарт иерархии файловой системы рекомендует использовать для временно смонтированных файловых систем каталог /mnt или его подкаталоги. Однако этот стандарт не дает никаких рекомендаций относительно того, где хранить более постоянные устройства, потому вы можете выбрать для них любое удобное место. Обычно для этого также используется каталог /mnt или его подкаталоги.
Постоянное монтирование
Файл /etc/fstab достаточно прост. Каждая строка определяет блочное устройство, его точку монтирования, формат диска, параметры монтирования, а также некоторую другую информацию.
Продвинутое управление хранилищами
Большинство случаев простого использования накопителей и хранилищ не требует дополнительных структур управления. При работе со сложными парадигмами можно получить более высокую производительность, избыточность или гибкость.
Что такое RAID?
RAID (Redundant Array of Independent Disks) – это технология управления хранением данных и виртуализацией, которая позволяет сгруппировать диски и управлять ими как единым целым.
Характеристики RAID-массива зависит от уровня RAID, который определяет, как именно диски в массиве связаны друг с другом. Выбранный уровень влияет на производительность и избыточность. Наиболее распространенными уровнями являются:
Что такое LVM?
LVM (или Logical Vvolume Management) – это система, которая абстрагирует основные физические характеристики устройств хранения данных для повышения гибкости и мощности. LVM может создавать группы физических устройств и управлять ими как единым блоком. Это позволяет по мере необходимости сегментировать пространство в логические тома, которые будут работать как разделы.
LVM реализуется на основе обычных разделов и позволяет обойти множество ограничений, присущих традиционным дисковым разделам. Например, при использовании томов LVM можно легко расширять разделы, создавать новые разделы, которые охватывают несколько дисков, создавать снапшоты и перемещать тома на разные физические диски. LVM можно комбинировать с RAID.
Дальнейшие действия
Если у вас есть новое накопительное устройство, которое вы хотите использовать в системе Linux, это руководство поможет разобраться с основами разделения дисков, форматирования и монтирования новых файловых систем. Чтобы научиться выполнять базовые операции по управлению хранилищем, читайте это руководство.
Русские Блоги
управление дисками linux
1. Команда df для просмотра информации о смонтированном диске
-i Проверить состояние inode: если используется 100%, появится сообщение о том, что дисковое пространство заполнено, даже если на диске еще есть место.
-h Использовать дисплей устройства.
-m отображается в МБ.
** du команда, просмотр каталога или информации о файле; **
2.1 Увеличить диск виртуальной машины
Выберите «Виртуальная машина», «Изменить параметры виртуальной машины», «Жесткий диск», «Добавить», оставьте значение по умолчанию в мастере установки оборудования, укажите емкость диска и задайте размер жесткого диска. Выберите, чтобы сохранить виртуальный диск в виде одного файла, для завершения добавления виртуального диска.
2.2 команда fdisk Команда разделов диска может разделять только разделы размером менее 2T;
Диск / dev / sda: 32,2 ГБ, 32212254720 байт, 62914560 секторов
Единицы = сектор 1 * 512 = 512 байт
Размер сектора (логический / физический): 512 байт / 512 байт
Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
Система Идентификатора начала и конца загрузки устройства
/dev/sda1 *2048 411647 204800 83 Linux
/dev/sda2 411648 4605951 2097152 82 Linux swap / Solaris
/dev/sda3 46059526291455929154304 83 Linux
Диск / dev / sdb: 10,7 ГБ, 10737418240 байт, 20971520 секторов
Единицы = сектор 1 * 512 = 512 байт
Размер сектора (логический / физический): 512 байт / 512 байт
Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
Список недавно добавленной информации о диске
Диск / dev / sdb: 10,7 ГБ, 10737418240 байт, 20971520 секторов
Единицы = сектор 1 * 512 = 512 байт
Размер сектора (логический / физический): 512 байт / 512 байт
Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
Если fdisk не добавляет параметры, он перейдет в другой режим, который может разбить диск;
Изменения останутся в памяти, пока вы не решите записать изменения на диск.
Пожалуйста, подумайте дважды, прежде чем использовать команду записи.
Device does not contain a recognized partition table
Используйте идентификатор диска 0x47a75227, чтобы создать новую метку диска DOS.
Команда (введите m для справки): m списки часто используемых w
c toggle the dos compatibility flag
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
l list known partition types
o create a new empty DOS partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition’s system id
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Команда (введите m для справки):
Обычно используемые команды:
p: список информации о разделах;
Команда (введите m для справки): n
3. Форматирование диска
mke2fs: команда форматирования
-t: указать файловую систему
-b: указать размер блока
-m: указать размер зарезервированного пространства раздела
-i: указать размер inode
mkfs.xfs определяет формат файла xfs
4. Монтаж диска ** mount Просмотр текущего монтируемого раздела и типа файловой системы раздела **
umount: размонтировать подключенный диск
/ etc / fstab Раздел, смонтированный при запуске системы
5. Увеличьте виртуальную память: создайте файл подкачки Сначала создайте виртуальную память: swapfile
Формат как формат подкачки;
Смонтировать и включить виртуальный диск;
6, расширение lvm имеет реляционное пространство
6.1 Создать раздел, разделить его на три области и преобразовать формат в LVM
6.2 Создание физического тома: pvcreate
Не знаю имя установочного пакета, знайте команду для установки пакета следующим образом
Список текущего физического тома: pvdisplay
6.3, создать группу томов vgcreate
Просмотр информации о группе томов: vgdisplay
6.4 Создайте логический том: lvcreate
Смонтировать логический том
Расширить логический том
Уменьшить логический объем
Расширение файла XFS, сначала отформатируйте файловую систему XFS, а затем разверните
Расширенный контент:
Используйте команду dd для проверки производительности чтения и записи на диск
Тест скорости записи:
** Тест скорости чтения: **
Подробное объяснение общих параметров дд
Используйте dd для резервного копирования жесткого диска
2. Рейдовый дисковый массив (обычно 0, 0 + 1, 5)
Файловые системы Linux
Обновл. 28 Июл 2021 |
Файловая система — это набор стандартов и соответствующих процессов, которые определяют и управляют тем, в каком виде ваши данные хранятся на носителе информации и каким образом они могут быть из него извлечены.
Способ организации файловой системы в Linux
В качестве способа повышения эффективности ОС, в Linux применяется следующая модель файловой системы:
Благодаря такому подходу, добавление поддержки какой-нибудь новой файловой системы не потребует вносить соответствующих изменений в само ядро ОС.
Виртуальная файловая система (сокр. «VFS» от англ. «Virtual File System») — это специальный слой абстракции, предоставляющий программный интерфейс (единый набор команд) для взаимодействия между ядром и конкретной реализацией файловой системы.
Ядро Linux поддерживает различные типы файловых систем (ext3, ext4, ReiserFS, Btrfs, XFS и многие другие). На сегодняшний день наиболее часто используемой файловой системой является ext4, поэтому в данной статье основной упор будет сделан именно на нее.
Примечание: В Linux практически все объекты представлены в виде файлов (например, каталоги, принтеры, разделы диска, устройства и т.д.). Это делает еще более важным изучение того, как работает файловая система Linux.
Эволюция файловой системы ext в Linux
Давайте детально рассмотрим эволюцию файловой системы ext в Linux:
Файловая система Minix
Файловая система Minix — это первая файловая система, являющаяся прообразом современных файловых систем в Linux, которая была представлена в 1987 году Эндрю С. Таненбаумом в составе одноименной ОС Minix.
Операционная система Minix и её файловая система использовались в виде наглядного пособия для студентов, изучающих основы строения ОС (одним из таких студентов был сам Линус Торвальдс). Из-за того, что Minix была, прежде всего, учебной системой, её файловая система обладала множеством недостатков: производительность файловой системы оставляла желать лучшего; длина имени файла была ограничена 14 символами, а размер разделов — 64 МБ. Для сравнения, жесткие диски того времени имели размер вплоть до 140 МБ.
Файловая система ext
ext или extfs (сокр. от англ. «Extended File System») — это первая файловая система, предназначенная специально для Linux, которая была представлена в апреле 1992 года. Используемая структура метаданных была разработана Реми Кардом, на создание которой его вдохновила Unix File System. Максимальная длина имени файла составляла 255 символов, а размер раздела — до 2 ГБ.
Хотя ext и удалось решить проблемы, присутствовавшие в файловой системе Minix, у нее был один серьезный недостаток — временная метка. Сейчас, когда каждый файл в Linux имеет три временные метки (доступа к файлу, изменения содержимого файла, изменения свойств и метаданных файла (например, разрешений)), файловая система ext поддерживала только одну временную метку.
Файловая система ext2
В январе 1993 года, менее чем через год после выхода ext, Реми Кард разрабатывает новую файловую систему — ext2.
В ext2 были расширены функциональные возможности ext:
увеличена производительность файловой системы;
данные файлов хранились в блоках данных одинаковой длины;
поддерживался максимальный размер файла в 2 тебибайта;
длина имени файла была ограничена 255 байтами (а не количеством символов, как раньше).
Высокая скорость работы ext2 объяснялась тем, что система не поддерживала механизм ведения логов (или «журналируемости»). С одной стороны, данный аспект можно отнести к преимуществу ext2, так как при работе с имеющими ограниченный ресурс использования накопителями (например, SSD-дисками или USB-устройствами), нет избыточных циклов перезаписи данных, следовательно, ресурс накопителя расходуется медленнее. С другой стороны, отсутствие системы ведения логов в ext2 часто приводило к двум очень неприятным проблемам:
Повреждение файлов, если в момент записи данных на диск отключалось питание или возникал сбой системы.
Потеря производительности из-за фрагментации данных: происходит, когда один файл разбивается на части (фрагментируется) и распределяется по нескольким местам на диске. В результате чтение и запись файлов занимают больше времени, что приводит к снижению производительности файловой системы.
Система ext2 использовалась по большей части до начала 2000-х годов, когда была представлена файловая система ext3.
Файловая система ext3
В ноябре 2001 года, благодаря усилиям программиста Стивена Твиди, вместе с релизом ядра Linux 2.4.15 увидела свет и новая файловая система — ext3.
Файловая система ext3 — это улучшенная версия файловой системы ext2, в которой появилась возможность ведения логов. Она, как и ext2, поддерживает файлы размером в 2 тебибайта, а имена файлов ограничены 255 байтами.
Благодаря логам, система сохраняет в специальном лог-файле (или «журнале») всю информацию об изменениях в данных, которые еще предстоит внести. В случае потери питания или сбоя системы, информация о файлах, хранящаяся в логах, может быть восстановлена в течение нескольких секунд, благодаря чему снижается риск повреждения или потери данных.
Ядро Linux поддерживает три уровня ведения логов:
Journal — состоит из записи метаданных и содержимого файлов в лог-файл до внесения изменений в основную файловую систему, тем самым обеспечивая наиболее полное логирование данных. Если случится какая-нибудь аварийная ситуация, то можно перечитать лог-файл и восстановить потерянную информацию. Недостатком данного уровня ведения логов является то, что он снижает производительность системы.
Ordered — процесс сохранения данных выполняется в определенном порядке: сначала в лог-файл записываются метаданные, затем содержимое файла записывается в основную файловую систему и уже тогда метаданные соединяются с основной файловой системой. В случае сбоя, основная файловая система не будет повреждена; риску повреждения подвергаются только те файлы, которые находятся во время сбоя непосредственно в процессе записи.
Writeback — уровень ведения лог-файла, при котором в него заносятся только метаданные, а содержимое файла записывается непосредственно в основную файловую систему. Из-за отсутствия синхронизации метаданных и содержимого файлов, в случае сбоя системы они, скорее всего, окажутся поврежденными.
Файловая система ext4
Файловая система ext4 была представлена в октябре 2008 года вместе с ядром Linux 2.6.28. Она поддерживает максимальный размер файла в 16 тебибайт и ограничивает максимальную длину имени файла 255 байтами.
Особенности файловой системы ext4
Давайте рассмотрим основной функционал файловой системы ext4:
Обратная совместимость. Файловая система ext4 поддерживает обратную совместимость с файловыми системами ext3 и ext2. Дополнительной функцией является автоматическое монтирование файловой системы ext3 в режиме ext3 с помощью драйвера ext4.
Улучшения распределения. Файловая система ext4 более эффективно распределяет блоки данных перед их записью на диск. Это повышает производительность как чтения, так и записи.
Расширение диапазона временных меток. Файловая система ext4 добавляет еще 408 лет к диапазону значений временных меток и поддерживает даты вплоть до 10 мая 2446 года. Также улучшилась точность временных меток — теперь они измеряются в наносекундах.
Экстенты (Последовательные блоки). Устаревшие версии файловой системы ext отслеживают каждый блок, который связан с хранением данных файла (данный подход называется методом «непрямого сопоставления»). Но этот процесс перестает быть эффективным, когда речь заходит о больших файлах, требующих большого количества блоков. Экстенты решили эту проблему: с их помощью уменьшается объем метаданных, необходимых для сопоставления блоков каждого файла. Система сохраняет адрес только первого и последнего блока некоторого довольно большого файла, сообщая таким образом, что данные находятся в следующих n блоках. Благодаря этому, файл, например, размером в 500 МБ, может храниться в единственном экстенте сопоставимого размера, а не быть разбитым на 128 000 4-килобайтных блоков, как при непрямом сопоставлении.
Многоблочное распределение. Особый механизм распределения блоков ищет свободные блоки, которые можно использовать для записи данных на диск. Файловая система ext4 задействует многоблочное распределение, позволяющее распределять несколько блоков всего лишь одним вызовом. Это уменьшает фрагментацию диска.
Отложенное распределение. Функция отложенного распределения выделяет блоки только при записи файла на диск. Благодаря этой функции кэш-память не заполняется ненужными данными, а производительность системы повышается.
Неограниченное количество подкаталогов. Ядро Linux версии 2.6.23 поддерживает неограниченное количество подкаталогов. Файловая система ext4 ввела древовидную структуру данных HTree, чтобы избежать снижения производительности. HTree представляет собой специализированную версию B-дерева.
Подсчет контрольных сумм. Файловая система ext4 использует подсчет контрольной суммы файлов. Данный механизм был введен для снижения риска повреждения файлов. Система ведения логов является наиболее используемой частью диска. Когда происходит сбой оборудования, блоки становятся непригодными для использования и происходит повреждение файлов. Используя подсчет контрольной суммы, система постоянно проверяет, не поврежден ли блок. Этот процесс также повышает производительность, поскольку сокращает время работы с лог-файлом.
Онлайн-дефрагментация. Фрагментация диска приводит к снижению производительности файловой системы, что было серьезной проблемой для ext2 и ext3. Файловая система ext4 поддерживает утилиту e4defrag, которая позволяет пользователям дефрагментировать отдельные файлы или всю файловую систему.
Ограничения файловой системы ext4
Хотя файловая система ext4 считается лучшей файловой системой для дистрибутивов Linux, есть несколько ограничений, которые следует учитывать в вашей дальнейшей работе:
Восстановление поврежденных данных. Файловая система ext4 не может обнаружить или восстановить поврежденные данные, уже записанные на диск.
Максимальный размер тома установлен в 1 эксбибайт. Однако файловая система не может обрабатывать более 100 тебибайт данных без значительной потери производительности и увеличения фрагментации диска.
Альтернативные файловые системы
Существует несколько альтернативных файловых систем, поддерживаемых ядром Linux.
XFS — это 64-разрядная файловая система, которая впервые была представлена в 1994 году и встроена в ядро Linux с 2001 года. XFS поддерживает максимальный размер файла в 8 эксбибайт и ограничивает длину имени файла 255 байтами. Она поддерживает ведение логов и, как и ext4, сохраняет изменения в лог-файле до того, как они будут зафиксированы в основной файловой системе. Это снижает вероятность повреждения файлов.
Основным недостатком этой системы является сложный процесс изменения размера существующей файловой системы XFS.
OpenZFS
OpenZFS — это платформа, которая объединяет функционал традиционных файловых систем и диспетчера томов. Впервые была представлена в 2013 году. OpenZFS поддерживает максимальный размер файла в 16 эксбибайт и ограничивает максимальную длину имени файла 255 символами. В качестве особенностей данной системы можно выделить защиту от повреждения данных, шифрование данных, поддержку накопителей увеличенного объема, копирование при записи и RAID-Z.
Основным недостатком OpenZFS является юридическая несовместимость между лицензиями CDDL (OpenZFS) и GPL (ядро Linux). Эта проблема решается путем компиляции и загрузки кода ZFS в ядро Linux.
Btrfs
Btrfs (сокр. от англ. «B–tree file system») — это файловая система, которая была разработана компанией Oracle и выпущена вместе с ядром Linux 2.6.29 в 2009 году. Btrfs поддерживает максимальный размер файла в 16 эксбибайт и ограничивает максимальную длину имени файла 255 символами.
Некоторые особенности Btrfs включают в себя:
добавление и удаление блочных устройств в режиме онлайн;
настраиваемое для каждого файла или тома сжатие;
контрольные суммы и возможность создания файлов подкачки и разделов подкачки.
JFS (сокр. от англ. «Journaled File System») — это файловая система, которая была разработана компанией IBM для AIX Unix в 1990 году. Она является альтернативой файловой системе ext. Она также может быть использована вместо ext4 там, где требуется стабильность при небольшом количестве затрачиваемых ресурсов.
ReiserFS
ReiserFS — это альтернатива файловой системе ext3, которая обладает улучшенной производительностью и расширенным функционалом. Ранее, ReiserFS использовалась в качестве файловой системы по умолчанию в SUSE Linux. ReiserFS поддерживает динамическое изменение размеров файловой системы. К недостаткам можно отнести относительно низкую производительность.
Примечание: Такие файловые системы, как NTFS, FAT и HFS могут использоваться в Linux, но корневая файловая система Linux на них не устанавливается, поскольку они для этого не предназначены. Swap — это файл подкачки, служащий источником дополнительной памяти в тех случаях, когда для выполнения программы требуется больше оперативной памяти, чем имеется в компьютере, — он не является отдельной файловой системой.
Как узнать, какая у меня файловая система?
Способ №1: Использование команды df
Команда df отображает информацию об использовании дискового пространства файловой системы. Для указания того, что нам нужно вывести тип файловой системы, используйте следующую команду:
Как вы можете видеть, у меня используется файловая система ext4 (см. раздел /dev/sda1).
Примечание: Имена дисков в Linux расположены в алфавитном порядке. /dev/sda — это первый жесткий диск (основной), /dev/sdb — второй и т.д. Цифры относятся к разделам, поэтому /dev/sda1 — это первый раздел первого диска.
Способ №2: Использование команды fsck
Команда fsck применяется для проверки и, при необходимости, восстановления файловых систем Linux. При этом она также может отображать и тип файловой системы на указанных разделах диска, например:
Способ №3: Использование команды lsblk
Способ №4: Использование команды mount
Команда mount применяется для монтирования файловой системы в Linux. Её также можно использовать для монтирования ISO-образа, удаленной файловой системы Linux и многого другого. Чтобы узнать тип файловой системы, используйте следующую комбинацию:
Поделиться в социальных сетях:
Логи в Linux. Как найти и прочитать?
Комментариев: 2
Дополнение к ФС btrfs (пользуюсь ей уже почти год):
— поддержка RAID
И не только! Кроме RAID есть дедупликация данных, когда просто создается еще одна копия файла при его создании и в метаданные добавляется информация о том, что эта копия есть (в точную реализацию я не углублялся). Именно это делает систему почти не убиваемой, и если насильно пытаться ФС ломать, то она таки восстановиться, хотя и не на 100% если повредились оба экземпляра файлов.
На SSD редко встречается случай, когда дедупликации не происходит, потому как сам SSD делает ссылку на оригинал одинакового файла.
— бесплатные бекапы (резервные копии)
Можно создавать бекапы, которые ничего не весят до тех пор, пока в оригинале не появятся изменения (инкрементальные бекапы на уровне ФС!), при этом их можно настраивать
— подразделы (subvolume)
BTRFS дает возможность поделить ее на разные части, которые можно подключать к Linux с различными параметрами (сжатие и прочее) и делать бекапы для каждого из них (для этого удобно разбить систему на подразделы home, etc, usr или другие)
— клонирование файлов
Которое ничего не весит! Можно копировать файлы хоть до бесконечности, но они свободное место будет уменьшаться очень медленно, так как на уровне ФС происходит просто создание ссылки на файл (CoW)
— контрольные суммы и возможность создания файлов подкачки и разделов подкачки.
С первым согласен. А вот возможность создания файлов подкачки и разделов подкачки есть, но я сильно не рекомендую так поступать, скорее всего будут проблемы если делать подкачку на этой системе, самое лучшее — отдельный раздел swap.
Встретился с минусами, такими как неадекватный подсчет свободного места, если есть бекапы. Но на OpenSUSE я встретил самую лучшую поддержку этой ФС из коробки — тут тебе и автоматизация бекапов с удалением старых и больших при условии их ненужности, и выбор бекапов из меню загрузчика, и разбиение системы на подразделы, и баг со свободным местом починили, и в целом есть очень удобный yast для управления этой ФС