Первые десять знаков строки ls -l — тип файла и его права. Их читают кусками: один знак и три тройки.
Первый знак — тип: - у обычного файла, d у каталога. Остальные девять — права доступа, три тройки подряд: для владельца файла, для группы файла и для остальных — всех, кто не владелец и не состоит в этой группе.
В каждой тройке у буквы своё место: r — читать, w — изменять, x — запускать. На месте запрещённого действия стоит -. Так выглядит строка отчёта из начала урока:
| Знаки | Для кого | Что разрешено |
|---|---|---|
- |
тип | обычный файл |
--- |
владелец, student | ничего |
--- |
группа, student | ничего |
r-- |
остальные | читать |
Владельца и группу ls -l печатает дальше в той же строке. Права, владельца и группу системных файлов посмотри сам:
/etc/passwd со списком учётных записей читают все: -rw-r--r--. /etc/shadow хранит пароли: строка -rw-r-----, владелец root, группа shadow.
Знак + после строки прав (-rw-r-----+) значит, что у файла есть ещё и ACL — дополнительные правила доступа. Их показывает getfacl.
Что разрешено участникам группы shadow?
-rw-r----- 1 root shadow 888 Sep 27 06:16 /etc/shadow
-
---— третья тройка, для остальных. У группы shadow вторая,r--. -
rw-— первая тройка, она у владельца root. У группы вторая тройка,r--. -
Буквы
xв строке нет ни в одной тройке:/etc/shadow— не программа.
Вторая тройка r-- — права группы shadow: её участники файл читают. Изменять его может владелец root, остальным не разрешено ничего.
Главное в шаге
- Строка прав — тип файла и три тройки: для владельца, для группы и для остальных.
-
В тройке
r— чтение,w— изменение,x— запуск;-на месте буквы — запрет.