The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Каталог документации / Раздел "Документация для Linux" / Оглавление документа

Занятие 2.

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

Вид занятия:  лекция, практическое занятие.

Учебные вопросы:

1. Основные понятия: корневой каталог, точка монтирования,

   домашний каталог.

2. Типы файлов. Обычные файлы. Каталоги. Файлы устройств.

   Команды ls.

3. Навигация по файловой системе: команды cd, pushd,

   popd, pwd.  

4. Создание, удаление и копирование файлов. Команды

   touch, rm, cp.

5. Операции с каталогами. Команды mkdir и rmdir.

6. Важнейшие каталоги файловой системы Linux.  

Время: 90 минут

Литература:

1. Робачевский А.М. Операционная система Unix. - СПб.:

   БВХ - Санкт-Петербург, 1999. - 528 с., ил.

2. Армстронг (мл.) Джеймс. Секреты Unix : 2-е изд.: Пер. с

   англ.: Уч. пос. - М.: Издательский дом Вильямс, 2000. -

   1072 с.: ил. - Парал. тит. англ.

3. Паркер Тим. Linux 5.2. Энциклопедия пользователя: Пер. с

   англ. - К.: Издательство ДиаСофт, 1999. - 688 с.


Ход занятия.

1. Файловая система Linux, в отличие от операционных систем семейства Windows не не разделена по томам (дискам, устройствам), а имеет единую древовидную структуру, в основе которой лежит корневой каталог. Корневой каталог  - это уровень файловой системы, выше которого по дереву каталогов подняться невозможно. В Linux корневой каталог обозначается как / (именно / - слэш, а не \ - обратный слэш). Система позволяет устанавливать много корневых каталогов. Так например для некоторого пользователя ftp /home будет корневым каталогом и при обращении к клиенту ftp на смену каталога на корневой пользователь будет попадать в /home.

Возникает вопрос, а как тогда разные физические устройства участвуют в формировании единой файловой системы? Сделаем небольшой экскурс в историю. В то время, когда создавалась ОС Юникс устройства - накопители информации представляли собой ящик размером с письменный стол и назывались магнитными барабанами. В то время не было необходимости подключать и отключать его по нескольку раз в час. Поэтому не был выработан и механизм быстрой смены. Для подключения любого устройства к файловой системе используется так называемая точка монтирования - каталог, все вложенные уровни которого являются файловой системой на устройстве-носителе. Например, при монтировании дискеты обычно используется каталог /media/floppy. То есть, все каталоги и файлы, находящиеся внутри /media/floppy на самом деле содержаться на дискете, вставленной в дисковод компьютера. Для подключения, или монтирования, устройств используется специальная команда, которую мы изучим на следующих занятиях. Таким образом подключаются и сетевые файловые системы, то есть такие системы, которые реально находятся где-то на сервере сети, однако различий в работе с ними пользователь не ощущает и видит сетевые файлы и каталоги, как если бы они были расположены на локальном компьютере.

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

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

[student@ns lesson_2]$ ls -l

total 40

-rwxr-xr-x    1 root     root         2872 Aug 27  2001 arch

-rw-rw-rw-    1 root     root          612 Jun 25  2001 chain.b

brw-rw----    1 root     disk       3,   1 Feb  3 15:38 hda1

drwxrwxrwx    2 root     root        32768 Feb  3 15:38 ida

Преподаватель объясняет, как различить разные типы устройств, перечисляет основные типы:

-   простой файл

d   каталог

l   ссылка

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

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

Объясняет понятие скрытых файлов, а также каталогов . и ... Показывает разницу между командой ls и ls -a.

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

pwd - показывает полное имя каталога, в котором находится пользователь.

[student@ns student]$ pwd

/home/student

[student@ns student]$_

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

[student@ns student]$ pwd

/home/student

[student@ns student]$ cd primer

[student@ns primer]$ pwd

/home/student/primer

[student@ns primer]$ cd ..

[student@ns student]$ pwd

/home/student

[student@ns student]$ cd /home/student/primer

[student@ns primer]$ pwd

/home/student/primer

[student@ns primer]$ cd

[student@ns student]$ pwd

/home/student

[student@ns student]$ cd /bin

[student@ns bin]$ pwd

/bin

[student@ns bin]$ cd ~

[student@ns student]$ pwd

/home/student

[student@ns student]$_

pushd, popd - эти команды работают в связке. Команда pushd изменяет каталог на указанный. pushd c параметром .. изменяет каталог на тот, который находится на один уровень выше по дереву каталогов. Основное отличие этой команды от cd в том, что вся история смены каталогов запоминается в стек и потом может быть использована для быстрой обратной навигации с помощью команды popd.

[student@ns student]$ pushd /var

/var ~

[student@ns var]$ pushd log

/var/log /var ~

[student@ns log]$ popd

/var ~

[student@ns var]$ popd

~

[student@ns student]$

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

Команда cp используется для копирования файлов. Её синтаксис таков:

cp [параметры] <имя файла источника> <имя каталога приемника>

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

[student@ns primer_3]$ cd ../primer_1/in_primer_1

[student@ns in_primer_1]$ ls

[student@ns primer_3]$ cd ../primer_3

[student@ns primer_3]$ cp in_primer_3 ../primer_1/in_primer_1/

[student@ns primer_3]$ cd ../primer_1/in_primer_1

[student@ns in_primer_1]$ ls

in_primer_3

[student@ns primer_2]$ cd ../primer_2

[student@ns primer_2]$ ls

in_primer_2  in_primer_2_2

[student@ns primer_3]$ cp -R * ../primer_2

[student@ns primer_3]$ cd ../primer_2

[student@ns primer_2]$ ls

in_primer_2  in_primer_2_2  in_primer_3

[student@ns primer_2]$

Команда touch позволяет создавать файлы. Её применение наиболее просто: touch <имя файла>. Если файл с заданным именем существует в текущей директории, команда touch обновит его время создания на текущее.

[student@ns lesson_3]$ ls

primer_1  primer_2  primer_3

[student@ns lesson_3]$ touch file

[student@ns lesson_3]$ ls

file  primer_1  primer_2  primer_3

[student@ns lesson_3]$_

Команда rm используется для удаления файлов. Основные параметры, используемые с командой rm это -i (удаление с подтверждением удаления), -r (рекурсивное удаление) и -f (удаление всех файлов без подтверждения), -v (подробный описание производимых действий). Параметры -r и -f используются для удаления большого количества файлов. Но при их использовании необходимо быть предельно осторожным, т.к. с помощью этих параметров можно уничтожить систему.

[student@ns lesson_3]$ rm -iv ./file

rm: remove `./file'? y

removing `./file'

[student@ns lesson_3]$_

5. Операции с  каталогами также важны для пользователя Linux, как и основные операции с файлами. Основные команды, используемые при работе с каталогами это - rmdir и mkdir.

Команда mkdir позволяет создать каталог:

[student@ns student]$ ls

file  primer_1  primer_2  primer_3

[student@ns student]$ mkdir catalog

[student@ns student]$ ls

catalog file  primer_1  primer_2  primer_3

[student@ns student]$_

rmdir, наоборот, позволяет удалить каталог:

[student@ns student]$ ls

catalog file  primer_1  primer_2  primer_3

[student@ns student]$ mkdir catalog

[student@ns student]$ ls

file  primer_1  primer_2  primer_3

[student@ns student]$_

Обращаю ваше внимание на то, что команда rmdir, без использования дополнительных параметров, может удалять ТОЛЬКО ПУСТЫЕ КАТОЛОГИ.

6. Файловая система Linux, как и любой другой unix-подобной операционной системы, имеет строгую структуру каталогов. Каждый дистрибутив Linux может несколько изменять структуру в зависимости от предпочтений разработчиков. Мы рассмотрим те каталоги, которые используются в каждом дистрибутиве:

Имя каталога

Описание

 

/bin

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

/boot

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

/dev

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

/etc

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

/home

содержит дамашние папки пользователей

/lib

содержит основные библиотеки, необходимые для нормальной работы системы

/lost+found

информация, восстановленная при проверке файловой системы на наличие ошибок

/mnt

содержит каталоги - точки монтирования переносимых файловых систем (floppy, cdrom, etc.)

/opt

каталог предназначен для коммерческого программного обеспечения

/proc

внутри этого каталога находится виртуальная файловая система proc, создаваемая ядром Linux на лету

/sbin

утилиты суперпользователя

/tmp

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

/usr

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

/var/log

содержит файлы журналов




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру