1*4882a593Smuzhiyun#!/bin/sh 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# messagebus: The D-BUS systemwide message bus 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun# chkconfig: 345 97 03 6*4882a593Smuzhiyun# description: This is a daemon which broadcasts notifications of system events \ 7*4882a593Smuzhiyun# and other messages. See http://www.freedesktop.org/software/dbus/ 8*4882a593Smuzhiyun# 9*4882a593Smuzhiyun# processname: dbus-daemon 10*4882a593Smuzhiyun# pidfile: /run/messagebus.pid 11*4882a593Smuzhiyun# 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun# Create needed directories. 14*4882a593Smuzhiyun[ -d /run/dbus ] || mkdir -p /run/dbus 15*4882a593Smuzhiyun[ -d /var/lock/subsys ] || mkdir -p /var/lock/subsys 16*4882a593Smuzhiyun[ -d /tmp/dbus ] || mkdir -p /tmp/dbus 17*4882a593Smuzhiyun 18*4882a593SmuzhiyunRETVAL=0 19*4882a593Smuzhiyun 20*4882a593Smuzhiyunstart() { 21*4882a593Smuzhiyun printf "Starting system message bus: " 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun dbus-uuidgen --ensure 24*4882a593Smuzhiyun dbus-daemon --system 25*4882a593Smuzhiyun RETVAL=$? 26*4882a593Smuzhiyun echo "done" 27*4882a593Smuzhiyun [ $RETVAL -eq 0 ] && touch /var/lock/subsys/dbus-daemon 28*4882a593Smuzhiyun} 29*4882a593Smuzhiyun 30*4882a593Smuzhiyunstop() { 31*4882a593Smuzhiyun printf "Stopping system message bus: " 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun ## we don't want to kill all the per-user $processname, we want 34*4882a593Smuzhiyun ## to use the pid file *only*; because we use the fake nonexistent 35*4882a593Smuzhiyun ## program name "$servicename" that should be safe-ish 36*4882a593Smuzhiyun killall dbus-daemon 37*4882a593Smuzhiyun RETVAL=$? 38*4882a593Smuzhiyun echo "done" 39*4882a593Smuzhiyun if [ $RETVAL -eq 0 ]; then 40*4882a593Smuzhiyun rm -f /var/lock/subsys/dbus-daemon 41*4882a593Smuzhiyun rm -f /run/messagebus.pid 42*4882a593Smuzhiyun fi 43*4882a593Smuzhiyun} 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun# See how we were called. 46*4882a593Smuzhiyuncase "$1" in 47*4882a593Smuzhiyun start) 48*4882a593Smuzhiyun start 49*4882a593Smuzhiyun ;; 50*4882a593Smuzhiyun stop) 51*4882a593Smuzhiyun stop 52*4882a593Smuzhiyun ;; 53*4882a593Smuzhiyun restart) 54*4882a593Smuzhiyun stop 55*4882a593Smuzhiyun start 56*4882a593Smuzhiyun ;; 57*4882a593Smuzhiyun condrestart) 58*4882a593Smuzhiyun if [ -f /var/lock/subsys/$servicename ]; then 59*4882a593Smuzhiyun stop 60*4882a593Smuzhiyun start 61*4882a593Smuzhiyun fi 62*4882a593Smuzhiyun ;; 63*4882a593Smuzhiyun reload) 64*4882a593Smuzhiyun echo "Message bus can't reload its configuration, you have to restart it" 65*4882a593Smuzhiyun RETVAL=$? 66*4882a593Smuzhiyun ;; 67*4882a593Smuzhiyun *) 68*4882a593Smuzhiyun echo "Usage: $0 {start|stop|restart|condrestart|reload}" 69*4882a593Smuzhiyun ;; 70*4882a593Smuzhiyunesac 71*4882a593Smuzhiyunexit $RETVAL 72