diff options
author | Lennart Poettering <lennart@poettering.net> | 2010-04-08 02:00:40 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2010-04-08 02:00:40 +0200 |
commit | 37d88da701d75a3893b262580dc59042147a9b89 (patch) | |
tree | 317ed60afa8743013b3297af8b102bb4f76bbe79 | |
parent | 82771ba1f9d1099b86e0bda64a0fabfd0c9d2d22 (diff) |
main: fall back to rescue target when default target cannot be loaded
-rw-r--r-- | main.c | 7 | ||||
-rw-r--r-- | manager.h | 1 |
2 files changed, 7 insertions, 1 deletions
@@ -307,7 +307,12 @@ int main(int argc, char *argv[]) { if ((r = manager_load_unit(m, default_unit, &target)) < 0) { log_error("Failed to load default target: %s", strerror(-r)); - goto finish; + + log_info("Trying to load rescue target..."); + if ((r = manager_load_unit(m, SPECIAL_RESCUE_TARGET, &target)) < 0) { + log_error("Failed to load rescue target: %s", strerror(-r)); + goto finish; + } } if (action == ACTION_TEST) { @@ -83,6 +83,7 @@ struct Watch { #define SPECIAL_SYSLOG_TARGET "syslog.target" /* Should pull in syslog.socket or syslog.service */ #define SPECIAL_RTC_SET_TARGET "rtc-set.target" /* LSB's $time */ #define SPECIAL_BASIC_TARGET "basic.target" +#define SPECIAL_RESCUE_TARGET "rescue.target" /* For SysV compatibility. Usually an alias for a saner target. On * SysV-free systems this doesn't exist. */ |