Veja man umask
. Diz, em parte:
trusty (1) umask.1posix.gz
Provided by: manpages-posix_2.16-1_all bug
NAME
umask - get or set the file mode creation mask
SYNOPSIS
umask [-S][mask]
DESCRIPTION
The umask utility shall set the file mode creation mask of the current
shell execution environment (see Shell Execution Environment ) to the
value specified by the mask operand. This mask shall affect the initial
value of the file permission bits of subsequently created files.
Isso significa que, quando um arquivo é criado, ele assume que sua permissão será 777
, rwxwrxwrx
, Read, Write and Execute
access para Owner
, Group
e World
. Mas, então, os "bits de modo" (outro nome para "bits de permissão", mas mais curtos) são ANDed com o COMPLIMENT do valor umask
. Se você definir umask 022
(em ~/.bashrc
, ou no shell atual, para afetar esse shell), a operação será:
777 Original mode bits 0B111111111
755 Compliment of 022 0B111101101
----- AND
755 The result, rwxr-xr-x (Read, Write, Execute for Owner, Read, Execute for Group and World
Outro valor comum de umask
é 027
(sem acesso para o mundo).
Esta é uma ideia complicada e merece compreensão. Lembro-me de ter ficado confuso por semanas sobre isso nos anos 1970, quando me deparei com o Unix pela primeira vez.