Лабораторная работа № 5 2011
Цель работы – практическое знакомство с организацией данных основной файловой системы ОС Linux и используемыми утилитами.
1. КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
Данные, хранящиеся на любом носителе, образуют файл Linux. Более того, многие устройства, подключенные к компьютеру (начиная с клавиатуры и заканчивая любыми внешними устройствами), Linux представляет как файлы (так называемые специальные файлы). В Linux определено несколько различных типов файлов. В основном пользователь имеет дело с файлами трех типов: обычными файлами, предназначенными для хранения данных, каталогами и файлами-ссылками.
Файловая система имеет иерархическую структуру. Linux может работать с различными типами файловых систем. В этой работе будут описаны возможности файловых систем Ext2/Ext3. В файловой системe Ext2 каждый каталог — это отдельный файл особого типа («d», от англ. «directory»), отличающийся от обычного файла с данными: в нем могут содержаться только ссылки на другие файлы и каталоги.
Допустимые имена файлов и каталогов
Linux всегда различает заглавные и строчные буквы в именах файлов и каталогов, поэтому «student», «Student» и «STUDENT» будут тремя разными именами.
Есть несколько символов, допустимых в именах файлов и каталогов, которые нужно использовать с осторожностью. Это спецсимволы «*», «\», «&», «», «;», «(«, «)», «|», а также символы пробела и табуляции.
В Linux в именах файлов и каталогов допустимо использовать не только символы латинского алфавита, но и любые символы любого языка.
В файловой системе Linux нет никаких предписаний по поводу расширения: в имени файла может быть любое количество точек (в том числе ни одной), а после последней точки может стоять любое количество символов. Хотя расширения не обязательны, они широко используются: расширение позволяет программе, не открывая файл, только по его имени определить, какого типа данные в нем содержатся. Определить тип содержимого файла можно и на основании самих данных (сигнатур). Многие форматы предусматривают указание в начале файла, как следует интерпретировать дальнейшую информацию.
В Linux есть утилита file, которая предназначена для определения типа содержащихся в файле данных. Эта утилита никогда не доверяет расширению файла (если оно присутствует), а анализирует сами данные. file различает не только разные данные, но и разные типы файлов.
1.1. Дерево каталогов
В большинстве современных файловых систем используется иерархическая модель организации данных: существует один каталог, объединяющий все данные в файловой системе — это «корень» всей файловой системы, корневой каталог. Корневой каталог может содержать любые объекты файловой системы, и в частности, подкаталоги. Подкаталоги также могут содержать любые объекты файловой системы и подкаталоги и т. д. Таким образом, все, что записано на диске — файлы, каталоги и специальные файлы — обязательно «принадлежит» корневому каталогу: либо непосредственно (содержится в нем), либо на некотором уровне вложенности.
Структуру файловой системы можно представить наглядно в виде дерева, «корнем» которого является корневой каталог, а в вершинах расположены все остальные каталоги. На рис. 1 изображено дерево каталогов, курсивом обозначены имена файлов, прямым начертанием — имена каталогов.
Рис. 1.Дерево каталогов в Linux
В любой файловой системе Linux всегда есть только один корневой каталог, который называется «/». Пользователь Linux всегда работает с единым деревом каталогов, даже если разные данные расположены на разных носителях: жестких или сетевых дисках, съемных дисках, CD-ROM и т. п. Такое представление отличается от технологии, применяемой в Windows, где для каждого устройства, на котором есть файловая система, используется свой корневой каталог, обозначенный литерой, например «a», «c», «d» и т. д. Для того чтобы отключать и подключать файловые системы на разных устройствах в состав одного общего дерева, используются процедуры монтирования и размонтирования. После того, как файловые системы на разных носителях подключены к общему дереву, содержащиеся на них данные доступны так, как если бы все они составляли единую файловую систему: пользователь может даже не знать, на каком устройстве какие файлы хранятся.
Положение любого каталога в дереве каталогов описывается при помощи полного пути. Полный путь всегда начинается от корневого каталога и состоит из перечисления всех вершин, встретившихся при движении по ветвям дерева до искомого каталога включительно. Названия соседних вершин разделяются символом «/» («слэш»). В Linux полный путь, например, до каталога «methody» в файловой системе, приведенной на рис. 1, записывается следующим образом /home/methody.
Лабораторная работа № 6
Цель работы – практическое знакомство с организацией данных основной файловой системы ОС Linux и используемыми утилитами.
1. КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
Данные, хранящиеся на любом носителе, образуют файл Linux. Более того, многие устройства, подключенные к компьютеру (начиная с клавиатуры и заканчивая любыми внешними устройствами), Linux представляет как файлы (так называемые специальные файлы). В Linux определено несколько различных типов файлов. В основном пользователь имеет дело с файлами трех типов: обычными файлами, предназначенными для хранения данных, каталогами и файлами-ссылками.
Файловая система имеет иерархическую структуру. Linux может работать с различными типами файловых систем. В этой работе будут описаны возможности файловой системы Ext3fs. В файловой системe Ext3fs каждый каталог — это отдельный файл особого типа («d», от англ. «directory»), отличающийся от обычного файла с данными: в нем могут содержаться только ссылки на другие файлы и каталоги.
Допустимые имена файлов и каталогов
Linux всегда различает заглавные и строчные буквы в именах файлов и каталогов, поэтому «student», «Student» и «STUDENT» будут тремя разными именами.
Есть несколько символов, допустимых в именах файлов и каталогов, которые нужно использовать с осторожностью. Это спецсимволы «*», «\», «&», «», «;», «(«, «)», «|», а также символы пробела и табуляции.
В Linux в именах файлов и каталогов допустимо использовать не только символы латинского алфавита, но и любые символы любого языка.
В файловой системе Linux нет никаких предписаний по поводу расширения: в имени файла может быть любое количество точек (в том числе ни одной), а после последней точки может стоять любое количество символов. Хотя расширения не обязательны, они широко используются: расширение позволяет программе, не открывая файл, только по его имени определить, какого типа данные в нем содержатся. Определить тип содержимого файла можно и на основании самих данных (сигнатур). Многие форматы предусматривают указание в начале файла, как следует интерпретировать дальнейшую информацию.
В Linux есть утилита file, которая предназначена для определения типа содержащихся в файле данных. Эта утилита никогда не доверяет расширению файла (если оно присутствует), а анализирует сами данные. file различает не только разные данные, но и разные типы файлов.
1.1. Дерево каталогов
В большинстве современных файловых систем используется иерархическая модель организации данных: существует один каталог, объединяющий все данные в файловой системе — это «корень» всей файловой системы, корневой каталог. Корневой каталог может содержать любые объекты файловой системы, и в частности, подкаталоги. Подкаталоги также могут содержать любые объекты файловой системы и подкаталоги и т. д. Таким образом, все, что записано на диске — файлы, каталоги и специальные файлы — обязательно «принадлежит» корневому каталогу: либо непосредственно (содержится в нем), либо на некотором уровне вложенности.
Структуру файловой системы можно представить наглядно в виде дерева, «корнем» которого является корневой каталог, а в вершинах расположены все остальные каталоги. На рис. 1 изображено дерево каталогов, курсивом обозначены имена файлов, прямым начертанием — имена каталогов.
Рис. 1.Дерево каталогов вext3fs
В любой файловой системе Linux всегда есть только один корневой каталог, который называется «/». Пользователь Linux всегда работает с единым деревом каталогов, даже если разные данные расположены на разных носителях: жестких или сетевых дисках, съемных дисках, CD-ROM и т. п. Такое представление отличается от технологии, применяемой в Windows, где для каждого устройства, на котором есть файловая система, используется свой корневой каталог, обозначенный литерой, например «a», «c», «d» и т. д. Для того чтобы отключать и подключать файловые системы на разных устройствах в состав одного общего дерева, используются процедуры монтирования и размонтирования. После того, как файловые системы на разных носителях подключены к общему дереву, содержащиеся на них данные доступны так, как если бы все они составляли единую файловую систему: пользователь может даже не знать, на каком устройстве какие файлы хранятся.
Положение любого каталога в дереве каталогов описывается при помощи полного пути. Полный путь всегда начинается от корневого каталога и состоит из перечисления всех вершин, встретившихся при движении по ветвям дерева до искомого каталога включительно. Названия соседних вершин разделяются символом «/» («слэш»). В Linux полный путь, например, до каталога «methody» в файловой системе, приведенной на рис. 1, записывается следующим образом /home/methody.
Лабораторная работа 7. Тема «Файловые системы ос Linux».
2. После загрузки ОС Linux и запроса имени ввести имя и пароль пользователя.
3. По окончании загрузки ОС запустить терминал.
4. Знать команды, приведенные в предыдущем пункте. Привести пример работы команд, выбранных преподавателем (3 действия).
ls, pwd, cat, man, cd, mkdir, mv, cp, ln, cat ls –s, ls –i, rm, rmdir, chmod u=rwx g=rwx o=rwx,
df –h, du –s –u /directory, free –m, top, htop, iftop, uname –a (sys info), lsb_release,
adduser newuser, passwd newuser
5. Создать файл с информацией общего плана о вашей системе, включая
информацию о дисках и их разметки.
6. Создать в домашнем каталоге следующую структуру подкаталогов (существующие каталоги не удалять!):
7. Скопировать файл /etc/group в каталоги 1, 2, 3 и 4 используя абсолютные имена копируемого файла и каталога назначения.
8. С помощью утилиты file вывести на экран сведения о 3 — 4 различных файлах (в том числе из каталогов /bin и /dev).
9. Выполнить команду ls –l /dev используя таблицу обозначений типов файлов, перечислить типы файлов, хранящихся в каталоге /dev.
11. Используя справочную систему, ознакомиться с ключами утилиты ls -R,-1 (единица), -m,
—color, ключи, определяющие порядок вывода.
12. Создать жесткую и символическую ссылки для одного из созданных в п.2 файлов.
Получить информацию о разделе, расположенном на устройстве /dev/sda1 с использованием dumpe2fs
Вывести информацию об операциях чтения/записи, а также общей
Вывести значения системных счетчиков с помощью команды sar:
Показать параметры ядра с помощью команды sysctl
Отобразить информацию, хранящуюся в inode с помощью команды stat
Проверить с помощью команды filefrag фрагментацию файла.
Контрольные вопросы
Типы файлов ос Linux
Данные, хранящиеся на любом носителе, образуют файл Linux. Более того, многие устройства, подключенные к компьютеру (начиная с клавиатуры и заканчивая любыми внешними устройствами), Linux представляет как файлы (так называемые специальные файлы). В Linux определено несколько различных типов файлов. В основном пользователь имеет дело с файлами трех типов: обычными файлами, предназначенными для хранения данных, каталогами и файлами-ссылками.
Назначение утилиты file.
В Linux есть утилита file, которая предназначена для определения типа содержащихся в файле данных. Эта утилита никогда не доверяет расширению файла (если оно присутствует), а анализирует сами данные. file различает не только разные данные, но и разные типы файлов.
Структура дерева каталогов ос Linux.
Структуру файловой системы можно представить наглядно в виде дерева, «корнем» которого является корневой каталог, а в вершинах расположены все остальные каталоги. На рис. 1 изображено дерево каталогов, курсивом обозначены имена файлов, прямым начертанием — имена каталогов.
В любой файловой системе Linux всегда есть только один корневой каталог, который называется «/»