ТОП 10:

Файловая структура Linux: каталоги и файлы; управление файлами и файловыми системами



 

В ОС Linux все файлы организованы в каталоги, которые, в свою очередь, иерархически соединены друг с другом, образуя одну общую файловую структуру. При обращении к файлу необходимо указывать не только его имя, но и место, которое он занимает в этой файловой структуре. Можно создавать любое количество новых каталогов, добавляя их к файловой структуре. Команды для работы с файлами:

find; cp; mv; ln, - позволяет находить файлы, копировать их и перемещать из одного каталога в другой. В совокупности все эти элементы и образуют файловую структуру ОС Linux.

Файлы в ОС Linux.

Имя файла может содержать любые буквы, знаки подчеркивания и цифры. Можно включать в имена точки и запятые. При этом имя файла не должно начинаться ни с цифры, ни с точки (за исключением некоторых особых случаев). Символы: / \ ? * (косая черта, вопросительный знак, звездочка), – зарезервированы в системе в качестве специальных и в именах файлов использоваться не должны. Максимальная длина имени файла 256 символов. Имя файла может включать и расширение. Для отделения расширения от собственно имени файла служит точка.

Типы файлов.

Все файлы в ОС Linux имеют один и тот же формат байтовый поток. Это позволяет системе Linux распространять файловую концепцию на все компоненты данных. Каталоги и устройства классифицируются как файлы. Рассматривая такую организацию как файлы, Linux позволяет упростить организацию данных и обмен ими. Данные, записанные в файле, можно посылать непосредственно в устройство.

Каталоги, сами по себе являются файлами, но имеют собственную внутреннюю организацию. Файл каталога содержит информацию о каталоге, организованную в специальные структуры. Поскольку все эти различные компоненты рассматриваются как файлы, можно сказать, что они представляют собой различные типы файлов. Байт ориентированное устройство – один тип файла, каталог другой тип файла. Независимо от конкретной реализации ОС Linux существуют четыре стандартных типа файлов: обычные; файлы каталогов; байт-ориентированные файлы устройств; блок-ориентированные файлы устройств.

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

Файловая структура.

Файлы в ОС Linux организованы в иерархическую систему каталогов. Из-за сходства такую структуру называют древовидной структурой. Если быть более точным, то эта структура скорее похожа на куст, перевернутый вверх ногами. Ствола здесь нет. Вниз от корня отходят ветви. Каждая ветвь отходит только от одной, а от нее самой может отходить множество ветвей до самого нижнего уровня. В этом смысле файловую структуру скорее, можно назвать «родители-потомки». Аналогичным образом любой каталог является подкаталогом другого каталога, каждый подкаталог может содержать множество подкаталогов, но сам должен быть потомком только одного родительского каталога.

Иерархическая структура изображена на рис. 2.

Рис. 2.

 

Вверху находится корневой каталог (обозначается символом «косая черта») от которого ответвляется другие каталоги.

Файловая структура Linux разветвляется на несколько каталогов, начиная с корневого, / - root . В корневом каталоге имеется несколько системных каталогов, которые содержат файлы и программы, относящиеся к самой ОС Linux. Корневой каталог, кроме того, содержит каталог home, который может содержать начальные каталоги всех пользователей системы.

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

Путевые имена.

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

Рис.3.

 

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

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

Системные каталоги.

Корневой каталог являющийся каталогом файловой структуры Linux, содержит ряд системных каталогов. Системные каталоги содержат файлы и программы, сужающие для управления системой и ее сопровождение. Основные системные каталоги следующие (рис.4).

Рис. 4.

/root – служит начальной структурной единицей файловой системы;

/bin - содержит стандартные системные утилиты;

/lib – содержит библиотеки языков программирования;

/dev - содержит драйверы устройств;

/home- содержит исходные каталоги пользователей;

/sbin- содержит стандартные инструменты администрирования;

/usr - содержит дополнительные системные программы и инструменты администрирования;

/var - содержит файлы протоколов (log files) и буферные файлы принтеров (print spools). Обычно он монтируется с ограничением размера на Web-серверах, поскольку в противном случае log-файлы легко "затопят" все свободное пространство в разделе;

/spool – содержит буферные файлы (например, генерируемые при печати и пересылке по сети);

/etc - содержит администраторские и конфигурационные файлы. Находившиеся ранее здесь командные утилиты должны быть перенесены в разделы /bin и /sbin.

 

 

Система команд в Linux

 

 

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

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

$ команда опции аргументы

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

$ /usr/bin/command

 

Каждому пользователю, вошедшему в систему, предоставляется путь по умолчанию. Узнать его можно с помощью команды:

$ echo $РАТН

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

$ /usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/mj/bin

 

Стандартный ввод-вывод

 

 

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

Вывод информации о файлах.

Команда ls –l имя_файла позволяет получить подробную информацию о файле (рис.5).

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







Последнее изменение этой страницы: 2016-04-08; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 35.172.233.215 (0.004 с.)