Линукс открыть файловую систему

Обновлено: 02.07.2024

После того, как вы закончите разделение жесткого диска на разделы, вы сможете создать файловую систему в каждом из созданных разделов.

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

6.1. Информация о файловых системах

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

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

6.1.2. Файл /proc/filesystems

Ядро Linux проинформирует вас о загруженных на данный момент драйверах файловых систем с помощью файла /proc/filesystems .

6.1.3. Файл /etc/filesystems

Файл /etc/filesystems содержит список автоматически определенных файловых систем (на случай использования утилиты mount без параметра -t ).

Информация о данном файле содержится на странице руководства, которая может быть открыта с помощью команды man mount .

6.2. Часто используемые файловые системы

6.2.1. Файловые системы ext2 и ext3

В прошлом наиболее часто используемой файловой системой в Linux была файловая система ext2 ("вторая расширенная файловая система"). Недостаток данной файловой системы заключался в значительных затратах времени на ее проверку.

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

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

6.2.2. Создание файловых систем ext2 и ext3

Вы можете создать данные файловые системы с помощью утилит /sbin/mkfs и /sbin/mke2fs . Используйте команду mke2fs -j для создания файловой системы ext3.

Также вы можете преобразовать файловую систему ext2 в ext3 с помощью команды tune2fs -j . При этом вы можете смонтировать файловую систему ext3 как ext2, но в этом случае вы потеряете функцию журналирования. Не забывайте о необходимости выполнения команды mkinitrd в том случае, если устройство с данной файловой системой должно использоваться в процессе загрузки системы.

6.2.3. Файловая система ext4

Новейшим воплощением расширенной файловой системы является файловая система ext4 , код для поддержки которой включен в состав ядра Linux в 2008 году. Файловая система ext4 поддерживает файлы большего размера (до 16 терабайт), а также позволяет создавать файловые системы на разделах больших размеров, чем в случае файловой системы ext3 (кроме того, она предоставляет множество дополнительных возможностей).

Процесс разработки данной файловой системы начался с доработки файловой системы ext3 с целью полной поддержки 64-битных операций. После того, как выяснилось, что в код должны быть внесены значительные изменения, разработчики приняли решение о присвоении созданной в итоге файловой системе имени ext4 .

6.2.4. Файловая система xfs

Файловая система xfs используется по умолчанию в дистрибутиве Redhat Enterprise Linux 7. Это хорошо масштабируемая высокопроизводительная файловая система.

Файловая система xfs была создана специально для операционной системы Irix и в течение нескольких лет также использовалась в операционной системе FreeBSD. Она поддерживается ядром Linux, но редко используется в дистрибутивах, не имеющих отношения к дистрибутивам Redhat/CentOS.

6.2.5. Файловая система vfat

Файловая система vfat существует в нескольких форматах: fat12 для дискет, fat16 для операционной системы ms-dos и fat32 для поддержки дисков большего объема. Реализация файловой системы vfat из состава ядра Linux поддерживает все упомянутые форматы, но при этом в данной реализации отсутствует поддержка ряда возможностей, таких, как механизм контроля доступа и ссылки на файлы. Диски с файловой системой fat могут читаться средствами любой операционной системы и широко используются в цифровых камерах и накопителях с интерфейсом USB, причем данная файловая система очень удобна для осуществления обмена данными между операционными системами, установленными на компьютере домашнего пользователя.

6.2.6. Файловая система iso 9660

Файловая система iso 9660 является стандартной файловой системой для оптических дисков CD-ROM. Высока вероятность того, что вы также встретите данную файловую систему на вашем жестком диске в форме образов дисков CD-ROM (которые обычно имеют расширение .iso). Стандарт iso 9660 ограничивает длину имен файлов форматом 8.3. Это ограничение было воспринято негативно в мире Unix, в результате чего в стандарт было добавлено расширение Rock Ridge , позволяющее использовать имена файлов длиной в 255 символов, режимы доступа и идентификаторы владельцев файлов в стиле Unix, а также символьные ссылки. Другим расширением для стандарта iso 9660 являются расширение Joliet , которое добавляет возможность использования до 64 символов Unicode в именах файлов. Расширение El Torito также относится к стандарту iso 9660 и позволяет осуществлять загрузку системы с дисков CD-ROM.

6.2.7. Файловая система udf

При создании большинства оптических дисков (включая диски CD и DVD) в настоящее время используется файловая система udf , название которой расшифровывается как Universal Disk Format (универсальный дисковый формат).

6.2.8. Файловая система swap

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

6.2.9. Файловая система gfs

Кластеры на основе Linux обычно используют отдельную кластерную файловую систему, такую, как GFS, GFS2, ClusterFS,

6.2.10. Другие файловые системы.

В более старых системах Linux вы можете встретить файловую систему reiserfs . Также не исключено, что вы столкнетесь с файловой системой zfs , разработанной в компании Sun, или открытой файловой системой btrfs . Для описания возможностей последней, скорее всего, потребуется отдельная глава.

6.2.11. Файл /proc/filesystems

Файл /proc/filesystems содержит список поддерживаемых файловых систем. В момент монтировании файловой системы без явного указания ее типа утилита mount в первую очередь попытается идентифицировать файловую систему как одну из файловых систем, описанных в файле /etc/filesystems , после чего в случае необходимости попытается идентифицировать эту же файловую систему как одну из файловых систем, описанных в файле /proc/filesystems за исключением тех, для которых установлена метка nodev . В том случае, если в последней строке файла /etc/filesystems расположен только символ звездочки (*), будут использоваться оба упомянутых файла.

6.3. Создание файловой системы в разделе

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

Самое время прочитать страницы руководств утилит mkfs и mke2fs . С помощью приведенного ниже примера вы можете проследить процесс создания файловой системы ext2 в разделе, представленном файлом устройства /dev/sdb1. В реальной жизни вам также могут понадобиться такие параметры данной утилиты, как -m0 и -j.

6.4. Настройка файловой системы

Вы можете использовать утилиту tune2fs для вывода списка параметров файловой системы и установки их значений. В первом примере показана методика вывода информации о зарезервированном для пользователя root пространстве в рамках раздела (текущее значение равно пяти процентам от общего размера раздела).

А в примере ниже данное значение увеличивается до 10 процентов от общего размера раздела. Вы можете использовать утилиту tune2fs в процессе эксплуатации файловой системы, даже в том случае, если данная файловая система содержит корневую директорию (как в примере ниже).

6.5. Проверка файловой системы

Команда fsck позволяет задействовать утилиту-обертку, используемую для вызова утилит, осуществляющих проверку файловых систем.

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

Проверка смонтированной файловой системы в ручном режиме приведет к выводу предупреждения и завершению работы утилиты fsck.

Но после размонтирования файловой системы ext2 утилиты fsck и e2fsck могут успешно использоваться для ее проверки.

6.6. Практическое задание: файловые системы

1. Выведите список файловых систем, известных вашей операционной системе.

2. Создайте файловую систему ext2 в разделе размером в 200 МБ.

3. Создайте файловую систему ext3 в одном из логических разделов размером в 300 МБ.

4. Создайте файловую систему ext4 в разделе размером в 400 МБ.

5. Установите размер резервируемого пространства для пользователя root в разделе с файловой системой ext3 равным 0 процентов от общего размера раздела.

6. Проверьте корректность выполненных действий с помощью утилит fdisk и df .

7. Выполните проверки всех недавно созданных файловых систем.

6.7. Корректная процедура выполнения практического задания: файловые системы

1. Выведите список файловых систем, известных вашей операционной системе.

2. Создайте файловую систему ext2 в разделе размером в 200 МБ.

mke2fs /dev/sdc1 (замените sdc1 на корректное имя файла устройства, представляющего необходимый раздел жесткого диска)

3. Создайте файловую систему ext3 в одном из логических разделов размером в 300 МБ.

mke2fs -j /dev/sdb5 (замените sdb5 на корректное имя файла устройства, представляющего необходимый раздел жесткого диска)

4. Создайте файловую систему ext4 в разделе размером в 400 МБ.

mkfs.ext4 /dev/sdb1 (замените sdb1 на корректное имя файла устройства, представляющего необходимый раздел жесткого диска)

5. Установите размер резервируемого пространства для пользователя root в разделе с файловой системой ext3 равным 0 процентов от общего размера раздела.

6. Проверьте корректность выполненных действий с помощью утилит fdisk и df .

Использование утилиты mkfs (mke2fs) не должно стать причиной принципиальных различий в выводе предложенных для осуществления диагностики утилит.

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

Доброго дня!

К сожалению "обычная" версия Windows не позволяет работать с дисками, отформатированными в файловые системы (ФС) Ext2, Ext3, Ext4 (используются в Linux). Всё, что доступно — это узнать о их существовании в управлении дисками, а вот скопировать файл — уже проблема.

Наиболее сподручный и самый удобный вариант (на мой взгляд) — установить в Windows спец. драйвер, который позволит ОС работать с дисками Ext2/3/4 также, как если бы они были отформатированы в NTFS (скажем). Т.е. любая программа в Windows (тот же проводник) сможет в обычном режиме работать с диском. Удобно?

Теперь о том, "что" выбрать.

ускорение ПК

Как «прочитать» информацию на разделах с файловыми системами Ext2, Ext3, Ext4

Способ 1 (через спец. драйвер)

Подобные "драйверы" есть от нескольких производителей. Я бы выделил продукт от Paragon (ссылка на офиц. сайт с драйвером). Почему:

  1. поддержка ФС: Ext2, Ext3, Ext4 (чтение + запись); Btrfs, XFS (только чтение);
  2. после установки драйвера — ничего "делать" не нужно: просто Windows начинает видеть накопители с Ext4+;
  3. совместим с ОС Windows 7/8/10 (плюс есть пробный период, которого хватает для возникшей задачи (обычно)).

Драйвер от Paragon

Драйвер от Paragon

Обратите внимание, что "ненужные" разделы диска можно откл. и не монтировать. Настройка драйвера позволяет это сделать.

Главное окно (Linux File Systems for Windows by Paragon Software)

Главное окно (Linux File Systems for Windows by Paragon Software)

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

Этот компьютер — диски с ФС EXT4 появились в проводнике

На Sourceforge можно также найти бесплатный драйвер файловой системы Ext2/3/4 для Windows 7/8/10* (ориг. название: Ext2Fsd).

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

Продукт от Paragon, конечно, выигрывает.

Способ 2 (через дополнения к TC)

TC — это сокращенное название файлового коммандера Total Commander (некая замена проводнику). К этой программе есть очень много плагинов, и, разумеется, для чтения Ext2/3/4 ФС тоже есть!

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

1) Сначала устанавливаем сам Total Commander. Ссылка на офиц. сайт.

2) Далее необходимо загрузить плагин DiskInternals Reader с офиц. сайта (он идет в архиве ZIP - извлекать не нужно).

Запуск TC от имени админа

Запуск TC от имени админа

Установка плагина

DiskInternals Reader

Файлы читаются, можно копировать

Файлы читаются, можно копировать

Способ 3 (с помощью LiveCD)

2) Загруженный ISO-файл с нужной версией дистрибутива Linux необходимо правильно записать на флешку.

3) Далее останется только загрузиться с этой флешки с помощью Boot Menu (вызывается сразу после вкл. ПК). Если вы выберите дистрибутив Linux для новичка — то работать с ним весьма просто (ничуть не сложнее, чем с проводником Windows).

В этом руководстве для начинающих пользователей мы ознакомимся с основными командами для работы с файлами и каталогами (иногда их еще называют директориями) в Linux-системах.

Требования

Cервер с Ubuntu 20.04

Все команды, описанные ниже, будут работать и в других дистрибутивах Linux.

Расположение каталогов в файловой системе

При входе на сервер, вы, как правило, попадаете в домашний каталог вашей учетной записи, отведенный для хранения файлов и создания директорий.

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

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

Домашний каталог располагается после имени учетной записи пользователя, в приведенном примере он называется /demo. Этот каталог находится в каталоге с именем /home и в каталоге верхнего уровня, который называется root или корневой каталог, поэтому представлен одной косой чертой /.

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

Для просмотра содержимого каталога используется команда ls. Название этой команды является сокращением слов list files.

Просмотреть содержимое любой директории можно следующими способами:

Либо введя команду:

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

К команде ls можно добавлять дополнительные флаги, например, чтобы показать детализированное представление (права, список владельцев файлов или папок, размер, дату последнего модифицирования) файлов и директорий в текущей директории, можно использовать флаг -l:

Результат выполнения команды:

Для просмотра списка всех файлов, включая скрытые файлы и каталоги, вы можете добавить флаг -a:

Результат выполнения команды:

Отобразить содержимое текущей директории с добавлением к именам символов, характеризующих тип, можно с помощью команды:

Результат выполнения команды:

Перемещение между каталогами

Для перехода в домашний каталог используется команда cd. Название этой команды является сокращением слов change directory.

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

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

В Linux-системах каждый файл и каталог находятся в самой верхней директории, которая называется «корневой» и обозначается одним символом слэш /.

Абсолютный путь указывает на расположение каталога по отношению к этой директории верхнего уровня. Это позволяет обращаться к справочникам однозначным образом из любого места в файловой системе.

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

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

Для перехода в директорию двумя уровнями выше:

Операции с файлами и каталогами

Далее приведен список основных команд навигации в консоли Linux.

Создание

Создание файлов производится с помощью команды:

Создание каталогов выполняется с помощью команды вида:

Название этой команды является сокращением слов make directory.

Создание двух каталогов одновременно выполняется с помощью команды:

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

Удаление

Для удаления директорий используется команда rmdir имя_директории. Название этой команды является сокращением слов remove directory.

Для удаления файлов используется команда rm. Например, для удаления файла с именем file1 используется команда:

Команда rm также позволяет удалять не только файлы, но и каталоги.

Для удаления директории с именем dir1 со всеми подкаталогами и файлами используется опция -r (от слова recursive):

Можно удалить одновременно две директории со всем их содержимым:

Также можно использовать параметр -f, который означает, что при удалении не будет запрашиваться подтверждение.

Команда для удаления файла будет выглядеть так:

Команда для удаления каталога:

Перемещение

Для перемещения и переименования файлов и каталогов используется команда mv. Название этой команды является сокращением слова move.

Переименовать файл можно с помощью команды:

Для того чтобы переместить файл, используется команда:

Копирование

Для копирования используется команда cp. Название этой команды является сокращением слова copy.

Чтобы скопировать файл file1 и назвать его file2, используется команда:

Для того чтобы копировать директорию dir1 в директорию dir2, используется команда:

Скопировать файл с именем file1 в директорию с именем dir1, можно с помощью команды:

Редактирование файлов

Мы ознакомились с основными командами для работы с каталогами и файлами.

Далее мы изучим, как редактировать файлы и добавлять в них содержание.

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

В результате ввода в терминал команды nano будет открыт чистый файл.

Интерфейс выглядит следующим образом:


В верхней части открывшегося редактора отображается имя приложения и имя файла, который мы редактируем.

В середине должно располагаться содержимое файла, в настоящее время оно пустое.

В нижней части интерфейса расположен ряд комбинаций клавиш, которые указывают с основными элементами управления текстового редактора. Для каждого из них символ ^ означает клавишу CTRL.

Для того чтобы открыть справку используйте сочетание клавиш CTRL-G.

Закрывается справка с помощью сочетания клавиш CTRL-X. После закрытия справки мы возвращаемся к редактированию.

Вводить и редактировать можно любой текст, например, можно ввести: “Hello World!”

Для сохранения внесенных изменений следует нажать сочетание клавиш CTRL-O. Внимание! Это буква О, а не ноль.

Далее система попросит вас ввести либо подтвердить имя файла, который вы хотите сохранить:

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

После ввода имени файла нажмите клавишу ENTER.

Для того чтобы выйти из тестового редактора нажмите сочетание клавиш CTRL-X.

Если вы внесли изменения и не сохранили файл, вам будет предложено сохранить сделанные вами изменения:

Вы можете нажать клавишу Y, чтобы сохранить изменения, клавишу N для отмены изменений и выхода, или сочетание клавиш CTRL-C, чтобы отменить операцию выхода из режима редактирования файла.

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

Нажмите клавишу ENTER, чтобы сохранить файл и выйти из редактора.

Заключение

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

Поговорим о файловых системах Linux. Какие существуют типы и виды. Какие их основные различия: журналируемые и не журналируемые ФС.

1. Что такое файловая система простыми словами

В физическом смысле файловая система Linux/UNIX представляет собой пространство раздела диска разбитое на блоки фиксированного размера. Их размер кратен размеру сектора: 1024, 2048, 4096 или 8120 байт. Размер блока известен заранее.

Как происходит обмен данными между ядром, приложениями и жестким диском? Для этого существуют 2 технологии:

Список поддерживаемых ядром файловых систем находится в файле /proc/filesystems :

Иерархия файловой системы

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

2. Целостность файловой системы — что это такое

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

Проверку целостности файловой системы в Linux можно запустить с помощью команды fsck (в Windows это программа называется – scandisk )

В начале ФС есть чистый бит. Если система используется, то в этот бит заносится 1. По завершению работы опять 0.

3. Список команд для работы с файлами в Linux

Права доступа к файлу/каталогу можно изменять с помощью команды chmod:

Таким образом можно изменять права доступа к файлу и каталогам (а также вложенным каталогам и файлам в них).

4. Типы файловых систем Linux — описание и обзор

Файловые системы условно делятся на два типа

  1. Журналируемые . Имеют в своем арсенале специальный файл, который хранит историю действий (лог) и план дальнейшей проверки. Характерной особенностью является устойчивость к сбоям и большая гарантия на сохранение целостности данных.
  2. Не журналируемые . Отсутствует файла с логом. Работают более быстро. Не гарантируют целостность и сохранность данных. Особенно это проблема встает в случае сбоев, когда некоторые действия могли редактировать файл и прервать изменения в неправильном месте.

Узнать файловую систему в ОС Linux

Самые популярными типами ФС в Linux являются:

  1. Ext4 (считается стандартом для Linux)
  2. Ext2
  3. ReiserFS
  4. XFS
  5. SWAP

В Windows поддерживаются свои ФС: NTFS, FAT32. Линукс также их поддерживает, а вот Windows не поддерживает линуксовые системы.

2 Ext2 (second extended file system). Дата создания 1993 год. Является не журналируемой файловой системой. Была популярна до 2000-х. Имеет ряд ограничений на работу с большими файлами, зато является и самой быстрой, поэтому её часто используют в различных сравнительных тестах как эталонную.

3 Ext3 (third extended filesystem). Дата выхода 2001 год. Считается революционной, поскольку относится к поколению журналируемых систем. В настоящее время файловая система Ext3 поддерживает файлы размером до 1 ТБайт. Используется в некоторых случаях до сих пор. Разделы Ext3 могут читать Windows-программы (например, Total Commander). Разработчик Стивен Твид.

4 Ext4 (дата выхода 2006 год). Является стандартом во всех современных Linux (а сейчас 2019 год). Хорошо защищена от проблем фрагментации и оптимизирована для работы с большими файлами. Максимальный размер файловой системы не может превышать 16 ТБайт.

5 ReiserFS (или Reiser3). Создана уже после ext3 в качестве ее альтернативы. Журналируемая система. Поддерживает большую производительность. Позволяет изменять размеры разделов во время работы.

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

6 Reiser4 (дата создания 2004 году). Система включает себя такие передовые технологии как транзакции, задержка выделения пространства, а так же встроенная возможность кодирования и сжатия данных.

7 XFS (журналируемая файловая система). Это производительная файловая система, разработанная в Silicon Graphics для свой операционной системы еще в 2001 году. Позволяла использовать диски 2 ТБайт. Существует возможность потери данных во время записи при сбое питания, так как большое количество буферов хранится в памяти.

9 SWAP – особый вид не журналируемой файловой системы, которая реализует структуру хранения данных, аналогичную структуре оперативной памяти. Используется для реализации файла подкачки в Linux.

5. Типы файлов Linux

Перечислим поддерживаемые типы файлов в ОС Linux

  • Файлы (тексты, исходники, картинки, скрипты)
  • Каталоги
  • Блочные устройства (жесткие диски, дискеты)
  • Символьные устройства (терминалы, принтеры)
  • символические ссылки
  • PIPE
  • Гнезда

Тип файла в каталоге можно посмотреть командой:

Посмотреть список блочных устройств можно командой:

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