Відповіді:
Коли ви використовуєте umask
077, лише користувач читає, записує та виконує дозволи. Користувач, безумовно, зможе відкривати ("виконувати") каталоги (див. Докладніше про те, чому каталоги повинні бути виконані у моїй відповіді тут ). Однак файли завжди повинні бути виконаними, вводячи chmod u+x myfile
; вони ніколи не виконуються автоматично. Ще кілька корисних відомостей umask
наведено у цій відповіді:
Ймовірна можливість виникнення ваших проблем полягає в тому, що ви, можливо, ввели значення трохи неправильно, що призвело до іншого umask, або що значення не було встановлено постійно. Якщо ви ввійдете umask 077
в термінал, він буде корисним лише для сеансу терміналу; щоб зробити його постійним для вашого користувача, просто додайте його umask 077
до свого ~/.profile
. Система встановлена за замовчуванням umask
у /etc/login.defs
; це раніше було в /etc/profile
. Дивіться також manpage для pam_umask
, що представляє собою модуль пам’яті, який обробляє призначення umask
.
Наступні приклади - з успішного налаштування umask 077
:
1) Для створення папки : mkdir doc
поставлено прапорець, stat doc
надав правильні дозволи та папку "виконується":
File: `doc'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 801h/2049d Inode: 6425268 Links: 2
Access: (0700/drwx------) Uid: ( 1000/ mike) Gid: ( 1000/ mike)
Access: 2012-09-12 11:33:01.236675420 +0100
Modify: 2012-09-12 11:33:01.236675420 +0100
Change: 2012-09-12 11:33:01.236675420 +0100
Birth: -
2) Для створення файлів : touch new
поставлено прапорець з stat new
даними правильних дозволів; файл робиться виконуваним лише тоді, коли ви використовуєте chmod +x
:
File: `new'
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 801h/2049d Inode: 6303902 Links: 1
Access: (0600/-rw-------) Uid: ( 1000/ mike) Gid: ( 1000/ mike)
Access: 2012-09-12 11:34:58.272676270 +0100
Modify: 2012-09-12 11:34:58.272676270 +0100
Change: 2012-09-12 11:34:58.272676270 +0100
umask
З 077 дасть дозволу показано, але якщо у вас все ще є проблеми з правами після установки umask 077
належним чином (як описано далі вище) можна подивитися в неї далі.
Значення umask буде використано для відповідного зміни фмаски за замовчуванням для дозволів файлів (базовий дозвіл 0666) та маски для дозволів каталогу / папки (базовий дозвіл 0777).
Ефективні значення fmask та dmask будуть обчислюватися шляхом вирахування значення umask (Октальні обчислення).
Таким чином, umask 0022 призведе до того, що маска отримає значення 0644 (тобто 0666 - 0022), тоді як маска буде 0755 (тобто 0777 - 0022).
Umask 0077 запобігти файли створюються з будь-яким доступом не тільки до світу (позначеного кінцевої восьмеричної цифра) , але і вашим членам групи (позначений передостанній восьмеричної цифра).