Структура файловой системы
Север
2008-02-06
Первой существенной разницей между Slackware Linux и системами DOS или Windows является файловая система. Специально для новичков: мы не используем буквы дисков для идентификации различных разделов. В Linux существует один главный каталог. Вы можете сравнить его с диском C: в DOS. Все разделы в вашей системе монтируются в подкаталоги главного каталога. Это можно считать неким подобием постоянно расширяющегося жёсткого диска.
Мы называем главный каталог корневым и обозначается он одной косой чертой (/). Такой подход может показаться странным, однако он значительно упрощает жизнь, когда вам нужно увеличить дисковое пространство. Допустим, например, что у вас не хватает места на диске, на котором находится каталог /home. Большинство людей устанавливают Slackware и делают один большой корневой раздел. Поскольку раздел может быть примонтирован в любой каталог, вы можете просто пойти в магазин, приобрести новый жёсткий диск и примонтировать его в /home. Теперь в вашей системе появилось новое дисковое пространство. И всё это без особых затруднений.
Ниже представлены описания главных каталогов верхнего уровня, имеющихся в Slackware.
bin
В нём находятся важнейшие пользовательские программы. Они представляют собой минимальный набор программ, необходимый пользователю для работы в системе. Это программы наподобие командных процессоров и команд для работы с файловой системой (ls, cp и т.п.). Каталог /bin обычно не подвергается изменениям после установки системы. Если это происходит, то, как правило, в виде предоставляемых нами обновлений пакетов.
boot
Файлы, используемые загрузчиком Linux (LILO). В этом каталоге также происходят небольшие изменения после установки системы. В нём находится ядро, начиная со Slackware версии 8.1. В предыдущих релизах ядро хранилось просто в / , однако распространённой практикой является помещение ядра и связанных файлов именно в этот каталог для упрощения двойной загрузки.
dev
В Linux всё является файлом, даже аппаратное обеспечение, наподобие последовательных портов, жёстких дисков и сканеров. Для получения доступа к этому оборудованию должен присутствовать файл, называемый узлом устройства. Все узлы устройств находятся в каталоге /dev. Вы найдёте это справедливым для многих Unix-подобных операционных систем.
etc
В этом каталоге находятся конфигурационные файлы системы: от конфигурационных файлов X Window, базы данных пользователей, до загрузочных скриптов системы. Со временем системный администратор очень хорошо познакомится с этим каталогом.
home
Linux является многопользовательской операционной системой. Каждый пользователь в системе имеет уникальную учётную запись и отдельный каталог для личных файлов. Этот каталог также называется домашним каталогом пользователя. Каталог /home предназначен как раз для размещения в нём домашних каталогов пользователей.
lib
Здесь находятся системные библиотеки, необходимые для базовых операций и работы системы. Среди всего прочего в нём находятся библиотека C, динамический компоновщик, библиотека ncurses и модули ядра.
mnt
В этом каталоге находятся временные точки монтирования для работы с жёскими дисками и съёмными накопителями. В нём вы найдёте точки монтирования своих приводов CD-ROM и дисководов.
opt
Пакеты с опциональным программным обеспечением. Идея, лежащая в основе /opt, заключается в том, чтобы каждый программный пакет устанавливался в /opt/software-package, что упрощает его удаление в будущем. Slackware помещает в /opt некоторые программы (как, например, KDE в /opt/kde), однако вы свободно можете помещать в него всё, что угодно.
proc
Это уникальный каталог. Он является не реальной, а виртуальной частью файловой системы, которая предоставляет доступ к информации о ядре. Различные куски информации, о которых (по мнению ядра) вы хотите знать, представлены в виде файлов в каталоге /proc. С помощью некоторых из этих файлов вы можете также отправлять информацию в ядро. Попробуйте выполнить cat /proc/cpuinfo.
root
Системный администратор известен в системе как root. Домашним каталогом root'а является /root, а не /home/root. Причина довольно проста. Что будет, если /home находится на отдельном разделе (не на /) и не может быть примонтирован? root'у скорее всего потребуется войти в систему и восстановить её работоспособность. Если его домашний каталог находится на повреждённой файловой системе, у него возникнут трудности со входом в систему.
sbin
Здесь находятся важнейшие программы, запускаемые root'ом и во время процесса загрузки системы. Обычные пользователи не запускают программы из этого каталога.
tmp
Место для хранения временных данных. Все пользователи имеют право на чтение и запись в этот каталог.
usr
Это большой каталог в системе Linux. Практически всё остальное находится именно в нём: программы, документация, исходный код ядра и система X Window. Это каталог, в который вы скорее всего будете устанавливать программы.
var
Здесь находятся файлы журналов системы, кэшируемые данные и блокировочные файлы программ. Этот каталог предназначен для часто изменяющихся данных.
Теперь вы хорошо осведомлены о каталогах файловой системы и о том, что они содержат. Более подробная информация о структуре файловой системы доступна на странице руководства hier(7). Следующий раздел поможет вам легко находить нужные файлы без необходимости делать это вручную.