Все операционные системы семейства W: [UNIX], включая Linux, базируются на одной универсальной идее, заложенной в их общем предке, определившей основные черты семейства — операционной системе UNICS.
В аббревиатуре UNICS, или же UNiplexed Information & Computing Service, центральное место занимает идея «uniplex»ирования, или же односоставности (односложности) — идея решать разные задачи единым способом. (Более поздняя аббревиатура UNIX произносится идентично, но на одну букву короче).
Одним из выражений этой идеи является утверждение о том, что информация есть файл, откуда бы эта информация в систему не поступала.
При помощи файлов обеспечивается доступ к информации на устройствах хранения (записанной ранее), информации с устройств связи (принимаемой из .каналов связи в реальном времени), информации из любых других источников.
Файл, таким образом, является единицей обеспечения доступа к информации, а не единицей ее хранения, как в других операционных системах.
Одни файлы обеспечивают доступ к информации, хранимой на разнообразных носителях: магнитных дисках и дискетах, оптических CD/DVD/BD, твердотельных «дисках» и пр.
Другие файлы обеспечивают доступ к информации, поступающей из/в устройств ввода-вывода — клавиатур, манипуляторов «мышь», тачпадов, сенсорных экранов, последовательных и параллельных портов, видеокамер, звуковых карт и пр.
Особенные файлы обеспечивают доступ к информации о сущностях ядра операционной системы (процессы, нити, модули, драйвера и пр.).
Так или иначе, все файлы одинаково идентифицируются своими именами, упорядоченными в форме единой и единственной иерархической структуры, Называемой деревом каталогов.
Путевые имена файлов
Глобально уникальным идентификатором файла в пределах операционной системы является его абсолютное путевое имя, вычисляющееся как путь от корня дерева каталогов до целевого файла, включая начало, и конец пути.
Необходимо акцентировать внимание на том, что имя у корневого каталога отсутствует, т. е. является пустой строкой: Таким образом, абсолютное путевое имя файла bmo (см. рисунок) записывается как разделенные символом / имена всех каталогов пути и имя самого файла, включая концы — ABS _ /home/mike/bin/bmo.
Относительное путевое имя вычисляется как остаток пути от некоторого заранее заданного (называемого рабочим, WD — working directory) каталога до целевого файла, включая конец пути.
Для рабочего каталога WD: /usr/local относительное путевое имя файла (bender; записывается как разделенные символом / имена всех каталогов остатка пути и имя самого файла — REL: bin/bender.
Для проверки правильности записи путевых имен всегда можно Воспользоваться проверкой ABS = WD / REL, например /usr/local/bin/bender.
Некоторые каталоги дерева (например, каталоги первого уровня) носят устоявшиеся в семействе операционных систем UNIX имена (hier(7)) и дифференцируют содержание по смысловому признаку.
Например, каталог /bin (binary) предназначен для системных программ общего назначения, каталог /usr/bin — для прикладных (условно) программ общего назначения, каталог /usr/local/bin — для «локально» (установленных системным администратором из сторонних источников, т. е. не из дистрибутива системы) установленных прикладных программ общего назначения, а каталоги bin внутри домашних каталогов пользователей — для программ персонального назначения (usr — в ранней UNIX сокращение от unix source repositrary, современное сокращение от untx system resources)
Аналогично определяется назначение каталогов /sbin, /usr/sbin, /usr/local/sbin с той лишь разницей, что каталоги sbin расшифровываются как superuser’s- binaries и предназначаются для программ системного администрирования: системных, прикладных и «локально установленных» соответственно. Каталоги /lib, /usr/lib и /usr/local/lib аналогично содержат системные и прикладные библиотеки.
Каталог /etc содержит общесистемные конфигурационные файлы и с полным правом может расшифровываться как editable text configuration.
Каталог /home является контейнером домашних каталогов пользователей (кроме суперпользователя root). Каталог /var является хранилищем динамических данных (журнальные файлы /var/log, почтовые ящики /var/mail, разнообразные очереди /var/spool и тому подобное), а каталог /trip является хранилищем временных данных.
Каталоги /dev, /рrос и /sys содержат специальные файлы устройств и псевдофайловых систем рrос и sysfs.