From 55944e5e40b1be2afc4855d8d2baf4b73d1876b5 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 10 Apr 2024 22:49:52 +0200 Subject: Adding upstream version 255.4. Signed-off-by: Daniel Baumann --- docs/SYSTEMD_FILE_HIERARCHY_REQUIREMENTS.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 docs/SYSTEMD_FILE_HIERARCHY_REQUIREMENTS.md (limited to 'docs/SYSTEMD_FILE_HIERARCHY_REQUIREMENTS.md') diff --git a/docs/SYSTEMD_FILE_HIERARCHY_REQUIREMENTS.md b/docs/SYSTEMD_FILE_HIERARCHY_REQUIREMENTS.md new file mode 100644 index 0000000..574df93 --- /dev/null +++ b/docs/SYSTEMD_FILE_HIERARCHY_REQUIREMENTS.md @@ -0,0 +1,20 @@ +--- +title: systemd File Hierarchy Requirements +category: Documentation for Developers +layout: default +SPDX-License-Identifier: LGPL-2.1-or-later +--- + +# systemd File Hierarchy Requirements + +There are various attempts to standardize the file system hierarchy of Linux systems. In systemd we leave much of the file system layout open to the operating system, but here's what systemd strictly requires: + +- /, /usr, /etc must be mounted when the host systemd is first invoked. This may be achieved either by using the kernel's built-in root disk mounting (in which case /, /usr and /etc need to be on the same file system), or via an initrd, which could mount the three directories from different sources. +- /bin, /sbin, /lib (and /lib64 if applicable) should reside on /, or be symlinks to the /usr file system (recommended). All of them must be available before the host systemd is first executed. +- /var does not have to be mounted when the host systemd is first invoked, however, it must be configured so that it is mounted writable before local-fs.target is reached (for example, by simply listing it in /etc/fstab). +- /tmp is recommended to be a tmpfs (default), but doesn't have to. If configured, it must be mounted before local-fs.target is reached (for example, by listing it in /etc/fstab). +- /dev must exist as an empty mount point and will automatically be mounted by systemd with a devtmpfs. Non-devtmpfs boots are not supported. +- /proc and /sys must exist as empty mount points and will automatically be mounted by systemd with procfs and sysfs. +- /run must exist as an empty mount point and will automatically be mounted by systemd with a tmpfs. + +The other directories usually found in the root directory (such as /home, /boot, /opt) are irrelevant to systemd. If they are defined they may be mounted from any source and at any time, though it is a good idea to mount them also before local-fs.target is reached. -- cgit v1.2.3