[oe] [meta-oe][PATCH] rsyslog: add status command and minor fixes for initscript
Jack Mitchell
ml at communistcode.co.uk
Wed Apr 16 09:46:05 UTC 2014
On 16/04/14 10:31, jackie.huang at windriver.com wrote:
> From: Jackie Huang <jackie.huang at windriver.com>
>
> - add status command
> - remove the unsupported option:
> rsyslogd: error: option -c is no longer supported - ignored
> - add --oknodo for do_start
>
> Signed-off-by: Jackie Huang <jackie.huang at windriver.com>
> ---
> .../recipes-extended/rsyslog/rsyslog/initscript | 35 ++++++++++++++++++--
> 1 file changed, 32 insertions(+), 3 deletions(-)
>
> diff --git a/meta-oe/recipes-extended/rsyslog/rsyslog/initscript b/meta-oe/recipes-extended/rsyslog/rsyslog/initscript
> index 8dee684..4121434 100644
> --- a/meta-oe/recipes-extended/rsyslog/rsyslog/initscript
> +++ b/meta-oe/recipes-extended/rsyslog/rsyslog/initscript
> @@ -9,7 +9,8 @@ PATH=/sbin:/usr/sbin:/bin:/usr/bin
> NAME=rsyslog
> RSYSLOGD=rsyslogd
> RSYSLOGD_BIN=/usr/sbin/rsyslogd
> -RSYSLOGD_OPTIONS="-c5"
> +# with rsyslog 7, -c is no longer supported
> +RSYSLOGD_OPTIONS=""
> RSYSLOGD_PIDFILE=/var/run/rsyslogd.pid
> SCRIPTNAME=/etc/init.d/$NAME
> # Exit if the package is not installed
> @@ -27,7 +28,10 @@ do_start()
> # Return
> # 0 if daemon has been started
> # 1 if daemon could not be started
> - start-stop-daemon -S --quiet --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_ARGS || return 1
> + # if daemon had already been started, start-stop-daemon will return 1
> + # so add -o/--oknodo(if nothing is done, exit 0)
> + start-stop-daemon -S --quiet --pidfile $PIDFILE --exec $DAEMON \
> + --oknodo -- $DAEMON_ARGS || return 1
> }
> #
> # Function that stops the daemon/service
> @@ -56,6 +60,20 @@ do_reload() {
> start-stop-daemon -K --signal HUP --quiet --pidfile $PIDFILE --name $NAME
> return 0
> }
> +
> +do_status() {
> + NAME=$1
> + PIDFILE=$2
> + # -t: test only but not stop
> + start-stop-daemon -K -t --quiet --pidfile $PIDFILE --name $NAME
> + # exit with status 0 if process is found
> + if [ "$?" = "0" ]; then
> + return 0
> + else
> + return 1
> + fi
> +}
> +
> case "$1" in
> start)
> echo -n "starting $RSYSLOGD ... "
> @@ -82,8 +100,19 @@ case "$1" in
> $0 stop
> $0 start
> ;;
> + status)
> + echo -n "status $RSYSLOGD ... "
> + do_status "$RSYSLOGD" "$RSYSLOGD_PIDFILE"
> + if [ "$?" = "0" ]; then
> + echo "running"
> + exit 0
> + else
> + echo "stopped"
> + exit 1
> + fi
> + ;;
> *)
> - echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
> + echo "Usage: $SCRIPTNAME {start|stop|status|restart|reload|force-reload}" >&2
> exit 3
> ;;
> esac
>
Hi Jackie,
I have a patch pending that fixes the rsyslog unsupported option. I
don't know if you want to take that and re-spin a v2 otherwise the patch
will probably fail to apply.
Cheers,
--
Jack Mitchell (jack at embed.me.uk)
Embedded Systems Engineer
Cambridgeshire, UK
http://www.embed.me.uk
--
More information about the Openembedded-devel
mailing list