Я попытался изменить настройки umask для некоторых файлов:

umask 0012 для файла c:

-rw-rw-r-- 1 unipro unipro 0 2010-10-15 11:30 c

umask 0013 для файла d:

-rw-rw-r-- 1 unipro unipro 0 2010-10-15 11:32 d

Как получается, что оба имеют одинаковые разрешения, даже после использования разных разрешений umask?

2 ответа2

4

Из Википедии:

The umask only restricts permissions; it cannot grant extra
permissions beyond what is specified by the program that
creates the file or directory.

Реальные права доступа к файлам рассчитываются следующим образом:

real-permissions = requested-permissions AND NOT( umask )

requested-permissions обычно 0666 для файлов (и 0777 для каталогов), поэтому:

0666 AND NOT( 0012 ) = 0664
0666 AND NOT( 0013 ) = 0664
1

Что ж, 1 - это выполнение, а umask не может добавить разрешения, поэтому я предполагаю, что ни для одного из этих файлов не было установлено +x для начала?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .