I am writing about Unix file permissions - i.e. user/group/world, read(4)/write(2)/execute(1), chmod(), etc. I would like to point the reader to a standard (e.g. Markdown have the CommonMark standard, country codes have the ISO 3166-1 standard). But everywhere I've read simply refers to it as "traditional Unix file system permissions".

What is the standard for file permissions in Unix?

This question is similar but more specific to What is responsible for file permissions in a linux system?, which is a bit muddled?

1 Answer 1


tl;dr The standard for UNIX filesystem permissions is defined in the IEEE Std 1003.1-2017 (a.k.a. POSIX.1-2017) standard, specifically in the <sys/stat.h> page.

From the man page of chmod, it states:


The chmod utility is expected to be IEEE Std 1003.2 (“POSIX.2”) compatible with the exception of the perm symbol “t” which is not included in that standard.

If you look up the sections in IEEE Std 1003.2 that deals with file mode bits, it referred to another standard - the XBD standard.

see file mode bits in the XBD specification, Chapter 2, Glossary)

XBD is a 'volume' within the IEEE Std 1003.1-2017 (a.k.a. POSIX.1-2017) standard. And from Chapter 3 (Definitions) section 169 (File Mode Bits), it states that:

File Mode Bits are defined in detail in <sys/stat.h>.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .