Чтение онлайн

на главную - закладки

Жанры

Linux для пользователя

Костромин Виктор Алексеевич

Шрифт:

Эта трудность преодолевается следующим образом. Для каждого каталога (кроме корневого) в дереве каталогов однозначно определен "родительский каталог". В каждом каталоге имеются две особых записи. Одна из них обозначается просто точкой и является указанием на этот самый каталог, а вторая запись, обозначаемая двумя точками, - указатель на родительский каталог. Эти имена из двух точек и используются для записи относительных путей. Чтобы сделать текущим родительский каталог, достаточно дать команду

[user]$ cd..

А чтобы перейти по дереву каталогов на два "этажа" вверх, откуда спуститься в подкаталог kat1/kat2 надо дать команду

[user]$ cd../../kat1/kat2

Команда ls служит для вывода на экран списка имен файлов и подкаталогов

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

Примечание.

Задумайтесь, кстати: нет никаких особых "ящиков с файлами", есть просто файлы-списки, которые причисляют данный файл к определенному каталогу.

Если дать команду ls без параметров, то выводятся только имена файлов текущего каталога. Если нужно просмотреть содержимое не текущего, а какого-то другого каталога, надо указать команде ls полный или относительный путь к этому каталогу.

Кроме имени файла (или подкаталога) запись о нем в соответствующем каталоге содержит еще массу информации об этом файле. Для того, чтобы получить эту информацию, надо использовать дополнительные параметры команды ls. Если дать команду ls с параметром -l, то будут выданы не только имена файлов, но также данные о правах доступа к файлу (подробнее о правах будет рассказано ниже), количество жестких ссылок или имен файла (для каталога указывается число дополнительных блоков) [11] , имя владельца файла и группы файла, его размер и дата последней модификации. Вот небольшой пример.

11

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

[user]$ ls -l

итого 1171

drwxrwxr-x 2 kos kos 1024 Jun 20 22:42 NotR

drwx------ 2 kos kos 1024 Jun 27 21:02 Star

– rw-rw-r-- 1 kos kos 17351 Nov 2 23:59 arch.htm

– rw-rw-r-- 1 kos kos 19847 Dec 11 20:23 contents.htm

– rw-rw-r-- 1 kos kos 48866 Nov 2 23:59 edit.htm

– rw-rw-r-- 1 kos kos 38867 Dec 12 20:58 filesystem1.htm

– rw-rw-r-- 1 kos kos 29545 Dec 11 20:23 first_start.htm

drwxr-xr-x 3 kos kos 2048 Sep 24 21:33 img

– rw-rw-r-- 1 kos kos 21590 Dec 11 19:42 init.htm

drwxrwxr-x 2 kos kos 1024 Sep 27 22:35 pic

– rw-rw-r-- 1 kos kos 11084 Nov 8 21:26 preface.htm

Если дополнительно задать параметр -i, то в первой колонке будут отображены индексы файлов (номера соответствующих inode). При задании параметра -t сортировка файлов будет производиться не по именам, а по времени модификации файла. Задание параметра -u приводит к тому, что вместо времени модификации файла будет выводиться время последнего доступа к файлу. Параметр -r меняет порядок сортировки на обратный (используется вместе с параметрами -l и -t). Заметим еще, что параметры можно перечислять как отдельно:

[user]$ ls -l -i - r

так и объединять:

[user]$ ls -lir

На этом мы закончим краткое описание команды ls (подробнее см. соответствующую man- или info-страницу) и перейдем к рассмотрению основных каталогов в каталоговой структуре Linux. 4.3. Назначение основных системных каталогов

Если вы работали, например, с Windows 95, то вы знаете, что, хотя пользователь имеет полную свободу в организации структуры каталогов, некоторые "обычаи" все же сохраняются. Так системные файлы располагаются обычно в подкаталоге C:\Windows, вновь устанавливаемые программы по умолчанию размещаются в каталоге C:\Program Files и т. д.. В Linux типовая структура каталогов выдерживается, пожалуй, даже более строго. Более того, существует даже стандарт на структуру каталогов для UNIX-подобных ОС, так называемый Filesystem Hierarchy Standart (FHS), полный текст которого можно найти по адресу http://www.pathname.com/fhs/ [12] . Дистрибутив Red Hat в основном придерживается стандарта FHS.

12

Перевод версии 2.2 "Стандарта на структуру каталогов файловой системы (Filesystem Hierarchy Standard) для UNIX-подобных операционных систем" вы найдете на страничке моих статей и переводов. Но перевод этот был сделан в январе 2003 г., а в настоящее время уже выпущена следующая версия этого стандарта, перевести которую на русский язык ни я, ни кто-либо другой еще не удосужился.

В табл. 4.1 дан краткий перечень основных стандартно создаваемых каталогов той файловой структуры, которая создается при установке дистрибутива Red Hat (и его последователей).

В левом столбце перечислены подкаталоги корневого каталога, во втором столбце - некоторые основные (далеко не все!) подкаталоги второго уровня, а в третьем столбце даны краткие пояснения о назначении всех этих каталогов. Пояснения по необходимости очень краткие, более подробно с основными каталогами вы можете познакомиться по тексту стандарта FHS .

Таблица 4.1. Структура каталогов Red Hat Linux

Поделиться:
Популярные книги

Системный Нуб 2

Тактарин Ринат
2. Ловец душ
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Системный Нуб 2

Чехов книга 3

Гоблин (MeXXanik)
3. Адвокат Чехов
Фантастика:
попаданцы
альтернативная история
аниме
6.00
рейтинг книги
Чехов книга 3

Неудержимый. Книга X

Боярский Андрей
10. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга X

Изгой. Пенталогия

Михайлов Дем Алексеевич
Изгой
Фантастика:
фэнтези
9.01
рейтинг книги
Изгой. Пенталогия

Идеальный мир для Лекаря 8

Сапфир Олег
8. Лекарь
Фантастика:
юмористическое фэнтези
аниме
7.00
рейтинг книги
Идеальный мир для Лекаря 8

Совок 11

Агарев Вадим
11. Совок
Фантастика:
попаданцы
7.50
рейтинг книги
Совок 11

Везунчик. Проводник

Бубела Олег Николаевич
3. Везунчик
Фантастика:
фэнтези
6.62
рейтинг книги
Везунчик. Проводник

На границе империй. Том 9. Часть 5

INDIGO
18. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 5

Бальмануг. Невеста

Лашина Полина
5. Мир Десяти
Фантастика:
юмористическое фэнтези
5.00
рейтинг книги
Бальмануг. Невеста

СД. Том 14

Клеванский Кирилл Сергеевич
Сердце дракона
Фантастика:
фэнтези
героическая фантастика
7.44
рейтинг книги
СД. Том 14

Кодекс Охотника. Книга XV

Винокуров Юрий
15. Кодекс Охотника
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XV

Лишняя дочь

Nata Zzika
Любовные романы:
любовно-фантастические романы
8.22
рейтинг книги
Лишняя дочь

Король Масок. Том 1

Романовский Борис Владимирович
1. Апофеоз Короля
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Король Масок. Том 1

Жандарм 3

Семин Никита
3. Жандарм
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Жандарм 3
Каталог Подкаталоги Назначение
/bin Этот каталог содержит в основном готовые к исполнению программы, большинство из которых необходимы во время старта системы (или в однопользовательском системном режиме, используемом для отладки). Здесь хранится значительное количество общеупотребительных команд Linux
/boot Содержит основные постоянные файлы для загрузки системы, в частности загружаемое ядро. Файлы из этого каталога нужны только во время загрузки системы
/dev Каталог специальных файлов или файлов устройств. О них мы поговорим чуть подробнее в одном из следующих подразделов. Можете также заглянуть в man mknod(1)
/etc Этот каталог и его подкаталоги содержат большинство данных, необходимых для начальной загрузки системы и основные конфигурационные файлы. В /etc находятся, например, файл inittab, определяющий загружаемую конфигурацию, и файл паролей пользователей passwd. Часть конфигурационных файлов может находится и в /usr/etc. Каталог /etc не должен содержать двоичных файлов (их следует перенести в /bin или /sbin). Ниже приводится назначение основных (но далеко не всех!) подкаталогов каталога /etc
/etc/rc.d Этот подкаталог содержит файлы, которые используются в процессе начальной загрузки системы. Подробнее о них и вообще о процессе загрузки будет рассказано в разд. 8.2
/etc/skel Когда создается новый пользователь и account для него, то файлы из этого каталога копируются во вновь созданный домашний каталог пользователя
/etc/sysconfig Каталог, содержащий некоторые (но не все) конфигурационные файлы системы