X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fmain.c;h=8717b8a968085693222e924c45ddba6391af133c;hp=a2dc1bc12f707fb69581b28cfee99c8ba99d2b58;hb=ca326f6f2d02b36b3d34c0b2a8552b8be310bed6;hpb=487393e9f11e4a06d91df03232914bd8c4b3368e diff --git a/src/main.c b/src/main.c index a2dc1bc12..8717b8a96 100644 --- a/src/main.c +++ b/src/main.c @@ -43,6 +43,7 @@ #include "fdset.h" #include "special.h" #include "conf-parser.h" +#include "bus-errors.h" static enum { ACTION_RUN, @@ -426,7 +427,7 @@ static int config_parse_cpu_affinity( assert(lvalue); assert(rvalue); - FOREACH_WORD(w, l, rvalue, state) { + FOREACH_WORD_QUOTED(w, l, rvalue, state) { char *t; int r; unsigned cpu; @@ -833,7 +834,7 @@ int main(int argc, char *argv[]) { log_show_color(true); log_show_location(false); - log_set_max_level(LOG_DEBUG); + log_set_max_level(LOG_INFO); if (getpid() == 1) { arg_running_as = MANAGER_SYSTEM; @@ -848,7 +849,7 @@ int main(int argc, char *argv[]) { /* Mount /proc, /sys and friends, so that /proc/cmdline and * /proc/$PID/fd is available. */ - if (geteuid() == 0) + if (geteuid() == 0 && !getenv("SYSTEMD_SKIP_API_MOUNTS")) if (mount_setup() < 0) goto finish; @@ -929,10 +930,11 @@ int main(int argc, char *argv[]) { if (getpid() == 1) install_crash_handler(); - log_debug(PACKAGE_STRING " running in %s mode.", manager_running_as_to_string(arg_running_as)); + log_info(PACKAGE_STRING " running in %s mode.", manager_running_as_to_string(arg_running_as)); if (arg_running_as == MANAGER_SYSTEM && !serialization) { - status_welcome(); + if (arg_show_status) + status_welcome(); modprobe_setup(arg_nomodules); kmod_setup(); hostname_setup(); @@ -962,14 +964,20 @@ int main(int argc, char *argv[]) { fclose(serialization); serialization = NULL; } else { + DBusError error; + + dbus_error_init(&error); + log_debug("Activating default unit: %s", arg_default_unit); - if ((r = manager_load_unit(m, arg_default_unit, NULL, &target)) < 0) { - log_error("Failed to load default target: %s", strerror(-r)); + if ((r = manager_load_unit(m, arg_default_unit, NULL, &error, &target)) < 0) { + log_error("Failed to load default target: %s", bus_error(&error, r)); + dbus_error_free(&error); log_info("Trying to load rescue target..."); - if ((r = manager_load_unit(m, SPECIAL_RESCUE_TARGET, NULL, &target)) < 0) { - log_error("Failed to load rescue target: %s", strerror(-r)); + if ((r = manager_load_unit(m, SPECIAL_RESCUE_TARGET, NULL, &error, &target)) < 0) { + log_error("Failed to load rescue target: %s", bus_error(&error, r)); + dbus_error_free(&error); goto finish; } } @@ -979,8 +987,9 @@ int main(int argc, char *argv[]) { manager_dump_units(m, stdout, "\t"); } - if ((r = manager_add_job(m, JOB_START, target, JOB_REPLACE, false, &job)) < 0) { - log_error("Failed to start default target: %s", strerror(-r)); + if ((r = manager_add_job(m, JOB_START, target, JOB_REPLACE, false, &error, &job)) < 0) { + log_error("Failed to start default target: %s", bus_error(&error, r)); + dbus_error_free(&error); goto finish; } @@ -1006,6 +1015,7 @@ int main(int argc, char *argv[]) { goto finish; case MANAGER_RELOAD: + log_info("Reloading."); if ((r = manager_reload(m)) < 0) log_error("Failed to reload: %s", strerror(-r)); break; @@ -1015,7 +1025,7 @@ int main(int argc, char *argv[]) { goto finish; reexecute = true; - log_debug("Reexecuting."); + log_notice("Reexecuting."); goto finish; default: