FAI, Softupdates and /var/run as tmpfs

Axel Freyn axel-freyn at gmx.de
Tue Feb 17 16:22:39 CET 2009


Hello,

I'm using FAI 3.2.16 with lenny. In order to avoid problems with
clients which are not shut down properly by the users, I mount /var/run
and /var/run as tmpfs (by defining RAMLOCK=yes and RAMRUN=yes in
/etc/default/tmpfs).
However, this introduces a problem when performing softupdates with FAI:
As the directory /var/run/fai is created only once by the package
fai-client, the creation of the lock-file
/var/run/fai/fai_softupdate_is_running (by /usr/lib/fai/subroutines,
line 536) fails.

This results at least in two problems
a) two softupdates could run at the same time...
b) fcopy -U does not detect the softupdate and copies the file also
during a softupdate.

(side-remark: I detected this problem as the machine won't boot after a
softupdate due to an additional error in 
files/boot/grub/menu.lst/postinst:
There, 

# during softupdate use this file
[ -r $target/var/log/fai/disk_var.sh ] && . $target/var/log/fai/disk_var.sh

does not work. I believe $target/var/log/fai/disk_var.sh should be
exchanged by $target/var/log/fai/last-install/localhost/disk_var.sh ??

(that's the example-file from
/usr/share/doc/fai-doc/examples/simple/files/boot/grub/menu.lst/postinst
)
)



1) I would propose to change the softupdate-routines in order to create
the directory /var/run at runtime, at not as part of the package. (maybe
that's already done in 3.2.18;-) 
2) Why is fcopy checking /var/run/fai/fai_softupdate_is_running in order
to determine whether a softupdate is running - instead of checking the
environment-variable FAI_ACTION?

But nevertheless, FAI is great;-)

Axel


More information about the linux-fai mailing list