Что входит в ярлык объекта файловой системы

Обновлено: 06.07.2024

Работая с Linux, Мефодий заметил, что некоторые файлы и каталоги недоступны ему ни для чтения, ни для записи, ни для использования. Зачем такие нужны? Оказывается, другие пользователи могут обращаться к этим файлам, а у Мефодия просто недостаточно прав.

Идентификатор пользователя

Говоря о правах доступа пользователя к файлам, стоит заметить, что в действительности манипулирует файлами не сам пользователь, а запущенный им процесс (например, утилита rm или cat ). Поскольку и файл, и процесс создаются и управляются системой, ей нетрудно организовать какую угодно политику доступа одних к другим, основываясь на любых свойствах процессов как субъектов и файлов как объектов системы.

В Linux, однако, используются не какие угодно свойства, а результат идентификации пользователя – его UID . Каждый процесс системы обязательно принадлежит какому-нибудь пользователю, и идентификатор пользователя ( UID ) – обязательное свойство любого процесса Linux. Когда программа login запускает стартовый командный интерпретатор , она приписывает ему UID , полученный в результате диалога. Обычный запуск программы ( exec() ) или порождение нового процесса ( fork() ) не изменяют UID процесса , поэтому все процессы , запущенные пользователем во время терминальной сессии, будут иметь его идентификатор .

Поскольку UID однозначно определяется входным именем , оно нередко используется вместо идентификатора – для наглядности. Например, вместо выражения " идентификатор пользователя , соответствующий входному имени methody ", говорят " UID methody " (в приведенном ниже примере этот идентификатор равен 503 ):

6.1. Как узнать идентификаторы пользователя и членство в группах

Утилита id , которой воспользовался Мефодий, выводит входное имя пользователя и соответствующий ему UID , а также группу по умолчанию и полный список групп , членом которых он является.

Идентификатор группы

Как было рассказано в лекции 1, пользователь может быть членом нескольких групп , равно как и несколько пользователей могут быть членами одной и той же группы . Исторически сложилось так, что одна из групп – группа по умолчанию – является для пользователя основной: когда (не вполне точно) говорят о " GID пользователя", имеют в виду именно идентификатор группы по умолчанию . В лекции 12 будет рассказано о том, что GID пользователя вписан в учетную запись и хранится в /etc/passwd , а информация о соответствии имен групп их идентификаторам, равно как и о том, в какие еще группы входит пользователь – в файле /etc/group . Из этого следует, что пользователь не может не быть членом как минимум одной группы , как снаряд не может не попасть в эпицентр взрыва. 1 Здесь есть тонкость. В файле group указываются не идентификаторы, а входные имена пользователей. Формально говоря, можно создать двух пользователей с одинаковым UID , но разными GID и списками групп. Обычно так не делают: надобности - почти никакой, а неразберихи возникнет много.

Часто процедуру создания пользователя проектируют так, что имя группы по умолчанию совпадает с входным именем пользователя, а GID пользователя – с его UID . Однако это совсем не обязательно: не всегда нужно заводить для пользователя отдельную группу , а если заводить, то не всегда удается сделать так,чтобы желаемый идентификатор группы совпадал с желаемым идентификатором пользователя .

Ярлыки объектов файловой системы

При создании объектов файловой системы – файлов, каталогов и т. п. – каждому в обязательном порядке приписывается ярлык . Ярлык включает в себя UID – идентификатор пользователя - хозяина файла , GID – идентификатор группы , которой принадлежит файл, тип объекта и набор так называемых атрибутов , а также некоторую дополнительную информацию. Атрибуты определяют, кто и что имеет право делать с файлом, они описаны ниже:

6.2. Права доступа к файлам и каталогам, показанные командой ls -l

Ключ " -l " утилиты ls определяет "длинный" ( l ong) формат выдачи (справа налево): имя файла, время последнего изменения файла, размер в байтах, группа , хозяин , количество жестких ссылок и строчка атрибутов . Первый символ в строчке атрибутов определяет тип файла. Тип " - " отвечает "обычному" файлу, а тип " d " – каталогу ( d irectory). Имя пользователя и имя группы , которым принадлежит содержимое домашнего каталога Мефодия, – естественно, methody .

Быстрый разумом Мефодий немедленно заинтересовался вот чем: несмотря на то, что создание жестких ссылок на каталог невозможно, значение поля "количество жестких ссылок " для всех каталогов примера равно двум, а не одному. На самом деле этого и следовало ожидать, потому что любой каталог файловой системы Linux всегда имеет не менее двух имен: собственное (например, tmp ) и имя " ." в самом этом каталоге ( tmp/ .). Если же в каталоге создать подкаталог, количество жестких ссылок на этот каталог увеличится на 1 за счет имени " . ." в подкаталоге (например, tmp/subdir1/. .):

6.3. Несколько жестких ссылок на каталог все-таки бывает!

Здесь Мефодий использовал ключ " -d " ( d irectory) для того, чтобы ls выводил информацию не о содержимом каталога tmp , а о самом этом каталоге.

Вся информация (программы, документы, таблицы, рисунки и пр.) хранится в файлах.

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

Файловая система обеспечивает возможность доступа к конкретному файлу и позволяет найти свободное место при записи нового файла. Она определяет схему записи информации, содержащейся в файлах, на физический диск.

Файлы на диске записываются в свободные кластеры, поэтому фрагменты одного и того же файла могут находиться в разных местах диска. Относительно производительности системы наиболее предпочтительным является такой вариант размещения файла, когда его фрагменты занимают подряд идущие кластеры. Windows9х использует файловые системы FAT16 и FAT32, WindowsNT – файловую систему NTFS.

Каждый файл имеет имя и расширение. Расширение указывает на тип файла.

Имя файла в Windows (полное, с указанием директорий, его содержащих) может иметь до 255 символов. Расширение отделяется от имени точкой. В Windows каждому типу файла ставится в соответствие свой значок.


Например: Договор аренды.doc – это файл текстового документа, созданного программой Microsoft Word.

Вот некоторые из наиболее часто встречающихся значков файлов:


- файлы с расширением com, exe, содержат программы, готовые к выполнению – программые (исполняемые) файлы;


– файлы с расширением bat – пакетные файлы;


– файлы с расширением doc – документы, созданные в текстовом редакторе Microsoft Word;


– файлы с расширением xls – таблицы, созданные в табличном процессоре Microsoft Excel;


– файлы с расширением bmp – рисунки, созданные в графическом редакторе Paint.

В имени и расширении файла нельзя использовать следующие символы:
* ? \ / | : < > "

Имя файла с расширением называется собственным именем файла.

Имена устройств

Каждому дисковому накопителю в Windows присваивается свое имя следующим образом:

A: и B: для устройств работы с дискетами,

C: для жесткого диска.

Во многих случаях жесткий диск удобно разбить на самостоятельные части (разделы). В этом случае по умолчанию каждой части присваивается свое имя C:, D:, E:, F: и т.д. по алфавиту.

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

При использовании сетевых дисков и флэш - дисков им также присваиваются имена, которыми могут быть любые неиспользованные буквы английского алфавита. Например:

Объект – папка

Другим важным объектом файловой системы Windows является папка. Папка Windows играет ту же роль, что и обычная папка для хранения документов в делопроизводстве: она позволяет упорядочить хранение документов. В среде Windows термин «папка» приобретает более широкое толкование - как хранилище объектов. Поэтому естественно говорить «папка содержит файлы».

Папка (каталог) – поименованное место на диске для хранения файлов.


Значок обычной папки имеет вид . Папке присваивается имя, которое может иметь до 255 символов и записывается по тем же правилам, что и имя файла. Каждая папка может включать в себя другие папки, документы, таблицы, рисунки и пр.

Совокупность папок образует древовидную структуру (рис.3). Если папка X входит в папку Y, то папка Х называется вложенной папкой (подчиненной, подпапкой, папкой более низкого уровня).

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


Рис.3. Пример расположения файлов и папок на диске

В случае обращения к файлу необходимо указать его путь. Путь – это последовательность из имен логического диска, папок и вложенных папок, разделенных символом «\».

Уникальность имени файла обеспечивается тем, что полным именем файла считается собственное имя файла вместе с путем доступа к нему. Понятно, что в этом случае на одном носителе не может быть двух файлов с тождественными полными именами.

Например, полное имя файла Устав.doc, который находится на диске С: в папке Договора, которая входит в папку Документы, можно записать следующим образом:


Папка, с которой в данное время работает пользователь, называется открытой (текущей) папкой (более подробно о папках и файлах здесь).

Объект – ярлык

Важным понятием в среде Windows является ярлык. Изображается он значком с черной стрелкой в левом углу.

Ярлык маленький файл (объемом 1 Кбайт) с расширением .LNK (для программ Windows) и .PIF (для программ DOS), который содержит информацию о пути к объекту.

Таким образом, ярлык – это ссылка на какой-либо объект, вторичное (дополнительное) изображение этого объекта, указывающая на его местоположение. Ярлык служит для ускорения запуска программ или документов. Объект и его ярлык обычно находятся в разных местах. Особенно эффективно использование ярлыка тогда, когда объекты находятся на нижних уровнях иерархической структуры подчиненности папок, а ярлыки – на верхних.

Можно создавать ярлыки программ, папок, файлов, дисков, принтеров и т.д. Значок ярлыка повторяет значок объекта с добавленной к нему стрелкой.

Ярлык можно легко создать или уничтожить, что никак не влияет на связанный с ним объект. У каждого объекта может быть множество ярлыков.


Ярлык для диска 3,5 (А:).




Ярлык для папки Мои рисунки (стандартный – предлагаемый пользователю по умолчанию).


Ярлык для папки Мои рисунки (измененный).


Ярлык для приложения MS Word.


Ярлык для документа, созданного пользователем в приложении MS Word.

Действия, которые можно совершать с ярлыком, аналогичны действиям над файлами (более подробно о ярлыках здесь).

Открыть ярлык – значит открыть связанный с этим ярлыком объект. В окне Свойства всегда можно узнать с каким объектом этот ярлык связан, где находится этот объект, перейти к этому объекту, сменить значок ярлыка.

При создании объектов файловой системы – файлов, каталогов и т. п. – каждому приписывается ярлык. Ярлык включает в себя UID – идентификатор пользователя-хозяина файла, GID – идентификатор группы, которой принадлежит файл, тип объекта и набор так называемых атрибутов (код доступа), а также некоторую дополнительную информацию. Атрибуты (или код доступа) определяют, кто и что имеет право делать с файлом, они описаны ниже:

Пример 4. Атрибуты каталогов, показанные командой ls -l

drwxr-xr-x 2 root root 4096 Апр 4 2008 bin

drwxr-xr-x 4 root root 4096 Апр 4 2008 boot

drwxr-xr-x 10 root root 3520 Апр 5 14:26 dev

drwxr-xr-x 90 root root 8192 Апр 5 14:22 etc

drwxr-xr-x 3 root root 4096 Апр 4 21:22 home

drwxr-xr-x 11 root root 4096 Апр 4 2008 lib

drwx------ 2 root root 16384 Апр 4 2008 lost+found

drwxr-xr-x 4 root root 4096 Апр 5 14:22 media

drwxr-xr-x 2 root root 4096 Июл 11 2006 misc

drwxr-xr-x 2 root root 4096 Окт 20 2005 mnt

drwxr-xr-x 2 root root 0 Апр 5 14:21 net

drwxr-xr-x 2 root root 4096 Окт 20 2005 opt

dr-xr-xr-x 106 root root 0 Апр 5 2009 proc

drwxr-x--- 31 root root 4096 Апр 5 14:29 root

drwxr-xr-x 2 root root 8192 Апр 4 2008 sbin

drwxr-xr-x 2 root root 4096 Окт 20 2005 selinux

drwxr-xr-x 2 root root 4096 Окт 20 2005 srv

drwxr-xr-x 11 root root 0 Апр 5 2009 sys

drwxrwxrwt 16 root root 4096 Апр 5 14:26 tmp

drwxr-xr-x 15 root root 4096 Апр 4 2008 usr

drwxr-xr-x 21 root root 4096 Апр 4 2008 var

Ключ "-l" утилиты ls определяет длинный (long) формат выдачи (справа налево): имя файла, время последнего изменения файла, размер в байтах, группа, хозяин, количество жестких ссылок и строчка атрибутов. Первый символ в строчке атрибутов определяет тип файла. Тип "-" отвечает "обычному" файлу, а тип "d" – каталогу (directory).

Несмотря на то, что создание жестких ссылок на каталог невозможно, значение поля "количество жестких ссылок" (второй столбец) для всех каталогов примера равно двум, а не одному. На самом деле этого и следовало ожидать, потому что любой каталог файловой системы Linux всегда имеет не менее двух имен: собственное (например, tmp) и имя "." в самом этом каталоге (tmp/.). Если же в каталоге создать подкаталог, количество жестких ссылок на этот каталог увеличится на 1 за счет имени ".." в подкаталоге (например, tmp/subdir1/..):

Иерархия прав доступа

Рассмотрим более подробно, чему соответствуют девять символов в строке атрибутов, выдаваемой ls. Эти девять символов имеют вид "rwxrwxrwx", где некоторые "r", "w" и "x" могут заменяться на "-". Очевидно, буквы отражают принятые в Linux три вида доступа – чтение, запись и использование – однако в ярлыке они присутствуют в трех экземплярах!

Дело в том, что любой пользователь (процесс) Linux по отношению к любому файлу может выступать в трех ролях: как хозяин (user), как член группы, которой принадлежит файл (group), и как посторонний (other), никаких отношений собственности на этот файл не имеющий. Строка атрибутов – это три тройки "rwx", описывающие права доступа к файлу хозяина этого файла (первая тройка, "u"), группы, которой принадлежит файл (вторая тройка, "g") и посторонних (третья тройка, "o"). Если в какой-либо тройке не хватает буквы, а вместо нее стоит "-", значит, пользователю в соответствующей роли будет в соответствующем виде доступа отказано.

При выяснении отношений между файлом и пользователем, запустившим процесс, роль определяется так:

1. Если UID файла совпадает с UID процесса, пользователь – хозяин файла

2. Если GID файла совпадает с GID любой группы, в которую входит пользователь, он – член группы, которой принадлежит файл.

3. Если ни UID, ни GID файла не пересекаются с UID процесса и списком групп, в которые входит запустивший его пользователь, этот пользователь – посторонний.

Именно в роли хозяина пользователь (процесс) может изменять ярлык файла. Единственное, чего не может делать хозяин со своим файлом – менять ему хозяина.

Права доступа изменяются с помощью трех команд: chown (change owner, сменить владельца), chgrp (change group, сменить группу) и chmod с расширенным форматом параметра: перед частью, определяющей доступ (перед знаком "+" или "-"), могут быть перечислены роли "u", "g", "o" и "a" (all, что соответствует "ugo"), доступ для которых изменяется. Кроме того, при задании доступа можно вместо "+" и "-" использовать "=", тогда для заданных ролей указанные способы доступа разрешаются, а неуказанные – запрещаются. Вместо пары команд chown хозяин файл; chgrp группа файл можно применять одну: chown хозяин:группа файл, которая изменяет одновременно и UID, и GID файла (каталога, ссылки и т. п.).

Определение прав доступа процесса к объекту файловой системы (например, файла) происходит так. Используя UID процесса, список групп, в которые входит пользователь, запустивший этот процесс, UID файла и GID файла, система определяет роль процесса по отношению к файлу, а затем обращается к соответствующей тройке атрибутов файла. Процесс не может выступать сразу в нескольких ролях.

Правильные ответы выделены зелёным цветом.
Все ответы: В курсе даются основные понятия операционной системы Linux и важнейшие навыки работы в ней. Изложение сопровождается большим количеством практических примеров. Данный курс может рассматриваться как учебник для студентов, начинающих обучение по специальностям в области информатики и ещё не знакомых с ОС Linux.

Идентификатор администратора системы (пользователя root ) равен:

(1) Аппаратно реализованная часть загрузки системы, в отличие от вторичного загрузчика, реализованного программно

(2) Программа, записанная в ПЗУ, определяющая местонахождение и тип операционной системы

(3) Программа, работающая со стартовым виртуальным диском, в отличие от вторичного загрузчика, работающего с полным вариантом системы

(4) Маленькая программа в заранее известном месте диска, задача которой — найти и загрузить вторичный загрузчик

(1) Любой тип объектов файловой системы, кроме собственно файлов и каталогов

(2) Особый объект файловой системы, называемый также символьным устройством

(3) Класс объектов файловой системы, обмен данными с которыми не приводит к обращению к содержимому какого-либо определённого файла

(1) Полностью определяет состояние работающей системы

(2) Полностью определяет поведение системы на данном пользовательском наполнении

(4) о размере и атрибутах каждого файла, принадлежащего пакету

Разделение сетевых протоколов на уровни не позволяет

(1) Интерпретировать данные более высокого уровня независимо от того, каким способом они были получены на более низком уровне

(2) Одновременно обмениваться данными посредством нескольких различных сред передачи данных

(3) Передавать несколько пакетов более высокого уровня в одном пакете более низкого уровня

(4) Передавать один пакет более высокого уровня с помощью нескольких пакетов более низкого уровня

Какой параметр сети можно задавать с помощью утилиты ifconfig ?

(4) Список интерфейсных адресов абонентов локальной сети

В оконном интерфейсе субъектом с точки зрения системы является

(3) задача, выводящая и вводящая данные в рамках окна

Для редактирования «плоского» текста на удалённом компьютере пользователю потребуется

(2) Клиент Secure Shell на рабочей станции и текстовый редактор ( vim , ncedit или joe ) на удалённом компьютере

(3) Любой текстовый редактор на рабочей станции, имеющий встроенный сервер Secure Shell

(1) указать, кто является обладателем всех прав на это программное обеспечение

(2) определить круг прав пользователя по отношению к этому программному обеспечению

(3) определить, на каких условиях можно продавать данное программное обеспечение

(4) сделать данное программное обеспечение свободным

Основное средство взаимодействия пользователя и ОС Linux

(2) файл особого типа, содержащий ссылки на другие файлы и каталоги

(3) список подкаталогов следующего уровня вложенности

Уникальным идентификатором файла в файловой системе является:

(4) номер индексного дескриптора каталога, в котором находится файл

(3) UID и GID объекта, список GID, членом которых является хозяин объекта, тип объекта и его атрибуты

(1) программа, которая читает со стандартного ввода, а выводит на стандартный вывод

(2) связанная пара дескрипторов, где данные, записанные на входной дескриптор, сразу доступны для чтения с выходного

Управляющий символ “ ^W ” (удаление слова) действует на

(2) любой ввод с терминала, если не изменены настройки терминала

(3) любой ввод с терминала, только если программа использует библиотеку readline

(4) только ввод командной строки любого командного интерпретатора

(1) текст, который состоит только из печатных (отображаемых на экране) символов

(2) текст, в котором не содержится никакой метаинформации об оформлении

(3) формат файлов, который используется текстовыми редакторами

(1) Изменять настройки некоторой службы или последовательность выполнения некоторых сценариев без редактирования файлов

(2) Помещать все конфигурационные файлы и сценарии служб в один специальный каталог

(3) Изменять любые настройки службы без редактирования файлов

(4) Изменять содержимое конфигурационных файлов или стартовых сценариев, не редактируя их

(1) Любой раздел диска, указанный в расширенном разделе

(3) Любой раздел диска, кроме первого и расширенного разделов

(3) Большинства конфигурационных файлов и стартовых сценариев

(4) Любых файлов, не попадающих по классификации FHS в специальные каталоги /lib , /var , /bin и т. п.

Какие две из перечисленных ниже задач решаются на сетевом уровне семейства протоколов TCP/IP?

(2) построение пути данных от отправителя к получателю

Чем отличается «таблица» межсетевого экрана iptables от «цепочки»?

(1) Понятие «цепочка» использовалось только в предыдущей версии межсетевого экрана Linux — ipchains . В iptables его заменили более общим понятием «таблица»

(2) Таблицы и цепочки следуют попеременно в произвольном порядке; по действию ACCEPT пакет может покинуть таблицу, но не цепочку

(3) Цепочки iptables состоят из нескольких таблиц; покидая одну таблицу, пакет направляется в другую

(4) Таблицы iptables состоят из нескольких цепочек; покидая одну цепочку, пакет направляется в другую

(1) ко всем утилитам, которые могут быть запущены в Linux

(2) только к свободному UNIX-совместимому ядру, изначально написанному Линусом Торвальдсом

Какая из перечисленных команд не имеет отношения к справочной подсистеме Linux?

Какая из перечисленных строк не может быть именем файла:

Пользователь может управлять фоновым процессом с помощью

(1) предназначенный для совместного хранения файлов несколькими пользователями

(2) из которого пользователь не может удалить не принадлежащий ему файл

(3) в котором пользователь не может модифицировать не принадлежащий ему файл

(4) при просмотре которого пользователем выводятся только имена принадлежащих ему файлов

Что окажется записанным в файле grep.info после такой операции: info grep 2>&1 > grep.info ?

(1) в точности повторяет алгоритм обработки шаблонов

(2) основана на алгоритме обработки шаблонов, однако имеет отличия, связанные со спецификой работы с файлами

(3) использует упрощённый вариант алгоритма обработки шаблонов

(4) использует алгоритм «globbing», который, в отличие от генерации имён файлов в более ранних версиях shell, не основан на понятии «шаблон»

Как, редактируя текст в Vim/Vi, сохранить текст от курсора до конца текущей строки и записать сохранённый фрагмент в самый конец файла?

Команда [someone@localhost someone]$ who am i someone tty4 Oct 13 13:31 (localhost) отдана:

(1) пользователем localhost с любой виртуальной консоли;

(2) пользователем someone с любой виртуальной консоли;

(3) пользователем someone с четвёртой виртуальной консоли;

(1) Собирать файловые системы различных разделов в одно дерево каталогов

(2) Подключать к дереву каталогов содержимое файлов, данные ядра, каталоги на других компьютерах

(3) Использовать журналирование с файловыми системами, в которых оно не предусмотрено

(4) Использовать различные по скорости и надёжности способы доступа к различным подкаталогам

Способ ведения системных журналов Linux называется «централизованным», потому что

(2) С журналами работают различные программы, однако эта работа управляется единым файлом /etc/syslog.conf

Что означают понятия «клиент» и «сервер» на прикладном уровне TCP/IP?

(1) Клиент — тот, кто устанавливает соединение, сервер — тот, кто отвечает на него

(2) Клиент — тот, кто запрашивает данные, сервер — тот, кто передаёт их

(3) Сервер — тот, кто устанавливает соединение, клиент — тот, кто пользуется установленным соединением

(1) Регламентируют доступ к почтовому ящику, при этом SMTP не требует идентификации пользователя, а POP3, в отличие от IMAP4, поддерживает создание пользователем почтовых ящиков на сервере

(2) запуск пользовательского сценария .xinitrc , а при его отсутствии — системного сценария xinitrc

(3) настройку окружения, запуск X-сервера и диспетчера окон или рабочего стола

(4) запуск X-сервера и затем X-приложений, указанных в сценарии .xinitrc пользователя, системном сценарии xinitrc или в командной строке

При использовании алгоритмов сжатия звука «с потерей качества»

(2) Звучание исходного и сжатого файлов на слух неразличимо

(3) Из сжатого файла нельзя получить исходный, а искажения звука зависят от качества сжатия

(4) Достигается очень высокий процент сжатия, но получившийся файл неудобно передавать по каналам с ограниченной пропускной способностью из-за неравномерности сжатия

Необходимость в дистрибутивах Linux возникла, когда

(1) появились пользователи, желающие установить скомпилированное ядро Linux и набор утилит на свой компьютер

(2) появились пользователи, готовые купить операционную систему Linux

(4) немедленно после публикации первой версии ядра Linux

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

При создании объектов файловой системы – файлов, каталогов и т. п. – каждому приписывается ярлык. Ярлык включает в себя UID – идентификатор пользователя-хозяина файла, GID – идентификатор группы, которой принадлежит файл, тип объекта и набор так называемых атрибутов (код доступа), а также некоторую дополнительную информацию. Атрибуты (или код доступа) определяют, кто и что имеет право делать с файлом, они описаны ниже:

Пример 4. Атрибуты каталогов, показанные командой ls -l

drwxr-xr-x 2 root root 4096 Апр 4 2011 bin

drwxr-xr-x 4 root root 4096 Апр 4 2011 boot

drwxr-xr-x 10 root root 3520 Апр 5 14:26 dev

drwxr-xr-x 90 root root 8192 Апр 5 14:22 etc

drwxr-xr-x 3 root root 4096 Апр 4 21:22 home

drwxr-xr-x 11 root root 4096 Апр 4 2011 lib

drwx------ 2 root root 16384 Апр 4 2011 lost+found

drwxr-xr-x 4 root root 4096 Апр 5 14:22 media

drwxr-xr-x 2 root root 4096 Июл 11 2010 misc

drwxr-xr-x 2 root root 4096 Окт 20 2011 mnt

drwxr-xr-x 2 root root 0 Апр 5 14:21 net

drwxr-xr-x 2 root root 4096 Окт 20 2011 opt

dr-xr-xr-x 106 root root 0 Апр 5 2010 proc

drwxr-x--- 31 root root 4096 Апр 5 14:29 root

drwxr-xr-x 2 root root 8192 Апр 4 2010 sbin

drwxr-xr-x 2 root root 4096 Окт 20 2010 selinux

drwxr-xr-x 2 root root 4096 Окт 20 2010 srv

drwxr-xr-x 11 root root 0 Апр 5 2010 sys

drwxrwxrwt 16 root root 4096 Апр 5 14:26 tmp

drwxr-xr-x 15 root root 4096 Апр 4 2010 usr

drwxr-xr-x 21 root root 4096 Апр 4 2010 var

Ключ "-l" утилиты ls определяет длинный (long) формат выдачи (справа налево): имя файла, время последнего изменения файла, размер в байтах, группа, хозяин, количество жестких ссылок и строчка атрибутов. Первый символ в строчке атрибутов определяет тип файла. Тип "-" отвечает "обычному" файлу, а тип "d" – каталогу (directory).

Несмотря на то, что создание жестких ссылок на каталог невозможно, значение поля "количество жестких ссылок" (второй столбец) для всех каталогов примера равно двум, а не одному. На самом деле этого и следовало ожидать, потому что любой каталог файловой системы Linux всегда имеет не менее двух имен: собственное (например, tmp) и имя "." в самом этом каталоге (tmp/.). Если же в каталоге создать подкаталог, количество жестких ссылок на этот каталог увеличится на 1 за счет имени ".." в подкаталоге (например, tmp/subdir1/..):

Читайте также: