Что считается файлами в oc unix

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

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

Файловая система в ОС Linux, как и в ОС Windows, представляет собой иерархическую структуру каталогов и файлов (в виде дерева), но при этом имеет ряд кардинальных отличий.

Структура каталогов

Подключение внешних носителей

В ОС Linux имеется процедура монтирования: когда подключается съемный носитель или диск, файл устройства будет виден в каталоге /dev (devices). Чтобы увидеть содержимое этого устройства, его нужно смонтировать в отдельную директорию /mnt. Также файловая система позволяет примонтировать его и в любое другое место, например /home.

Понятие файла

Понятие «файл» в Linux имеет несколько другое значение, нежели в Windows. «Файлом» можно назвать обычный файл, содержащий данные, и интерпретируемый программой. Директория также является «файлом», содержащим в себе ссылки на другие директории или файлы с данными. Файлы устройства указывает на драйвер, благодаря которому система взаимодействует с физическими устройствами. Имеются и многие другие типы файлов.

Принцип установки программ

Если в Windows программы, зачастую, хранят все данные в одной папке, например в «C:Program FilesProgramName», то в Linux файлы программы разделяются по каталогам в зависимости от типа. Например, исполняемые файлы в /bin, библиотеки в /lib, файлы конфигураций в /etc, логи и кэш в /var.

Регистр имен

Также стоит отметить чувствительность файловой системы Linux к регистру. Файлы Temp.txt и temp.txt будут интерпретироваться как разные файлы и могут находиться в одной директории, в отличие от ОС Windows, который не различает регистр имен. То же правило действует и на каталоги — имена в разных регистрах указывают на разные каталоги.

Назначение каждой директории регламентирует «Стандарт иерархии файловой системы» FHS (Filesystem Hierarchy Standard). Ниже опишем основные директории согласно стандарту FHS:

Источник

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

Пространство нашего жесткого диска занято файлами разных типов. Например, взять даже наш корневой раздел (/), при создании файла, файловая система записывает его в определенном формате на нужное физическое место жесткого диска. Всегда, для работы с файлами используется файловая система, но не всегда она записывает файлы на диск, файловая система может работать на лету, генерируя файлы, например, как procfs, с помощью которой может быть выполнена настройка ядра linux или записывать файлы в оперативную память, как tmpfs расположенная в папке /tmp. Но все это не имеет значения, ведь в любом случае мы имеем дело именно с файлами.

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

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

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

Файлы в операционной системе Linux можно поделить на три основных типа:

Дальше рассмотрим более подробно эти типы файлов linux.

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

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

Утилита ls может определять тип файла в режиме списка, обычные файлы обозначаются черточкой, например:

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

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

Посмотреть форматы файлов linux можно с помощью утилиты file. Например:

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

Система сообщила что это исполняемый файл, а теперь посмотрим обычный, текстовый:

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

Утилита умеет распознавать все известные форматы файлов. Чтобы узнать вывести все доступные форматы файлов linux наберите:

Специальные файлы

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

Утилита ls обозначает блочные файлы буквой b, например, выберем все блочные файлы из каталога /dev:

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

Утилита file, которую мы рассматривали в предыдущем разделе тоже умеет определять типы файлов:

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

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

Вы также можете отфильтровать их с помощью ls. Символьные файлы обозначаются буквой c (character):

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

Но вернемся к символическим ссылкам. Утилита ls обозначает их буквой l (link):

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

Создавать символические ссылки можно с помощью утилиты ln. Например:

Обозначаются такие типы файлов linux буквой p (pipe):

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

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

echo «test test test» > pipe1

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

while read line ;do echo «Data: ‘$line’ «; done

Файлы сокетов обозначаются буквой s:

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

Создать сокет можно с помощью функции socket() на языке программирования Си, чтение и запись выполняется системными вызовами read() и write(). Но нам сейчас не нужно писать реальную программу, будет достаточно немного поиграться. Поэтому воспользуемся утилитой nc. Создаем Unix сокет:

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

Подключаемся к нему из другой консоли:

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

Каталоги

Это специальные файлы, которые позволяют объединять другие и каталоги в группы для более простой навигации и поиска. Естественно, они могут содержать как обычные, так и специальные файлы, одним словом любые типы файлов ос linux. В системе Linux, файлы организуются в папки начиная от корня (/)

Обозначаются каталоги буквой d (directory):

Что считается файлами в oc unix. Смотреть фото Что считается файлами в oc unix. Смотреть картинку Что считается файлами в oc unix. Картинка про Что считается файлами в oc unix. Фото Что считается файлами в oc unix

Создать каталог в linux можно с помощью команды mkdir:

Заключение

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

Источник

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

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

Идентификация типов файлов в Linux

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

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

Ниже представлено краткое описание 7 различных типов файлов в Linux:

c — символьное устройство;

b — блочное устройство;

s — (локальный) сокет;

p — именованный канал;

l — символьная ссылка.

Обычный файл

Обычный файл — это наиболее распространенный тип файлов в Linux. Текстовые файлы, изображения, двоичные файлы, общие библиотеки и т.д. — все они относятся к обычному типу файлов. Вы можете создать обычный файл с помощью команды touch :

$ touch ravesli.txt
diego@debian:

$ rm ravesli.txt
diego@debian:

Каталог

Обозначается как d

Каталог — это второй по распространенности тип файлов в Linux. Каталог можно создать с помощью команды mkdir (сокр. от «make directory»):

$ mkdir ravesli
diego@debian:

$ rmdir ravesli
diego@debian:

При попытке удалить каталог, содержащий внутри себя файлы, вы получите сообщение об ошибке:

$ mkdir ravesli
diego@debian:

$ touch /home/diego/ravesli/ravesli.txt
diego@debian:

$ rmdir ravesli
rmdir: не удалось удалить ‘ravesli’: Каталог не пуст

Символьное устройство

Обозначается как c

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

В этом примере символьным устройством является генератор псевдослучайных чисел.

Блочное устройство

Обозначается как b

Блочные устройства похожи на символьные. Чаще всего они управляют аппаратными устройствами, такими как: жесткие диски, память и т.д. Большинство из них располагаются в каталоге /dev :

Локальные сокеты

Обозначаются как s

Как правило, локальные сокеты используются для связи между такими службами, как: X Window, syslog и т.д.

Именованные каналы

Обозначаются как p

Символьные ссылки

Обозначаются как l

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

Существует два типа символьных ссылок в Linux:

Мягкая ссылка является указателем на некоторый файл или каталог (сродни ярлыкам в Windows). Если вы переместите файл, связь с символьной ссылкой разорвётся (но сама ссылка все еще будет существовать, указывая на файл, которого нет). Если вы замените файл другим, сохранив имя, символьная ссылка будет указывать на новый файл. Символьные ссылки могут охватывать различные разделы файловой системы.

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

$ echo file1 > file1
diego@debian:

$ cat file2
file1
diego@debian:

Заключение

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

Поделиться в социальных сетях:

Типы пользователей и Права доступа в Linux

Добавить комментарий Отменить ответ

Источник

Unix / Linux — Основы файловой системы

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

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

Все в Unix считается файлом, включая физические устройства, такие как DVD-диски, USB-устройства и дисководы.

Структура каталогов

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

Файловая система Unix — это набор файлов и каталогов, который имеет следующие свойства:

У него есть корневой каталог ( / ), который содержит другие файлы и каталоги.

Это автономно. Нет никаких зависимостей между одной файловой системой и другой.

У него есть корневой каталог ( / ), который содержит другие файлы и каталоги.

Это автономно. Нет никаких зависимостей между одной файловой системой и другой.

Каталоги имеют конкретные цели и, как правило, содержат одинаковые типы информации для удобного поиска файлов. Ниже приведены каталоги, которые существуют в основных версиях Unix —

Это корневой каталог, который должен содержать только каталоги, необходимые на верхнем уровне структуры файла.

Здесь находятся исполняемые файлы. Эти файлы доступны всем пользователям

Это драйверы устройств

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

Содержит файлы общей библиотеки и иногда другие файлы, связанные с ядром

Содержит файлы для загрузки системы

Содержит домашний каталог для пользователей и других учетных записей

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

Содержит временные файлы, используемые между загрузками системы

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

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

Содержит двоичные (исполняемые) файлы, обычно для системного администрирования. Например, fdisk и ifconfig utlities

Содержит файлы ядра

Это корневой каталог, который должен содержать только каталоги, необходимые на верхнем уровне структуры файла.

Здесь находятся исполняемые файлы. Эти файлы доступны всем пользователям

Это драйверы устройств

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

Содержит файлы общей библиотеки и иногда другие файлы, связанные с ядром

Содержит файлы для загрузки системы

Содержит домашний каталог для пользователей и других учетных записей

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

Содержит временные файлы, используемые между загрузками системы

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

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

Содержит двоичные (исполняемые) файлы, обычно для системного администрирования. Например, fdisk и ifconfig utlities

Содержит файлы ядра

Навигация по файловой системе

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

Sr.No.Каталог и описание
1

Отображает имя файла

Перемещает вас в указанный каталог

Копирует один файл / каталог в указанное место

Определяет тип файла (двоичный, текстовый и т. Д.)

найти имя файла dir

Находит файл / каталог

имя файла заголовка

Показывает начало файла

меньше имени файла

Просматривает файл с конца или с начала

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

Создает указанный каталог

больше имени файла

Просматривает файл от начала до конца

Перемещает местоположение или переименовывает файл / каталог

Показывает текущий каталог, в котором находится пользователь

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

Показывает конец файла

коснитесь имени файла

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

Показывает расположение файла

Показывает местоположение файла, если он находится в вашем PATH

Отображает имя файла

Перемещает вас в указанный каталог

Копирует один файл / каталог в указанное место

Определяет тип файла (двоичный, текстовый и т. Д.)

найти имя файла dir

Находит файл / каталог

имя файла заголовка

Показывает начало файла

меньше имени файла

Просматривает файл с конца или с начала

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

Создает указанный каталог

больше имени файла

Просматривает файл от начала до конца

Перемещает местоположение или переименовывает файл / каталог

Показывает текущий каталог, в котором находится пользователь

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

Показывает конец файла

коснитесь имени файла

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

Показывает расположение файла

Показывает местоположение файла, если он находится в вашем PATH

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

Команда df

Sr.No.Команда и описание
1

Имя физической файловой системы

Всего килобайт свободного места на носителе

Всего килобайт использованного пространства (по файлам)

Всего килобайт, доступных для использования

Процент общего пространства, используемого файлами

На что монтируется файловая система

Имя физической файловой системы

Всего килобайт свободного места на носителе

Всего килобайт использованного пространства (по файлам)

Всего килобайт, доступных для использования

Процент общего пространства, используемого файлами

На что монтируется файловая система

Du Command

Команда du (использование диска) позволяет указать каталоги, чтобы показать использование дискового пространства в определенном каталоге.

Эта команда полезна, если вы хотите определить, сколько места занимает конкретный каталог. Следующая команда отображает количество блоков, используемых каждым каталогом. Один блок может занять 512 байт или 1 килобайт в зависимости от вашей системы.

Опция -h облегчает понимание вывода —

Монтирование файловой системы

Файловая система должна быть смонтирована, чтобы ее можно было использовать в системе. Чтобы увидеть, что в настоящий момент смонтировано (доступно для использования) в вашей системе, используйте следующую команду:

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

Размонтирование файловой системы

Команда mount позволяет вам получить доступ к вашим файловым системам, но в большинстве современных систем Unix функция автомонтирования делает этот процесс невидимым для пользователя и не требует вмешательства.

Квоты пользователей и групп

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

Квоты действуют в пределах двух пределов, которые позволяют пользователю предпринимать некоторые действия, если объем пространства или количество дисковых блоков начинают превышать установленные администратором ограничения —

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

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

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

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

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

Sr.No.Колонка и описание
1

Отображает использование диска и ограничения для пользователя группы

Это редактор квот. С помощью этой команды можно редактировать квоты пользователей или групп.

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

Это редактор квот командной строки

Это сообщает системе, что дисковые квоты должны быть включены в одной или нескольких файловых системах.

Это сообщает системе, что дисковые квоты должны быть отключены для одной или нескольких файловых систем.

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

Отображает использование диска и ограничения для пользователя группы

Это редактор квот. С помощью этой команды можно редактировать квоты пользователей или групп.

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

Это редактор квот командной строки

Это сообщает системе, что дисковые квоты должны быть включены в одной или нескольких файловых системах.

Это сообщает системе, что дисковые квоты должны быть отключены для одной или нескольких файловых систем.

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

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

Источник

Что считается файлами в oc unix

Системы управления файлами.

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

1. Файловая система ОС UNIX

· Блок начальной загрузки

· Список свободных блоков

· Область индексных дескрипторов

2. Несколько слов о файловой системе ОС Linux

В мире UNIX существует несколко разных видов файловых систем со своей структурой внешней памяти. Наиболее известны традиционная файловая система UNIX System V (s5) и файловая система семейства UNIX BSD (ufs).

Файл в системе UNIX представляет собой множество символов с произвольным доступом.

Файл имеет такую структуру, которую налагает на него пользователь.

Файловая система Unix, это иерархическая, многопользовательская файловая система.

Файловая система имеет древовидную структуру. Вершинами (промежуточными узлами) дерева являются каталоги со ссылками на другие каталоги или файлы. Листья дерева соответствуют файлам или пустым каталогам.

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

Диск разделен на блоки. Размер блока данных определяется при форматировании файловой системы командой mkfs и может быть установлен 512, 1024, 2048, 4096 или 8192 байтов.

Считаем по 512 байт (размер сектора).

Дисковое пространство делится на следующие области (см. рис.):

· область для хранения содержимого (данных) файлов;

· совокупность свободных блоков (связанных в список);

Блок начальной загрузки

Блок начальной загрузки

Блок размещен в блоке №0. (Вспомним, что размещение этого блока в нулевом блоке системного устройства определяется аппаратурой, так как аппаратной загрузчик всегда обращается к нулевому блоку системного устройства. Это последний компонент файловой системы, который зависит от аппаратуры.)

Он содержит оперативную информацию о состоянии файловой системы, а также данные о параметрах настройки файловой системы.

В частности суперблок содержит следующую информацию

· количество i- узлов (индексных дескрипторов);

· список свободных блоков;

Обратим внимание! Свободное пространство на диске образует связанный список свободных блоков. Этот список хранится в суперблоке.

Элементами списка являются массивы из 50 элементов (если блок = 512 байт, то элемент = 16 бит):

· в элементах массива №№1-48 записаны номера свободных блоков пространства блоков файлов с 2 до 49.

· в №0 элементе содержится указатель на продолжение списка, а

· в последнем элементе (№49) содержится указатель на свободный элемент в массиве.

Если какому-то процессу для расширения файла требуется свободный блок, то система по указателю (на свободный элемент) выбирает элемент массива, и блок с №, хранящимся в данном элементе, предоставляется файлу. Если происходит сокращение файла, то высвободившиеся номера добавляются в массив свободных блоков и корректируется указатель на свободный элемент.

Так как размер массива — 50 элементов, то возможны две критические ситуации:

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

2. Когда содержимое элементов массива свободных блоков исчерпалось (в этом случае нулевой элемент массива равен нулю) Если этот элемент нулю не равен, то это означает, что существует продолжение массива. Это продолжение считывается в копию суперблока в оперативной памяти.

Суперблок всегда находится в ОЗУ

Но! Если содержимое суперблока не будет записано на диск и выключено питание, то возникнут проблемы (несоответствие реального состояния файловой системы и содержимого суперблока). Но это уже требование к надежности аппаратуры системы.

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

Область индексных дескрипторов

Каждый индексный описатель (i- узел) файла содержит:

· Тип файла (файл/каталог/специальный файл/fifo/socket)

· Идентификатор владельца файла

· Идентификатор группы-владельца файла

· Время создания файла

· Время модификации файла

· Время последнего доступа к файлу

· Адреса блоков файла

! Обратите внимание. Здесь нет имени файла

Рассмотрим подробнее как организована адресация блоков, в которых размещен файл. Итак, в поле с адресами находятся номера первых 10 блоков файла.

Если файл превышает десять блоков, то начинает работать следующий механизм: 11-й элемент поля содержит номер блока, в котором размещены 128(256) ссылок на блоки данного файла. В том случае, если файл еще больше — то используется 12й элемент поля — он содержит номер блока, в котором содержится 128(256) номеров блоков, где каждый блок содержит 128(256) номеров блоков файловой системы. А если файл еще больше, то используется 13 элемент — где глубина вложенности списка увеличена еще на единицу.

Таким образом мы можем получить файл размером (10+128+128 2 +128 3 )*512.

Это можно представить в следующем виде:

Адрес 1-го блока файла

Адрес 2-го блока файла

Адрес 10-го блока файла

Адрес блока косвенной адресации (блока с 256 адресами блоков)

Адрес блока 2-й косвенной адресации (блока с 256 адресами блоков с адресами)

Адрес блока 3-й косвенной адресации (блока с адресами блоков с адресами блоков с адресами)

Теперь обратим внимание на идентификаторы владельца и группы и биты защиты.

В ОС Unix используется трехуровневая иерархия пользователей:

Первый уровень — все пользователи.

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

2) Защита доступа к файлу. Доступ к каждому файлу ограничивается по трем категориям:

· права владельца (что может делать владелец с этим файлом, в общем случае — не обязательно все, что угодно);

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

· все остальные пользователи системы;

По этим трем категориям регламентируются три действия: чтение из файла, запись в файл и исполнение файла (в мнемонике системы R,W,X, соответственно). В каждом файле по этим трем категориям определено — какой пользователь может читать, какой писать, а кто может запускать его в качестве процесса.

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

Элемент каталога состоит из двух полей:

(Для корневого каталога родитель ссылается на него же самого.)

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

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

Итак, чтобы получить доступ к файлу по имени, операционная система

1. находит это имя в каталоге, содержащем файл,

3. по номеру находит i- узел в области i-узлов,

4. из i-узла получает адреса блоков, в которых расположены данные файла,

5. по адресам блоков считывает блоки из области данных.

Монтирование файловой системы

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

Запрос от системы mount (на установку носителей и т.п.) позволяет встраивать в иерархию файлов файлы на сменных томах.

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

Команда mount имеет несколько опций, но обязательными аргументами стандартного ее использования являются:

имя файла блочного устройства и

Для монтирования соответствующего тома обычно задают пустой каталог.

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

Все, что выводится в файл /dev/console, будет просто появляться на экране терминала. При попытке чтения из файла /dev/console, вы будете получать (внимание!), не то, что нарисовано в данный момент на экране, а то, что вводится с клавиатуры.

Специальный файл /dev/rdsk/m197_c0d0s7 соответствует жесткому диску в целом

Файл /dev/dsk/m197_c0d0s соответствует его разделам.

«Если вы будете читать из этих файлов, то получите все байтики, как они лежат на жестком диске, с нулевого цилиндра и до последнего. А если вы в этот файл что-нибудь запишете, то получите (потом) богатый опыт по переформатированию и разметке жесткого диска.»

/dev/mem— файл, изображающий оперативную память.

Файловая система UNIX позволяет сильно сократить количество реальных обменов с ВЗУ, причем эшелонированная буферизация в ОС Unix делает число этих обменов еще меньше.

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

rmdir имя— уничтожение каталога

Несколько слов о файловой системе ОС Linux

Linux поддерживает различные типы файловых систем.

Реализованы системы управления файлами на основе FAT (для обращения к файлам в разделах с FAT ).

Существуют системы управления файлами на томах с HPFS и NTFS (только на чтение).

1. А.В. Гордеев, А.Ю. Молчанов «Системное программное обеспечение».

3. Специальные файлы UNIX.htm

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Sr.No.Команда и описание
1