summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2014-03-07 04:31:26 +0100
committerLennart Poettering <lennart@poettering.net>2014-03-07 04:31:26 +0100
commit73b80ec2d999c45ce13f3e034704249d80829f7e (patch)
treea7ef3de874917e6b7d0c72bc74b2dd5b40480733 /src/core
parent329f7803ee4414cd015e6f83a835079208608171 (diff)
gpt-auto-generator: automatically find the root disk of the system
When run in an initrd and no root= argument is set (or is set to root=gpt-auto) we will automatically look for the root partition on the same disk the EFI ESP is located on. Since we look for swap, /home and /srv on the disk the root partition is located on, we hence have a fully discoverable chain: Firmware discovers the EFI ESP partition → the initrd discovers the root partition → the host OS discovers swap, /home, and /srv. Note that this requires an EFI boot loader that sets the LoaderDevicePartUUID EFI variable, such as Gummiboot.
Diffstat (limited to 'src/core')
-rw-r--r--src/core/main.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/core/main.c b/src/core/main.c
index 18d0927b7a..6ebfe64187 100644
--- a/src/core/main.c
+++ b/src/core/main.c
@@ -374,6 +374,7 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
log_warning("Environment variable name '%s' is not valid. Ignoring.", value);
} else if (!streq(key, "systemd.restore_state") &&
+ !streq(key, "systemd.gpt_auto") &&
(startswith(key, "systemd.") || startswith(key, "rd.systemd."))) {
const char *c;