diff options
author | Lennart Poettering <lennart@poettering.net> | 2010-07-16 21:31:34 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2010-07-16 21:31:34 +0200 |
commit | 0ff3dea70038ca4501ab38ad38ecd67d8eea1e00 (patch) | |
tree | 4146703acf188dbaad27b7b8ceaa7c4dd95b41bc | |
parent | b15bdda87046f5e46080fd84fda878cba2da0fc8 (diff) |
systemctl: always show units with active jobs in list-units output
-rw-r--r-- | fixme | 6 | ||||
-rw-r--r-- | src/systemctl.c | 9 |
2 files changed, 9 insertions, 6 deletions
@@ -35,8 +35,6 @@ * systemctl status $PID, systemctl stop $PID! -* systemctl list-units doesn't show units with actvie jobs? - * timeout waiting for mount devices? * default logic for serial getty, ck logging, ssh readahead @@ -61,14 +59,14 @@ * vielleicht implizit immer auf syslog dependen? -* für selinux muss der socket wissen was für service geexeced wird. - * debian deadlock when partition auf noauto is. * maintenance units müssen vergessen werden * maintenance muss dokumentiert werden +* fingerprint.target, smartcard.target, wireless.target, gps.target + External: * patch /etc/init.d/functions with: diff --git a/src/systemctl.c b/src/systemctl.c index 6388d231df..1ded936954 100644 --- a/src/systemctl.c +++ b/src/systemctl.c @@ -218,7 +218,7 @@ static int list_units(DBusConnection *bus, char **args, unsigned n) { if ((!arg_type || ((dot = strrchr(id, '.')) && streq(dot+1, arg_type))) && - (arg_all || !streq(active_state, "inactive"))) { + (arg_all || !streq(active_state, "inactive") || job_id > 0)) { int a = 0, b = 0; @@ -228,7 +228,7 @@ static int list_units(DBusConnection *bus, char **args, unsigned n) { printf("%-45s %-6s %-12s %-12s%n", id, load_state, active_state, sub_state, &a); if (job_id != 0) - printf(" %-15s%n", job_type, &b); + printf(" => %-12s%n", job_type, &b); else b = 1 + 15; @@ -249,6 +249,11 @@ static int list_units(DBusConnection *bus, char **args, unsigned n) { dbus_message_iter_next(&sub); } + printf("\nLOAD = Load State, reflects whether the unit configuration was properly loaded.\n" + "ACTIVE = Active State, the high-level unit activation state, i.e. generalization of the substate.\n" + "SUB = Substate, the low-level unit activation state, possible values depend on unit type.\n" + "JOB = Job, shows scheduled jobs for the unit.\n"); + if (arg_all) printf("\n%u units listed.\n", k); else |