As long as rc_verbose is not set to yes in rc.conf, /etc/init.d/local calls the scripts in /etc/local.d with the three arguments ">", "/dev/null" and "2>&1". This is a consequence of an attempt to fix bug 537444. The lines in start() and stop() that execute the scripts now read "${file}" $redirect where $redirect is either empty (for rc_verbose=yes) or contains "> /dev/null 2>&1" (for rc_verbose=no). But, of course, in the latter case $redirect is not treated as a redirection but its words are passed as arguments to ${file}. TEST Set rc_verbose=no in rc.conf und put the script #!/bin/bash echo args = $* in /etc/init.d/local. RESULT The content of $redirect is displayed: * Starting local ... args = > /dev/null 2>&1
The fix is in this pull request: https://github.com/OpenRC/openrc/pull/50