On 10/05/12 17:24, Rogerio Vinhal Nunes wrote:
> I'm already doing the start on starting mountall, but while the job is
> copying the directory some
> other jobs are processing. I don't know why, but when I do that the system
> simply stops (possibly
> triggers a deadlock) and after 2 minutes it says that the task modprobe is
> not responding for 120
> seconds.
>
> I figured that this task might be the module-init-tools, so I did:
>
> start on (starting mountall or starting module-init-tools)
>
> With that the system stops locking, but strangely my job runs twice. Is that
> expected?
Yes:
http://upstart.ubuntu.com/cookbook/#run-a-job-for-all-of-a-number-of-conditions
The way to have your job start before *any* other is to use 'and' and specify
all the jobs that
'start on startup'. To determine that list of jobs:
initctl show-config -e|egrep -v "\<emits\>"|grep -B1 " start on startup"|egrep
-v "(start on|^--)"
However it might be easier and simpler to start your system with Upstart by
adding the following to
the kernel command-line:
--startup-event=foo
...and then having your job do:
start on foo
emits startup
script
# copy /var here.
end script
post-stop script
# kick off the rest of the system
initctl emit startup
end script
This is in fact essentially what friendly-recovery does in recent versions on
Ubuntu.
See: http://upstart.ubuntu.com/cookbook/#command-line-options
Kind regards,
James.
--
James Hunt
____________________________________
http://upstart.ubuntu.com/cookbook
http://upstart.ubuntu.com/cookbook/upstart_cookbook.pdf
--
upstart-devel mailing list
[email protected]
Modify settings or unsubscribe at:
https://lists.ubuntu.com/mailman/listinfo/upstart-devel