aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc_src/umask.txt
blob: bc9aac0c19562d5ce9706bacb3791e29da46027a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
\section umask umask - set or get the file creation mode mask

\subsection umask-synopsis Synopsis
<code>umask [OPTIONS] [MASK]</code>

\subsection umask-description Description

\c umask displays and manipulates the "umask", or file creation mode mask,
which is used to restrict the default access to files.

The umask may be expressed either as an octal number, which represents
the rights that will be removed by default, or symbolically, which represents
the only rights that will be granted by default.

Access rights are explained in the manual page for the \c chmod(1) program.

With no parameters, the current file creation mode mask is printed as
an octal number.

- <code>-h</code> or <code>--help</code> prints this message.
- <code>-S</code> or <code>--symbolic</code> prints the umask in symbolic form instead of octal form.
- <code>-p</code> or <code>--as-command</code> outputs the umask in a form that may be reused as input

If a numeric mask is specified as a parameter, the current shell's umask
will be set to that value, and the rights specified by that mask will be
removed from new files and directories by default.

If a symbolic mask is specified, the desired permission bits, and
not the inverse, should be specified. A symbolic mask is a comma
separated list of rights. Each right consists of three parts:

- The first part specifies to whom this set of right applies, and can
be one of \c u, \c g, \c o or \c a, where \c u specifies the user who
owns the file, \c g specifies the group owner of the file, \c o
specific other users rights and \c a specifies all three should be
changed.
- The second part of a right specifies the mode, and can be one of \c
=, \c + or \c -, where \c = specifies that the rights should be set to
the new value, \c + specifies that the specified right should be added
to those previously specified and \c - specifies that the specified
rights should be removed from those previously specified.
- The third part of a right specifies what rights should be changed
and can be any combination of \c r, \c w and \c x, representing
read, write and execute rights.

If the first and second parts are skipped, they are assumed to be \c a
and \c =, respectively. As an example, <code>r,u+w</code> means all
users should have read access and the file owner should also have
write access.

Note that symbolic masks currently do not work as intended.

\subsection umask-example Example

<code>umask 177</code> or <code>umask u=rw</code> sets the file
creation mask to read and write for the owner and no permissions at
all for any other users.