Операционная система Linux

         

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


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

[methody@arnor methody]$ ls -l итого 24 drwx------ 2 methody methody 4096 Сен 12 13:58 Documents drwxr-xr-x 2 methody methody 4096 Окт 31 15:21 examples -rw-r--r-- 1 methody methody 26 Сен 22 15:21 loop -rwxr-xr-x 1 methody methody 23 Сен 27 13:27 script drwx------ 2 methody methody 4096 Окт 1 15:07 tmp -rwxr-xr-x 1 methody methody 32 Сен 22 13:26 to.sort

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

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

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

[methody@arnor methody]$ ls -ld tmp drwx------ 3 methody methody 4096 Окт 1 15:07 tmp [methody@arnor methody]$ mkdir tmp/subdir2 [methody@arnor methody]$ ls -ld tmp drwx------ 4 methody methody 4096 Окт 1 15:07 tmp [methody@arnor methody]$ rmdir tmp/subdir* [methody@arnor methody]$ ls -ld tmp drwx------ 2 methody methody 4096 Окт 1 15:07 tmp

Пример 6.3. Несколько жестких ссылок на каталог все-таки бывает! (html, txt)

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



Содержание раздела