Violent Tempest wrote:
> Hi,
>
> I'm trying to convert Fedora 9 init scripts to Upstart 0.5 jobs. I
> installed bazaar.launchpad.net/~cjdahlin/upstart/dbus-userspace/ in
> /usr/local/, and added some path fixes to the scripts
>
> diff --git a/jobs.d/rcS b/jobs.d/rcS
> index dca6939..8a71b86 100644
> --- a/jobs.d/rcS
> +++ b/jobs.d/rcS
> @@ -11,13 +11,13 @@ stop on runlevel
>  # without information so that it defaults to previous=N runlevel=S.
>  console output
>  script
> -     runlevel --set S >/dev/null || true
> +     /usr/local/sbin/runlevel --set S >/dev/null || true
>
>       /usr/local/etc/init/rc.sysinit
> -     runlevel --reboot || true
> +     /usr/local/sbin/runlevel --reboot || true
>  end script
>  post-stop script
> -     if [ "$UPSTART_EVENT" == "startup" ]; then
> +     if [ "$UPSTART_EVENTS" == "startup" ]; then
>               runlevel=$(/bin/awk -F ':' '$3 == "initdefault" { print $2 }' 
> /etc/inittab)
>               [ -z "$runlevel" ] && runlevel="3"
>               for t in $(cat /proc/cmdline); do
> @@ -26,6 +26,6 @@ post-stop script
>                               [1-9])       runlevel="$t" ;;
>                       esac
>               done
> -             exec telinit $runlevel
> +             exec /usr/local/sbin/telinit $runlevel
>       fi
>  end script
> diff --git a/jobs.d/serial b/jobs.d/serial
> index 6869090..fc714be 100644
> --- a/jobs.d/serial
> +++ b/jobs.d/serial
> @@ -5,14 +5,14 @@ stop on runlevel [016]
>  instance
>  pre-start script
>       while /bin/true ; do
> -             LANG=C /sbin/initctl status rcS | grep -wq "rcS (stop) waiting" 
> && break
> +             LANG=C /usr/local/sbin/initctl status rcS | grep -wq "rcS (stop)
> waiting" && break
>               sleep 1
>       done
>       while /bin/true ; do
> -             runlevel=$(/sbin/runlevel | /bin/awk '{ print $2 }')
> +             runlevel=$(/usr/local/sbin/runlevel | /bin/awk '{ print $2 }')
>               case "$runlevel" in
>                       2|3|4|5)
> -                             LANG=C /sbin/initctl status rc$runlevel | grep 
> -wq "rc$runlevel
> (stop) waiting" && break
> +                             LANG=C /usr/local/sbin/initctl status 
> rc$runlevel | grep -wq
> "rc$runlevel (stop) waiting" && break
>                               ;;
>                       *)
>                               ;;
> @@ -23,7 +23,7 @@ pre-start script
>  end script
>  exec /sbin/agetty /dev/$1 $2 vt100-nav
>  post-stop script
> -     if [ "$UPSTART_EVENT" !=
> "${UPSTART_EVENT##fedora.serial-console-available}" ]; then
> -             initctl emit --no-wait fedora.serial-console-available $1 $2
> +     if [ "$UPSTART_EVENTS" !=
> "${UPSTART_EVENTS##fedora.serial-console-available}" ]; then
> +             /usr/local/sbin/initctl emit --no-wait 
> fedora.serial-console-available $1 $2
>       fi
>  end script
>
> (I'm not brave enough to replace stable Upstart shipped with distro ;)).
>
> When I try to boot the system I see a lot of "initctl: Unable to send
> message: Connection refused" errors. I suppose that these are dbus
> errors. Do I need to start dbus very early?
>
> TIA.
>
> Regards
>
> P.S. For SELinux developers created reference policy. Maybe we should
> create reference init script for Upstart? I volunteer for this task.
>
>   
Most likely you installed incorrectly, and the old init process is still 
running. The initctl program uses a private connection and doesn't need 
the actual system bus. It should always be able to get to upstart.

There's already a trunk specfile in fedora CVS, its just not been tagged 
for build yet. You should use that.

--CJD

-- 
upstart-devel mailing list
[email protected]
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/upstart-devel

Reply via email to