Alexander Leidinger wrote:
Quoting Miroslav Lachman <000.f...@quip.cz> (from Tue, 05 Jan 2010
11:45:34 +0100):
Alexander Leidinger wrote:
On Mon, 07 Dec 2009 08:03:53 +0100 Alexander Leidinger
<alexan...@leidinger.net> wrote:
Hi,
now that jails are started in the background (which is good, to
I just realized yesterday that it also stops in parallel (in the
background). This is bad. It may be the case that a jail is not fully
stopped via the rc scripts when the OS decides to kill the remaining
processes during a shutdown.
My first reaction is to only allow to start in the background, but
everything else needs to be serialized.
Any objections or better ideas out there?
Maybe stopping can be done in parallel, but rc script should wait (in
loop) until all jails are stopped or some configurable timeout (for
example 60 seconds).
Feel free to come up with a proof of concept... but the timeout on stop
should be "forever" IMO. If you have a busy software which needs to be
shutdown correctly for data safety or consistency reasons, I do not want
that a reboot or shutdown prevents the correct shutdown.
I misunderstand the whole thing from the begining. It's all about
wording "background" and "parallel".
My first understanding was if I have 4 jails, they are started in
parallel (each other)
something like:
for J in jail1 jail2 jail3 jail4
do
jail_start $J &
done
and similar for stoping them.
But now I see that it is just a start jails in serial as usual but
rc.d/jail runs in the background, so next rc script will start right
after rc.d/jail, not waiting to jails come up.
Both approaches have its pros and cons.
In the first case (starting and stopping each jail in the background)
stopping can be easy as:
for J in $jail_list
do
jail_stop $J &
done
while [ -n "`jls`" ]
do
sleep 1
done
echo "all jails were stopped"
For the second case, where jails are started / stopped as usual but
whole rc.d/jail is backgrounded the only solution I got in my mind is
the second rc script (for example bgjail_stop) with similar loop as
above executed as one of the last rc scripts on system shutdown.
(but I know it is ugly solution)
I hope somebody will come with better idea :)
Miroslav Lachman
PS: as my english is not so well, it is sometimes hard to me to
understand and sometimes hard to explain things
_______________________________________________
freebsd-jail@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-jail
To unsubscribe, send any mail to "freebsd-jail-unsubscr...@freebsd.org"