Атрибуты файла:
Типы файлов в Linux
Типы файлов в Linux
Типы файлов в Linux
Структура файловой системы. Дерево каталогов в Linux.
По типу использования файлы можно разделить на следующие группы:
Принципы именования устройств
Файловые системы поддерживаемые операционной системой Linux
Журналируемые файловые системы
2.27M
Category: softwaresoftware

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

1.

2.

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

3.

Имя файла может содержать до 255 любых
символов, кроме наклонной черты / и нулевого
кода.
Linux всегда различает заглавные и строчные
буквы в именах файлов и каталогов, поэтому
"methody", "Methody" и "METHODY" будут тремя
разными именами.
Имеется ряд символов, которые имеют
в оболочке shell специальное значение и которые
поэтому не рекомендуется включать в имена. Это
следующие символы:
@ # $ & ~ % * ( ) [ ] { } ' " \ : ; > <c ` пробел

4. Атрибуты файла:

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

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

Файлы физических устройств.
Все подключаемые к компьютеру устройства (жесткие и съемные диски,
терминал, принтер, модем и т. д.), представляются файлами.
Взаимодействием с физическими устройствами в Linux управляют
драйверы устройств, которые либо встроены в ядро, либо подключаются
к нему как отдельные модули. Для взаимодействия с остальными
частями операционной системы каждый драйвер образует
коммуникационный интерфейс, который выглядит как файл.
Большинство таких файлов для различных устройств располагаются
в каталоге /dev.
/dev/cdrom – на устройство CD-ROM;
/dev/kbd – клавиатура (PS/2);
/dev/mixer* - доступ к звуковой карте
/dev/psaux – мышь PS/2 и т. п..

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

Именованные каналы (pipes) (или буферы FIFO (First In — First
Out)). Файлы этого типа служат в основном для того, чтобы
организовать обмен данными между разными приложениями
(pipe переводится с английского как труба).
Доменные гнезда (sockets)
Гнезда — это соединения между процессами, которые позволяют
им взаимодействовать, не подвергаясь влиянию других
процессов.
Символические ссылки (symlinks)
Помимо жестких ссылок в Linux имеется другой тип ссылок, так
называемые символические ссылки. В отличие от жестких ссылок
символические ссылки могут указывать на файлы, расположенные
в другой файловой системе, например, на монтируемом
носителе, или даже на другом компьютере.

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

Обычные файлы предназначены для хранения пользовательских или
системных данных.
Каталог – это список ссылок на файлы или другие каталоги.
Принято говорить, что каталог содержит файлы или другие каталоги,
хотя в действительности он только ссылается на них, физическое
размещение данных на диске обычно никак не связано с размещением
каталога. Каталог, на который есть ссылка в данном каталоге, называется
подкаталогом или вложенным каталогом.
„Домашний каталог“ — каталог, в котором пользователь имеет все
права: может создавать и удалять файлы, менять права доступа к ним и т.
д. В каталоговой структуре Linux домашние каталоги пользователей
обычно размещаются в каталоге /home и имеют имена, совпадающие
с именем пользователя. Когда пользователь входит в систему, текущим
каталогом становится домашний каталог данного пользователя.

8. Структура файловой системы. Дерево каталогов в Linux.

9.

Имя
Описание
/
Корневой каталог
/bin
Наиболее важные команды и программы
/boot
Все, что необходимо для загрузки операционной системы, ядро Linux
/dev
Файлы устройств
/etc
Системные конфигурационные файлы
/home
Домашние каталоги пользователей
/lib
Общие библиотеки, модули ядра
/mnt
Это каталог для монтирования локальных и удаленных файловых систем
/opt
Дополнительные программные пакеты
/ргос
Информация, касающаяся ядра; управление процессами
/root
Домашний каталог пользователя root
/sbin
Системные команды
/tftpboot Поддержка сетевой загрузки ОС
/tmp
Временные файлы
/usr
Иерархия вторичных программных файлов
/var
Переменные данные (например, регистрационные журналы); файлы
спула (например, принтера)

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

Пользовательские/системные файлы -это все файлы, созданные
пользователем и не принадлежащие ни одному из компонентов системы.
Изменяющиеся/неизменные файлы. К неизмененным файлам относятся
все статические компоненты программного обеспечения: библиотеки,
исполняемые файлы и т. д. - все, что не изменяется само без
вмешательства системного администратора. Изменяющиеся файлы - это
те, которые изменяются без вмешательства человека в процессе работы
системы: системные журналы, очереди печати и пр.
Разделяемые/неразделяемые файлы. Это разграничение становится
полезным, если речь идет о сети, в которой работает несколько
компьютеров. Значительная часть информации при этом может храниться
на одном из компьютеров и использоваться всеми остальными по сети (к
такой информации относятся, например, многие программы и домашние
каталоги пользователей). Однако часть файлов нельзя разделять между
системами (например, файлы для начальной загрузки системы).

11. Принципы именования устройств

Название
Тип устройства
устройства
в ОС Windows
A:
1-й флоппи диск
Название
устройства
в ОС Linux
/dev/fd0
Примечания
B:
2-й флоппи диск
/dev/fd1
C:
1-й жесткий диск (master) /dev/had
На 1-м IDE канале
D:
2-й жесткий диск (slave)
/dev/hdb
На 1-м IDE канале
E:
3-й жесткий диск (master) /dev/hdc
На 2-м IDE канале
F:
4-й жесткий диск (slave)
/dev/hdd
На 2-м IDE канале
G:
SCSI CD-ROM
/dev/scd0

12.

Полным именем файла (или путем к файлу)
называется список имен вложенных друг
в друга подкаталогов, начинающийся
с корневого каталога и оканчивающийся
собственно именем файла.
При этом имена подкаталогов в этом
списке разделяются тем же символом /,
который служит для обозначения корневого
каталога.
Например:
/home/methody/

13. Файловые системы поддерживаемые операционной системой Linux

EXT2/3,
ReiserFS,
JFS,
ХFЗ,
CRAMFS,
HPFS,
ISO9660,
Minix,
FАТ,
NCPFS,
NFS,
SMBFS,
SYSV,
UFS,
UMSD
OS,
VFAT,
NTFS.

14. Журналируемые файловые системы

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

15.

Существует несколько типов файловых систем, которые в полной мере
поддерживают все возможности, необходимые для полноценной работы Linux.
Ext2/3
Этот тип файловой системы разработан специально для Linux и традиционно
используется на большинстве Linux-систем. Фактически в названии «Ext2/3»
объединены названия двух вариантов этой файловой системы. Ext3 отличается
от Ext2 только поддержкой журналирования, в остальном они одинаковы и
легко могут быть преобразованы одна в другую в любой момент без потери
данных. Обычно предпочтителен вариант с журналированием (Ext3) в силу его
большей надёжности. При высокой параллельной дисковой загрузке
производительность Ext3 снижается, что выражается в снижении скорости
операций с диском и повышении значения нагрузки на систему (Load Average).
ReiserFS
Файловая система этого типа похожа скорее на базу данных: внутри неё
используется своя собственная система индексации и быстрого поиска данных, а
представление в виде файлов и каталогов — только одна из возможностей
использования такой файловой системы. Традиционно считается, что ReiserFS
отлично подходит для хранения огромного числа маленьких файлов.
Поддерживает журналирование.

16.

XFS
Файловая система, наиболее подходящая для хранения очень больших
файлов, в которых постоянно что-нибудь дописывается или изменяется.
Поддерживает журналирование. Лишена недостатков Ext3 по
производительности, но при её использовании выше риск потерять
данные при сбоях питания (в том числе и по причине принудительного
обнуления повреждённых блоков в целях безопасности; при этом
метаданные файла обычно сохраняются и он выглядит как корректный).
Рекомендуется использовать эту файловую систему с проверенным
аппаратным обеспечением, подключенным к управляемому источнику
бесперебойного питания (UPS).
SWAPFS
Этот тип файловой системы находится на особом положении — он
используется для организации на диске области подкачки (swap). Область
подкачки используется в Linux для организации виртуальной памяти:
когда программам недостаточно имеющейся в наличии оперативной
памяти, часть рабочей информации временно размещается на жёстком
диске. JFS Разработана IBM для файловых серверов с высокой нагрузкой:
при разработке особый упор делался на производительность и
надёжность, что и было достигнуто. Поддерживает журналирование.

17.

ext (extended filesystem)
Появилась в апреле 1992 года, это была первая файловая система,
изготовленная специально под нужды Linux ОС. Разработана Remy Card с целью
преодолеть ограничения файловой системы Minix.
ext2 (second extended file system)
Была разработана Remy Card в 1993 году. Не журналируемая файловая система,
это был основной её недостаток, который исправит ext3.
ext3 (third extended filesystem)
Расширение ext2, способное к журналированию. Разработана Стивеном Твиди
(Stephen Tweedie) в 1999 году, включена в основное ядро Linux в ноябре 2001
года. На фоне других своих сослуживцев обладает более скромным размером
пространства, до 4 тебибайт (4*240 байт) для 32-х разрядных систем. На данный
момент является наиболее стабильной и поддерживаемой файловой системой в
среде Linux.

18.

Reiser4
Первая попытка создать файловую систему нового поколения для Linux.
Впервые представленная в 2004 году, система включает в себя такие
передовые технологии как транзакции, задержка выделения пространства,
а так же встроенная возможность кодирования и сжатия данных. Ханс
Рейзер (Hans Reiser), главный разработчик системы, рекламировал
использовать своё детище непосредственно как БД с улучшенными
метаданными. После того, как Ханс Рейзер был осуждён за убийство в 2008
году, дальнейшая судьба системы стала сомнительной.
ext4
Попытка создать 64-х битную ext3 способную поддерживать больший
размер файловой системы (1 эксбибайт). Позже добавились возможности —
непрерывные области дискового пространства, задержка выделения
пространства, онлайн дефрагментация и прочие. Обеспечивается прямая
совместимость с системой ext3 и ограниченная обратная совместимость при
недоступной способности к непрерывным областям дискового
пространства.
English     Русский Rules