Основные биты доступа (чтение/запись/выполнение)
Рассмотрим подробнее - что представляют собой "права доступа".
Еще раз вернемся к примеру. При распечатке содержимого директории (например, командой ls) каждая строчка имеет вид
-rw-r--r-- 1 pascal users 4297 13 мар 21:45 files1
причем нас интересует в данном случае только первая колонка.
Она состоит из десяти знаков. Однако, самый первый знак не имеет отношения к permissions, а обозначает "тип этого объекта". Поскольку, в директории кроме файлов могут находится поддиректории и, кроме того, в Юниксе, кроме обычных файлов существуют другие объекты ("линки", "очереди", "сокеты" и т.п.), которые также находятся в директориях и имеют атрибуты как и у обычных файлов. Так вот, первый символ как раз и показывает - что за объект мы видим, обычный файл (значок "-"), поддиректорию (значок "d") или еще какой-нибудь специфический Юниксовый объект ("l", "s", "p"...).
Остальные девять знаков на самом деле представляют собой три группы по три символа. Каждая такая группа определяет права для какой-либо из трех категорий юзеров
- первая группа - права "хозяина"
- вторая группа - права "группы особо допущенных"
- третья группа - права для "всех остальных"
Смысл отдельных битов в каждой такой группы "прав" одинаков для всех трех категорий пользователей, поэтому можно подробнее рассматривать любую такую группу, не уточняя - для какой категории юзеров она предназначена.
Однако, для файлов и директорий смысл этих битов немного отличается, поэтому их стоит рассмотреть отдельно.