Может ли кто-нибудь объяснить -rw-rw-r--. 1
и дать некоторую «подробную» информацию о команде ls -lart.
В частности, что означает число 1
после разрешения доступа к файлу? Почему он меняется или почему он отличается для разных файлов?
Может ли кто-нибудь объяснить -rw-rw-r--. 1
и дать некоторую «подробную» информацию о команде ls -lart.
В частности, что означает число 1
после разрешения доступа к файлу? Почему он меняется или почему он отличается для разных файлов?
Ответы:
Несколько примеров:
-rwxrw-r-- 1
файл с правами чтения, записи и выполнения для владельца Группа читает и пишет, а другие только читают. Нет ссылок на эти данные.
drwxr-xr-x 10
каталог с 8 файлами Дополнительные 2 являются .
и ..
. Только владелец может создавать файлы в этом каталоге, другие могут получить доступ к тем файлам, которые находятся в каталоге, и прочитать содержимое этих файлов, если позволяют привилегии.
-r-------- 2
это файл, который может прочитать только владелец, но не может выполнить или изменить. У него есть ссылка, что означает, что на диске есть другая ссылка на файл, которая обращается к тем же данным. Таким образом, фактическое «содержимое файла» на диске содержит 2 «файла», ссылающихся на него. Эти ссылки часто создаются с использованием ln
без предоставления -s
.
Так:
-
или с d
указанием файла или каталога.r
ead, w
обряд и x
ecute для владельца.Смотрите главу Длинный формат с man ls
.
ls
справочной странице. Ни одно из полей не объясняется там. Я думаю, что то же самое для Ubuntu.
Для файлов это количество жестких ссылок на содержимое файла. 1 означает отсутствие жестких ссылок (типичный случай), число N выше 1 означает, что это и другие N-1 имена файлов имеют одинаковое содержимое.
Для каталогов большинство, но не все файловые системы сообщают счетчик ссылок 2+ N, где N - количество подкаталогов.
[max @ localhost ~] $ ll
всего 4
drwxrwxr-x 2 max max 4096 сент. 25 17:11 zzz
Здесь 2 означает количество ссылок
сейчас я создам 3 директории внутри zzz
теперь значение меняется на 5
[max @ localhost ~] $ cd zzz [max @ localhost zzz] $ mkdir abc drwxrwxr-x 5 max max 4096 сент. 25 17:16. drwx ------ 5 макс. макс. 4096 сент. 25 17:12 .. drwxrwxr-x 2 max max 4096 сент. 25 17:16 a drwxrwxr-x 2 max max 4096 сент. 25 17:16 б drwxrwxr-x 2 max max 4096 сент. 25 17:16 c
[max @ localhost zzz] $ cd
[max @ localhost ~] $ ll
всего 4
drwxrwxr-x 5 max max 4096 сент. 25 17:16 zzz
Это потому, что теперь в zzz 3 есть 5 каталогов, a
b
c
а 2 - скрытые.
..
если я создаю файл, то ничего не произойдет с количеством ссылок
[max @ localhost zzz] $ touch 1 2 3 [max @ localhost zzz] $ ls -al всего 20 drwxrwxr-x 5 max max 4096 сент. 25 17:26. ------> текущий каталог ссылок drwx ------ 5 max max 4096 сент. 25 17:12 .. ------> количество ссылок родительского каталога -rw-rw-r-- 1 макс. макс. 0 сен. 25 17:26 1 -rw-rw-r-- 1 max max 0 сент. 25 17:26 2 -rw-rw-r-- 1 max max 0 сент. 25 17:26 3 drwxrwxr-x 2 max max 4096 сент. 25 17:16 a drwxrwxr-x 2 max max 4096 сент. 25 17:16 б drwxrwxr-x 2 max max 4096 сент. 25 17:16 c [max @ localhost zzz] $ cd [max @ localhost ~] $ ll всего 4 drwxrwxr-x 5 max max 4096 сент. 25 17:26 zzz
но если я удалю какой-либо каталог, то количество ссылок изменится
[max @ localhost zzz] $ rmdir bc [max @ localhost zzz] $ cd [max @ localhost ~] $ ll всего 4 drwxrwxr-x 3 max max 4096 сент. 25 17:28 zzz