Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
63
Добавлен:
20.04.2015
Размер:
2 Mб
Скачать

Лабораторная работа 3 файловая система

Важнейшей задачей операционных систем является управление файлами. Основы файловой системы (ФС) семейства UNIX/Linux заложены давно. Ряд ее элементов сохранили актуальность и до настоящего времени. Но современные версии UNIX дополнены рядом новых черт, соответствующих современному представлению о возможностях таких систем. К примеру, основной файловой системой для Linux долгое время была ext2. Сейчас при установке предлагается выбрать из ext2 или ext3. Вторая является более поздней разработкой и дополнена, в частности, средствами журналирования.

Для тех, кто работал только на компьютерах, управляемых Windows, отметим еще одну интересную особенность UNIX - необходимость монтирования внешних устройств. Ранее для этого надо было использовать команду mount. Интересно, что в справочном руководстве этой команды, включенной в версию ASP Linux 14, указан список почти 30 файловых систем, доступных для использования. В современных версиях Linux операция монтирования выполняется автоматически, но размонтировать дискеты, CD ROM или USB-flash накопители надо вручную.

Задание 24.

Изучите по результатам команды

man mount

какие файловые системы (опция -t) доступны для монтирования. Командой df -T определите тип файловой системы основного раздела диска, с которого загружается операционная система.

В этой лабораторной работе сначала рассмотрим, как в Linux реализованы следующие понятия файловых систем: иерархическая структура, права доступа и типы файлов. Далее будут изучены основные утилиты работы с ФС.

3.1. Изучим иерархическую файловую систему

Как отмечалось ранее, файловая система строится по иерархическому принципу. В семействе операционных систем UNIX сложился некоторый стандартный набор каталогов. Определено, что верхним уровнем ФС служит только один, корневой с именем «/» (root directory). Далее располагаются подчиненные ему подкаталоги. В стандарте Filesystem Hierarchy Standard. (FHS) описано назначение многих из них. По адресу http://www.pathname.com/fhs с этим можно познакомиться подробно.

Команда

dir /

выведет список каталогов подчиненных непосредственно корневой директории.

bin dev home lost+found misc net proc sbin srv tmp var boot etc lib media mnt opt root selinux sys usr

Опишем некоторые из этих них, перечисленные в стандарте.

/boot

Основная информация, необходимая для загрузки системы, хранится в каталоге с таким именем. Там же чаще всего располагается сам файл, составляющий основу системы и называемый ядром. Уже отмечалось, что для нашей системы это имя - vmlinuz-2.6.26.3-29.0.140asp.i686.

Рис. 3.1. Содержимое каталога /boot ASPLinux 14 Live CD.

/bin и /sbin

Это каталоги содержат системные утилиты. Но последние могут располагаться еще и в других местах ФС, к примеру, в /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin. Ранее отмечалось, что такие каталоги зафиксированы в переменной окружения оболочки с именем PATH.

/lib и /include

Для тех, кто занимается программированием и особенно на С, содержимое этих каталогов понятно. Тут сохраняются заголовочные и библиотечные файлы, необходимые при разработке программ. Такие имена часто разбросаны по иерархической системе, так же как и /bin и /sbin.

/etc

В директории с таким именем сохраняется информация о многих системных параметрах. Она содержит много подчиненных каталогов, объединяющих информацию по назначению. В частности, сценарии необходимые при загрузке системы, хранятся по адресу /etc/rc.d. Здесь d обозначает уровень выполнения операционной системы. Например, для восстановления системы после сбоя должен быть выбран уровень 1. В этом случае может работать только один пользователь - root в режиме командной строки. Он имеет максимум прав. Завершение системы - это уровень 0, а перезагрузка - 6.

Заметим, что первых версиях Windows системные параметры хранились в системных каталогах в файлах *ini. Но, с определенного времени, системный реестр стал собранием, единым хранилищем всех таких параметров. В операционных системах семейства UNIX/Linux системные параметры, кроме каталога /etc, разбросаны в разных частях ФС.

/proc

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

/root

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

/home/имя пользователя

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

/usr

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

/var

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

/lost+found

Данные отсюда используются для восстановления системы.

Временные файлы хранятся в

/tmp

Наша версия содержит один каталог, который не всегда присутствует в системе.

/media

Он позволяет получить доступ к различным устройствам, например, таким как CD ROM, flash или floppy disk и даже разделы Windows. Традиционно для доступа к другим файловым системам служит каталог /mnt.

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

Задание 25.

Изучите, какие из приведенных стандартных каталогов присутствуют в системе. Определите, сколько файлов и каталогов находятся в /boot, /usr и /etc.

Соседние файлы в папке Операционные системы