Почему вы используете Umask? - PullRequest
5 голосов
/ 06 мая 2010

Я читаю некоторый исходный код и нашел это утверждение в самом начале основной процедуры:

umask(077);

В чем может быть причина этого?

Страница man (man 2 umask) гласит:

umask - установить маску режима создания файла

Эта очистка позволяет каждому пользователю ограничить доступ по умолчанию к его файлы

Но мне не понятно, зачем кому-то это делать? как ярлык?

Ответы [ 2 ]

10 голосов
/ 06 мая 2010

Настройка umask(077) гарантирует, что любые файлы, созданные программой, будут доступны только их владельцу (0 в первой позиции = все потенциально возможные разрешения) и никому другому (7 во второй / третьей позиции = все разрешения запрещены для группы /другой).

4 голосов
/ 06 мая 2010

Это необходимо для безопасности файловой системы. umask содержит инвертированное число, используя режим файла для нового файла. Например

dzen@DZeN ~ $ umask
022
dzen@DZeN ~ $ touch file
dzen@DZeN ~ $ ls -la file
-rw-r--r--  1 dzen  dzen  0  6 may 14:29 file
dzen@DZeN ~ $ umask 777
dzen@DZeN ~ $ umask      
0777
dzen@DZeN ~ $ touch file1
dzen@DZeN ~ $ ls -la file1
----------  1 dzen  dzen  0  6 may 14:30 file1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...