chiark / gitweb /
core: remove sysv_console option
authorLennart Poettering <lennart@poettering.net>
Fri, 22 Jun 2012 11:16:28 +0000 (13:16 +0200)
committerLennart Poettering <lennart@poettering.net>
Fri, 22 Jun 2012 11:16:28 +0000 (13:16 +0200)
This option never made much sense. It was originally intended to make
sure that the usual startup output of sysv scripts goes to the terminal.
However, since SysV scripts started from a terminal would not output to
that terminal, but rather /dev/console this effect was more often than
not actually taking place. Nowadays systemd has much nicer boot time
status output than SysV which makes the sysv output redundant. Finally,
all output of services goes to the journal anyway, and is not lost.

Hence, let's drop this option, and simplify things a bit.

man/kernel-command-line.xml
man/systemd.conf.xml
man/systemd.xml
src/core/dbus-manager.c
src/core/main.c
src/core/manager.h
src/core/service.c
src/core/system.conf

index 6e1c7e0..6d7c575 100644 (file)
@@ -80,7 +80,6 @@
                                 <term><varname>systemd.crash_chvt=</varname></term>
                                 <term><varname>systemd.confirm_spawn=</varname></term>
                                 <term><varname>systemd.show_status=</varname></term>
-                                <term><varname>systemd.sysv_console=</varname></term>
                                 <term><varname>systemd.log_target=</varname></term>
                                 <term><varname>systemd.log_level=</varname></term>
                                 <term><varname>systemd.log_color=</varname></term>
index 92942f1..613763e 100644 (file)
@@ -79,7 +79,6 @@
                                 <term><varname>DumpCore=yes</varname></term>
                                 <term><varname>CrashShell=no</varname></term>
                                 <term><varname>ShowStatus=yes</varname></term>
-                                <term><varname>SysVConsole=yes</varname></term>
                                 <term><varname>CrashChVT=1</varname></term>
                                 <term><varname>DefaultStandardOutput=journal</varname></term>
                                 <term><varname>DefaultStandardError=inherit</varname></term>
index bf450d5..d3d722a 100644 (file)
                                 <option>true</option>.</para></listitem>
                         </varlistentry>
                         <varlistentry>
-                                <term><option>--sysv-console=</option></term>
-
-                                <listitem><para>Controls whether
-                                output of SysV init scripts will be
-                                directed to the console. This switch
-                                has no effect when run as user
-                                instance. Takes a boolean argument
-                                which may be omitted which is
-                                interpreted as
-                                <option>true</option>.</para></listitem>
-                        </varlistentry>
-                        <varlistentry>
                                 <term><option>--log-target=</option></term>
 
                                 <listitem><para>Set log
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>systemd.sysv_console=</varname></term>
-
-                                <listitem><para>Takes a boolean
-                                argument. If <option>true</option>
-                                output of SysV init scripts will be
-                                directed to the console. Defaults to
-                                <option>true</option>, unless
-                                <option>quiet</option> is passed as
-                                kernel command line option in which
-                                case it defaults to
-                                <option>false</option>.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
                                 <term><varname>systemd.log_target=</varname></term>
                                 <term><varname>systemd.log_level=</varname></term>
                                 <term><varname>systemd.log_color=</varname></term>
                                 <term><varname>quiet</varname></term>
 
                                 <listitem><para>If passed turns off
-                                status output at boot, and disconnects
-                                SysV scripts from the console, much
-                                like
+                                status output at boot, much like
                                 <varname>systemd.show_status=false</varname>
-                                and
-                                <varname>systemd.sysv_console=false</varname>
                                 would. Note that this option is also
                                 read by the kernel itself and disables
                                 kernel log output to the
index 4524327..f57c1ee 100644 (file)
 
 #ifdef HAVE_SYSV_COMPAT
 #define BUS_MANAGER_INTERFACE_PROPERTIES_SYSV                           \
-        "  <property name=\"SysVConsole\" type=\"b\" access=\"read\"/>\n" \
         "  <property name=\"SysVInitPath\" type=\"as\" access=\"read\"/>\n" \
         "  <property name=\"SysVRcndPath\" type=\"as\" access=\"read\"/>\n"
 #else
@@ -569,7 +568,6 @@ static const BusProperty bus_manager_properties[] = {
         { "ShutdownWatchdogUSec", bus_property_append_usec,        "t", offsetof(Manager, shutdown_watchdog),          false, bus_property_set_usec },
         { "HaveWatchdog",  bus_manager_append_have_watchdog,       "b", 0                                              },
 #ifdef HAVE_SYSV_COMPAT
-        { "SysVConsole",   bus_property_append_bool,               "b", offsetof(Manager, sysv_console)                },
         { "SysVInitPath",  bus_property_append_strv,              "as", offsetof(Manager, lookup_paths.sysvinit_path), true },
         { "SysVRcndPath",  bus_property_append_strv,              "as", offsetof(Manager, lookup_paths.sysvrcnd_path), true },
 #endif
index 546582c..8f27a71 100644 (file)
@@ -79,9 +79,6 @@ static int arg_crash_chvt = -1;
 static bool arg_confirm_spawn = false;
 static bool arg_show_status = true;
 static bool arg_switched_root = false;
-#ifdef HAVE_SYSV_COMPAT
-static bool arg_sysv_console = true;
-#endif
 static char **arg_default_controllers = NULL;
 static char ***arg_join_controllers = NULL;
 static ExecOutput arg_default_std_output = EXEC_OUTPUT_JOURNAL;
@@ -364,15 +361,6 @@ static int parse_proc_cmdline_word(const char *word) {
                                 log_warning("setenv failed %s. Ignoring.", strerror(errno));
                 }
                 free(cenv);
-#ifdef HAVE_SYSV_COMPAT
-        } else if (startswith(word, "systemd.sysv_console=")) {
-                int r;
-
-                if ((r = parse_boolean(word + 21)) < 0)
-                        log_warning("Failed to parse SysV console switch %s. Ignoring.", word + 20);
-                else
-                        arg_sysv_console = r;
-#endif
 
         } else if (startswith(word, "systemd.") ||
                    (in_initrd() && startswith(word, "rd.systemd."))) {
@@ -387,9 +375,6 @@ static int parse_proc_cmdline_word(const char *word) {
                          "systemd.crash_chvt=N                     Change to VT #N on crash\n"
                          "systemd.confirm_spawn=0|1                Confirm every process spawn\n"
                          "systemd.show_status=0|1                  Show status updates on the console during bootup\n"
-#ifdef HAVE_SYSV_COMPAT
-                         "systemd.sysv_console=0|1                 Connect output of SysV scripts to console\n"
-#endif
                          "systemd.log_target=console|kmsg|journal|journal-or-kmsg|syslog|syslog-or-kmsg|null\n"
                          "                                         Log target\n"
                          "systemd.log_level=LEVEL                  Log level\n"
@@ -401,12 +386,9 @@ static int parse_proc_cmdline_word(const char *word) {
                          "                                         Set default log error output for services\n"
                          "systemd.setenv=ASSIGNMENT                Set an environment variable for all spawned processes\n");
 
-        } else if (streq(word, "quiet")) {
+        } else if (streq(word, "quiet"))
                 arg_show_status = false;
-#ifdef HAVE_SYSV_COMPAT
-                arg_sysv_console = false;
-#endif
-        } else if (!in_initrd()) {
+        else if (!in_initrd()) {
                 unsigned i;
 
                 /* SysV compatibility */
@@ -672,9 +654,6 @@ static int parse_config_file(void) {
                 { "Manager", "DumpCore",              config_parse_bool,         0, &arg_dump_core           },
                 { "Manager", "CrashShell",            config_parse_bool,         0, &arg_crash_shell         },
                 { "Manager", "ShowStatus",            config_parse_bool,         0, &arg_show_status         },
-#ifdef HAVE_SYSV_COMPAT
-                { "Manager", "SysVConsole",           config_parse_bool,         0, &arg_sysv_console        },
-#endif
                 { "Manager", "CrashChVT",             config_parse_int,          0, &arg_crash_chvt          },
                 { "Manager", "CPUAffinity",           config_parse_cpu_affinity2, 0, NULL                    },
                 { "Manager", "DefaultControllers",    config_parse_strv,         0, &arg_default_controllers },
@@ -780,7 +759,6 @@ static int parse_argv(int argc, char *argv[]) {
                 ARG_CRASH_SHELL,
                 ARG_CONFIRM_SPAWN,
                 ARG_SHOW_STATUS,
-                ARG_SYSV_CONSOLE,
                 ARG_DESERIALIZE,
                 ARG_SWITCHED_ROOT,
                 ARG_INTROSPECT,
@@ -803,9 +781,6 @@ static int parse_argv(int argc, char *argv[]) {
                 { "crash-shell",              optional_argument, NULL, ARG_CRASH_SHELL              },
                 { "confirm-spawn",            optional_argument, NULL, ARG_CONFIRM_SPAWN            },
                 { "show-status",              optional_argument, NULL, ARG_SHOW_STATUS              },
-#ifdef HAVE_SYSV_COMPAT
-                { "sysv-console",             optional_argument, NULL, ARG_SYSV_CONSOLE             },
-#endif
                 { "deserialize",              required_argument, NULL, ARG_DESERIALIZE              },
                 { "switched-root",            no_argument,       NULL, ARG_SWITCHED_ROOT            },
                 { "introspect",               optional_argument, NULL, ARG_INTROSPECT               },
@@ -946,17 +921,6 @@ static int parse_argv(int argc, char *argv[]) {
                         arg_show_status = r;
                         break;
 
-#ifdef HAVE_SYSV_COMPAT
-                case ARG_SYSV_CONSOLE:
-                        r = optarg ? parse_boolean(optarg) : 1;
-                        if (r < 0) {
-                                log_error("Failed to parse SysV console boolean %s.", optarg);
-                                return r;
-                        }
-                        arg_sysv_console = r;
-                        break;
-#endif
-
                 case ARG_DESERIALIZE: {
                         int fd;
                         FILE *f;
@@ -1072,9 +1036,6 @@ static int help(void) {
                "     --crash-shell[=0|1]         Run shell on crash\n"
                "     --confirm-spawn[=0|1]       Ask for confirmation when spawning processes\n"
                "     --show-status[=0|1]         Show status updates on the console during bootup\n"
-#ifdef HAVE_SYSV_COMPAT
-               "     --sysv-console[=0|1]        Connect output of SysV scripts to console\n"
-#endif
                "     --log-target=TARGET         Set log target (console, journal, syslog, kmsg, journal-or-kmsg, syslog-or-kmsg, null)\n"
                "     --log-level=LEVEL           Set log level (debug, info, notice, warning, err, crit, alert, emerg)\n"
                "     --log-color[=0|1]           Highlight important log messages\n"
@@ -1515,9 +1476,6 @@ int main(int argc, char *argv[]) {
         }
 
         m->confirm_spawn = arg_confirm_spawn;
-#ifdef HAVE_SYSV_COMPAT
-        m->sysv_console = arg_sysv_console;
-#endif
         m->default_std_output = arg_default_std_output;
         m->default_std_error = arg_default_std_error;
         m->runtime_watchdog = arg_runtime_watchdog;
index b29d0a7..be2780b 100644 (file)
@@ -222,9 +222,6 @@ struct Manager {
 
         bool show_status;
         bool confirm_spawn;
-#ifdef HAVE_SYSV_COMPAT
-        bool sysv_console;
-#endif
 
         ExecOutput default_std_output, default_std_error;
 
index eeabe8f..ec6aaa5 100644 (file)
@@ -928,10 +928,6 @@ static int service_load_sysv_path(Service *s, const char *path) {
         s->guess_main_pid = false;
         s->restart = SERVICE_RESTART_NO;
         s->exec_context.ignore_sigpipe = false;
-
-        if (UNIT(s)->manager->sysv_console)
-                s->exec_context.std_output = EXEC_OUTPUT_JOURNAL_AND_CONSOLE;
-
         s->exec_context.kill_mode = KILL_PROCESS;
 
         /* We use the long description only if
index c6ba95c..d520818 100644 (file)
@@ -15,7 +15,6 @@
 #DumpCore=yes
 #CrashShell=no
 #ShowStatus=yes
-#SysVConsole=yes
 #CrashChVT=1
 #CPUAffinity=1 2
 #DefaultControllers=cpu