Что означает число после прав доступа к файлам Unix/Linux, например "-rw-rw-r--. 1", в выводе "ls -l"

Что означает число после прав доступа к файлам Unix/Linux, например "-rw-rw-r--. 1", в выводе "ls -l"

Может ли кто-нибудь объяснить -rw-rw-r--. 1и дать «подробную» информацию о команде ls -lart?

В частности, что означает число1после файловых прав означает? Почему они меняются или почему они разные для разных файлов?

решение1

Некоторые примеры:

-rwxrw-r-- 1файл с правами на чтение, запись и выполнение для владельца. Группа имеет права на чтение и запись, а другие — только на чтение. Ссылок на эти данные нет.

drwxr-xr-x 10— это каталог с 8 файлами. Дополнительные 2 — .и ... Только владелец может создавать файлы в этом каталоге, другие могут получить доступ к файлам в каталоге и прочитать содержимое этих файлов, если позволяют привилегии.

-r-------- 2файл, который может читать только владелец, но не может его выполнять или изменять. Он имеет ссылку, что означает, что где-то на диске есть другая ссылка на файл, которая обращается к тем же данным. Таким образом, фактическое «содержимое файла» на диске имеет 2 «файла», ссылающихся на него. Эти ссылки часто создаются с использованием lnбез предоставления -s.

Так:

  • Символ 1 — тип узла: обычно -обозначает dфайл или каталог.
  • Символы 2, 3, 4 обозначают rобязанности, wобряд и е xдля владельца.
  • Персонажи 5, 6, 7 делают то же самое для группы.
  • Персонажи 8, 9, 10 делают то же самое для остальных.
  • Число, следующее за символами разрешения, указывает количество ссылок, если узел является файлом, и количество «подузлов», если узел является каталогом.

Смотреть главуДлинный форматиз man ls.

решение2

Для файловэто числожесткие ссылкик содержимому файла. 1 означает отсутствие жестких ссылок (типичный случай), числоНвыше 1 означает это и другоеН-1имена файлов имеют одинаковое содержимое.

Для каталогов большинство, но не всефайловые системы сообщают о количестве ссылок 2+НгдеН— это количество подкаталогов.

решение3

[макс@localhost ~]$ ll

всего 4

drwxrwxr-x2макс макс 4096 25 сен 17:11 zzz

Здесь 2 означает количество ссылок.

сейчас я создам 3 каталога внутри zzz

теперь значение меняется на 5

[макс@localhost ~]$ cd zzz
[макс@localhost zzz]$ mkdir abc
drwxrwxr-x 5 макс макс 4096 25 сен 17:16 .
drwx------ 5 макс макс 4096 25 сен 17:12 ..
drwxrwxr-x 2 макс макс 4096 25 сен 17:16 а
drwxrwxr-x 2 макс макс 4096 25 сен 17:16 б
drwxrwxr-x 2 макс макс 4096 25 сен 17:16 c

[макс@localhost zzz]$ cd

[макс@localhost ~]$ ll

всего 4

drwxrwxr-x5макс макс 4096 25 сен 17:16 ззз

Это потому, что теперь внутри zzz присутствует 5 каталогов, 3 из которых a b cскрытые, а 2 — скрытые.. ..

если я создам файл, то ничего не произойдет с количеством ссылок

[макс@localhost zzz]$ касание 1 2 3
[макс@localhost zzz]$ ls -al
всего 20
drwxrwxr-x 5 max max 4096 25 сен 17:26 . ------> количество ссылок на текущий каталог
drwx------ 5 макс макс 4096 25 сен 17:12 .. ------> количество ссылок на родительский каталог
-rw-rw-r-- 1 макс макс 0 25 сен 17:26 1
-rw-rw-r-- 1 макс макс 0 25 сен 17:26 2
-rw-rw-r-- 1 макс макс 0 25 сен 17:26 3
drwxrwxr-x 2 макс макс 4096 25 сен 17:16 а
drwxrwxr-x 2 макс макс 4096 25 сен 17:16 б
drwxrwxr-x 2 макс макс 4096 25 сен 17:16 c
[макс@localhost zzz]$ cd
[макс@localhost ~]$ ll
всего 4
drwxrwxr-x 5 макс макс 4096 25 сен 17:26 zzz

но если я удалю любой каталог, то количество ссылок изменится

[макс@localhost zzz]$ rmdir bc
[макс@localhost zzz]$ cd
[макс@localhost ~]$ ll
всего 4
drwxrwxr-x 3 макс макс 4096 25 сен 17:28 zzz

Связанный контент