Полезные инструменты на PHP

28.02.2007

В операционных системах Unix (Linux) для каждого файла и каталога задаются права доступа. Права доступа определяют, кто имеет доступ к объекту и какие операции он может выполнять. А выполнять можно три основных операции:
,
.
означает, что его можно просматривать и печатать, а для каталога - что может отображаться список содержащихся в нем файлов. Право на
для файла означает возможность его редактировать, а для каталога - возможность создания и удаления в нем файлов. Если для файла установлено право
, то его можно запускать как программу. Данная возможность используется при написании скриптов командных интерпретаторов. Право выполнения для каталога означает право доступа к каталогу, но не право на выполнение расположенных в нем файлов, как это может показаться, исходя из названия режима доступа. То есть право выполнения позволяет перейти в данный каталог и выбирать в нем файлы.
. В общем случае существует три категории пользователей:
,
.
- это пользователь, создавший файл. Конечно, для того, чтобы создать файл, нужно иметь право записи в каталог, в котором создается файл. При создании файла обычно устанавливаются права на чтение и запись для владельца, и только чтение для всех остальных пользователей (код прав доступа 644);
- это объединение пользователей, например, для работы над одним проектом. Владелец может разрешить или запретить доступ к файлам для членов группы.
- это все остальные пользователи.
Таким образом, для каждой
имеется свой набор прав доступа. В ОС Unix (Linux) Вы можете узнать права доступа с помощью команды
ls -l ls -l script.php
-rw-r--r-- 1 art crew 700 Jan 27 14:37 script.php
script.php
, владельцем файла является пользователь
, который входит в группу
. Первый символ "
" означает файл, а для каталога - это "
". Следующие три символа "
файла. Символ "
, "
, а "
. Если право на какой-либо вид доступа остутствует, то ставится "
". В таком случае в строке "
.
, а третий набор - для
. В нашем примере "
" указывает на то, что члены группы
имеют только право на чтение, а прочие пользователи также имеют право только на
файла script.php (
).
Для изменения прав доступа в Unix (Linux) используется команда chmod . При этом права доступа можно задавать двумя способами:
.
, его также называют
.
Для изменения прав доступа абсолютным методом используется также команда chmod и представляет собой число в восьмеричной системе. Каждый код прав доступа состоит из
, например, 644:
4 - второй разряд.
файла,
, а
. Одному разряду восьмеричной системы соответствует три разряда в двоичной системе. Взгляните на следующую таблицу:
Таким образом, каждый двоичный разряд задает соответствующий ему тип доступа: первый - чтение, второй - запись, а третий - выполнение. Разряды нумеруются слева направо.
, а
.
Наиболее часто используется маска прав доступа 644. Таким образом, код прав доступа 644 (110 100 100) означает право на чтение и запись для владельца, но только чтение для группы пользователей и прочих пользователей.
Следует отметить, что иногда используется набор прав доступа, состоящий из
. Старшая цифра обозначает флаги SETUID (4), SETGID (2), sticky-бит (1).
Какие права доступа будут у только что созданного каталога командой mkdir ? Обычно маска прав доступа равна 0777 минус значение, выводимое командой umask. Значение, выводимое командой umask, обычно равно 022. Значит, маска прав доступа будет равна 0777 - 0022 = 0755. Это означает, что владелец (см. первую цифру кода - 7, в восьмеричной системе 1111) файла имеет право на чтение (1), запись (1) и просмотр (1) файлов в каталогах. Группа владельца (вторая 5, в восьмеричной системе 101) и прочие пользователи (третья 5) имеют право на чтение (1) файлов в каталоге, но не имеют прав на запись (0), и могут просматривать оглавление каталога (1).
Каталог создается командой mkdir , при этом автоматически устанавливается право выполнения (доступа) для каталога, по умолчанию равное "
", то есть код прав доступа в данном случае 755.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Рубрики: Без рубрики |

Оставить комментарий

Заметьте: Включена проверка комментариев. Нет смысла повторно отправлять комментарий.