4 Файловая система Linux

4

Файловая система Linux

4.1. Файлы и каталоги. Дерево каталогов

В свое время, при использовании DOS вводилось определение файла как поименованной области данных на диске — на то DOS и дисковая операционная система. В Linux понятие файла значительно расширено. Практически все, с чем вы имеете дело в Linux, является файлом. Команды, которые вы вводите с клавиатуры, — это файлы, которые содержат программы. Устройства вашего компьютера – это тоже файлы. Грубо говоря, файл — это последовательность битов, а жесткий диск — просто смесь нулей и единиц. Linux представляет биты так, как вам понятно, и в этом заключается одна из ее основных функций — управление файловой системой. Файловая система — способ организации и представления битов на жестком диске.

Большинство файловых систем Unix-подобных операционных систем сходны между собой. Файловая система Linux — ext2 (ext3) — очень похожа на файловую систему ufs. К основным понятиям файловых систем в мире unix относятся:

1. Блок загрузки (boot block).

2. Суперблок (superblock).

3. Индексный (информационный) узел (inode).

4. Блок данных (data block).

5. Блок каталога (directory block).

6. Косвенный блок (indirection block).

Блок загрузки содержит программу для первоначального запуска Unix.

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

В индексном (информационном) узле хранится вся информация о файле, кроме его имени. Имя файла и его дескриптор (номер информационного узла — inode) хранятся в блоке каталога. В информационном узле есть место только для хранения нескольких блоков данных. Если же нужно обеспечить большее количество, то в этом случае динамически выделяется необходимое  пространство для указателей на новые блоки данных. Такие блоки называются косвенными. Для того, чтобы найти блок данных, нужно найти его номер в косвенном блоке.

Файловая система ext2 имеет следующую структуру (см. рис. 4.1):

1. Суперблок.

2. Описатель группы.

3. Карта блоков.

4. Карта информационных узлов.

5. Таблица информационных узлов.

6. Блоки данных.

Рис. 4.1. Структура файловой системы

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

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

Блоки данных — это блоки, содержащие реальные данные.

Что касается файлов, то в операционной системе Linux существует четыре типа файлов:

1. Файлы устройств.

2. Каталоги.

3. Обычные файлы.

4. Ссылки.

Файлы устройств представляют собой устройства вашего компьютера. Файлы устройств находятся в каталоге /dev. Например, /dev/ttyS0 — первый последовательный порт (СОМ1). Обычные файлы, в свою очередь, делятся на нормальные (текстовые) и двоичные.

Каталоги — это специальные файлы, содержащие информацию о других файлах (файлах устройств (/dev), обычных файлов и ссылок). Конечно, это довольно грубое определение, скорее интуитивное, чем точное.

Ссылки позволяют хранить один и тот же файл, но под разными именами. Немного позже мы поговорим более подробно о ссылках, а сейчас рассмотрим команды для работы с файлами и каталогами. Максимальная длина имени файла составляет 254 символа. Имя может содержать практически любые символы, кроме: / ? > < | " *

В своей работе я не рекомендую использовать слишком длинные, а также русскоязычные имена файлов. Linux чувствительна к регистру символов, поэтому file.txt, FILE.TXT и File.txt — совершенно разные имена файлов, и данные файлы могут находиться в одном каталоге. Понятие «расширение файла» в Linux отсутствует. Напомню, что в DOS имена файлов строились по схеме 8+3: 8 символов — для имени и 3 — для расширения. Расширением (или типом в терминологии Windows) называется последовательность символов после точки.

Свойства файловой системы ext2:

Максимальный размер файловой системы 4 Тбайт
Максимальный размер файла 2 Гбайт
Максимальная длина имени файла 255 символов
Минимальный размер блока 1024 байт
Количество выделяемых индексных дескрипторов 1 на 4096 байт раздела
Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

1.3.1 Файловая система

Из книги Архитектура операционной системы UNIX автора Бах Морис Дж

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


1.4. Файловая система Linux

Из книги Fedora 8 Руководство пользователя автора Колисниченко Денис Николаевич

1.4. Файловая система Linux 1.4.1. Корневая файловая система. Стандартные каталоги При установки Linux в выбранном вами разделе жесткого диска создастся корневая файловая система Linux. Корневая файловая система содержит набор стандартных каталогов и утилит, без которых


7.2.2.1. Корневая файловая система и система инициализации

Из книги Windows Vista автора Вавилов Сергей

7.2.2.1. Корневая файловая система и система инициализации Итак, вы выбрали загрузку Linux. Загрузчик GRUB загрузит ядро, а затем передаст ему параметры и управление. Подробновесь процесс загрузки ядра рассматриваться здесь не будет. Вам достаточно знать следующее: ядру при


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

Из книги Информатика: аппаратные средства персонального компьютера автора Яшин Владимир Николаевич

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


6.6.2. Файловая система FAT

Из книги Linux: Полное руководство автора Колисниченко Денис Николаевич

6.6.2. Файловая система FAT Файловая система FAT используется ОС MS DOS и ОС Windows для упорядочения файлов и управления ими. В основу данной файловой системы положена таблица размещения FAT (File Allocation Table), которая представляет собой структуру данных, создаваемую ОС при


6.6.2.1. Файловая система FAT 16

Из книги Ubuntu 10. Краткое руководство пользователя автора Колисниченко Д. Н.

6.6.2.1. Файловая система FAT 16 Файловая система FAT 16 поддерживается ОС MS DOS, Windows 95, Windows 98, Windows 2000, а также некоторыми версиями ОС UNIX.Цифра 16 в названии файловой системы указывает на число бит (двоичных разрядов), необходимых для хранения информации о номерах кластеров,


6.6.5. Файловая система UDF

Из книги Недокументированные и малоизвестные возможности Windows XP автора Клименко Роман Александрович

6.6.5. Файловая система UDF Файловая система UDF (Universal Disk Format) разработана в соответствие со стандартом ISO 13346 и используется для размещения информации на CD– и DVD-накопителях, а также для обмена информации между ними. Файловая система UDF позволяет использовать CD и DVD как НЖМД,


Глава 5 Файловая система Linux

Из книги Linux и все, все, все... Статьи и колонки в LinuxFormat, 2006-2013 автора Федорчук Алексей Викторович

Глава 5 Файловая система Linux 5.1. Различные файловые системы Linux поддерживает много различных файловых систем. Начинающий пользователь просто теряется, когда видит такое многообразие выбора, — ведь в качестве корневой файловой системы доступны: ext2, ext3, ext4, XFS, ReiserFS,


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

Из книги автора

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


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

Из книги автора

Файловая система Настройки файловой системы являются критически важными для оптимизации скорости работы компьютера. Как правило, если параметры реестра, описывающие работу файловой системы, не оптимизированы, то возможно снижение скорости работы компьютера на 10-70%. Все


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

Из книги автора

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


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

Из книги автора

Файловая система Для доступа к файловой системе используется следующий вызов: Set имя_объекта = CreateObject("Scripting.FileSystemObject"). Объект поддерживает следующие методы.? BuildPath("путь к каталогу", "название файла") — создает путь на основе указанного пути к каталогу и имени файла. Иными


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

Из книги автора

3.1. Файловая система Прежде чем перейти к настройкам системы, нам нужно познакомиться поближе с файловой системой Linux. О структуре мы уже немного поговорили в разд. 2.3, когда разбивали жесткий диск. В табл. 2.1 были перечислены разделы, которые можно создать в Linux, а это не что


Файловая система btrfs: Linux-ответ ZFS?

Из книги автора

Файловая система btrfs: Linux-ответ ZFS? LinuxFormat, #115 (февраль 2009)После появления ZFS, объединившей в себе файловую систему и систему управления томами, трудно было ожидать чего-то принципиально нового в этой области. Однако в Linux, по лицензионным соображениям, она может


Файловая система для SSD

Из книги автора

Файловая система для SSD LinuxFormat, #169 (апрель 2013)За последние лет 10-15 мы неоднократно читали победные реляции об успехах в компьютерной области. Однако настоящим успехом последних лет можно считать только начало широкого распространения SSD-накопителей: впервые за всю историю