/etc/os-release
Symbolic link to actual os-release file.
File describing the current os and some of its attributes
The os-release file is a new-line separated list of key value pairs. The syntax of this file is a reduced sh(1) variable assignment with the following restrictions:
Strings cannot be concatenated together
No variable expansion is done
All shell special characters must be quoted as documented in sh(1)
Variable assignments must be included inside of double quotes if they contain characters outside of A-Z, a-z and 0-9
All strings should be UTF-8 format
Non-printable characters should not be used in the strings
Lines starting with the character ‘#’ are ignored as comments.
The following variables are defined by the standard.
A string describing the preferred OS name.
Version string for the OS, in its usual and customary format.
Lower case version of the name with only a-z, 0-9, ‘.’, ‘-’, and ‘_’.
Lower case version of the version with only a-z, 0-9, ‘.’, ‘-’, and ‘_’.
A pretty version of the name presented to the user. May contain release information.
Suggested color presentation for the OS. This string should be suitable for inclusion within an ESC [ m ANSI/ECMA-48 escape sequence to render the OS in its preferred color. This variable is optional.
A CPE name for the operating system. This field shall follow the NIST Common Platform Enumeration specification.
Links on the internet, in RFC 3986 format for different aspects of this OS. These variables are optional.
A string identifying the build. This variable is optional.
A string describing the variant of this operating system. This variable is optional.
Lower case version of the variant with only a-z, 0-9, ‘.’, ‘-’, and ‘_’. This variable is optional.
All other variables have no standard-defined meaning.
/etc/os-release
Symbolic link to actual os-release file.
/var/run/os-release
Generated os-release file describing the currently running system.
18 releases since FreeBSD 12.2-RELEASE; the text changed 6 times.