FAI technical questions/issues

Alex misc at viceconsulting.co.nz
Thu Mar 25 10:05:37 CET 2004


FAI technical questions/issues

i'm trying to setup FAI on a debian 3.0r2 woody machine.  

slice:/# uname -a
Linux slice 2.4.18-bf2.4 #1 Son Apr 14 09:53:28 CEST 2002 i686 
unknown

i know this is a fairly old kernel, is this an issue in regards to
getting fai working?

i'm using fai v2.5.4 and fai-kernels v1.6.

i've managed to build a debian mirror.

so far i've encountered several problems.

a)

when running make-fai-nfsroot, it died trying to run mknbi-linux, it
complained that --outfile was not a valid option, and that --ip=any
was an invalid host

original line:

mknbi-linux --ip=any --output=/boot/fai/installimage \
          $NFSROOT/boot/$kfile-$KERNELVERSION

i changed this to

mknbi-linux --outfile=/boot/fai/installimage \
          $NFSROOT/boot/$kfile-$KERNELVERSION

why is this error occurring? how to fix? are my changes going to 
cause
problems later on?

b)

when running make-fai-nfsroot, it complained about unresolved symbols
when running depmod:

chroot $NFSROOT depmod -a -F /boot/System.map-$KERNELVERSION 
$KERNELVERSION || true

(KERNELVERSION is: 2.4.24-fai)

there were 508 unresolved symbols.  examples:

depmod: *** Unresolved symbols in /lib/modules/2.4.24-
fai/kernel/arch/i386/kernel/cpuid.o
depmod: *** Unresolved symbols in /lib/modules/2.4.24-
fai/kernel/arch/i386/kernel/microcode.o
depmod: *** Unresolved symbols in /lib/modules/2.4.24-
fai/kernel/arch/i386/kernel/msr.o
...

why is this happening?  how to fix?  i commented out the depmod line 
from
the script - is this going to cause problems later?

c)

after creating a boot disk and connecting to the nfs root, it 
sucessfully deployed the
system to the target host via NFS.

however, i noticed the kernel had not been installed, and was thus 
unable to boot
into linux.

why is this happening? how do i fix this?

i believe it has something to do with correctly setting the following 
two
variables in /usr/local/share/fai/class/DEFAULT.var:

#kernelversion=2.4.24 # for the packages  kernel-doc and kernel-
source
#addpackages="kernel-image-2.4.24-2-386"

however, what do i set these to? i tried a variety of combinations 
but no
luck.

do i need to have a valid kernel-image-<version>.deb file installed 
in

/usr/local/share/fai/files ?

if so, what would be a suitable version (the host i'm building is
going into production and would require a kernel from the stable
branch).

do i need to set both "kernelversion" and "addpackages" ?

if i have a kernel-image file called:

kernel-image-2.4.18-686_2.4.18-5_i386.deb

then do i set the addpackages to "kernel-image-2.4.18-686" or
"kernel-image-2.4.18-686_2.4.18-5_i386" or
"kernel-image-2.4.18-686_2.4.18-5_i386.deb" or what?

i found this step to be not very clearly explained in existing
documentation.

d) 

my target host is getting its IP via DHCP, 172.30.1.132, and its 
hostname
is thus being set to the name "172.30.1.132" - is there any way to 
change the hostname to something else like "demohost" ? (note: i do 
not
have access to the DHCP server, which is most likely
running on a windows box anyhow).

i had to edit /usr/local/share/fai/class/LAST.var to set FAI_ACTION 
to
install:

mktable() {

    # Here, you have to add all your hosts
    # This is the table: host -> action

    cat <<-EOT

   172          install
   172.30.1.132 install
   kueppers     install
   bigfoot      sysinfo
   pittermaennche install
EOT
}

is this correct?

d2)

when i deployed the FAI to the host target, it issued a warning 
saying the System.map-2.4.24-fai contained unresolved symbols.  i
renamed this file to avoid the warning, why is this happening? how
to fix?

e)

how is are the files deployed to the host machine, are they .deb 
files which
are installed via dpkg? or is it just a straight copy of the 
$NFSROOT?

f)

when i build the $NFSROOT, will it copy all files in my local debian 
mirror?

at the moment i have a minimal partial debian mirror, i'd like to add
extra packages like mysql, can i just add these to my local partial 
debian
mirror, re-run make-fai-nfsroot, and hey-presto, target hosts will 
have
mysql on them too?

g)

i'd eventually like to boot off CD instead of through the network.

would i still need to install these utilities, particularly the 
network
related ones:

packages="dhcp3-client ssh portmap file rdate cfengine cvs bootpc 
rsync wget
rsh-client less dump reiserfsprogs dpkg-dev ext2resize hdparm parted
dnsutils ntpdate dosfstools sysutils dialog discover mdetect libnet-
perl
netcat"

?

i'm attempting to use fai-bootcd from 
http://members.iinet.net.au/~niall/fai/.

i'm somewhat confused as to what versions of fai and fai-bootcd i 
should use.

i obtained the latest versions of fai and fai-kernels off the fai 
homepage,
however, the fai-bootcd utility will not work with the latest version
of fai on woody (which is what i'm running).

can i force the install and hack it to work?

what is my best option for creating a fully automated installation 
off
cd rom?  should i be using sid to create the NFSROOT and .iso cd 
image?

or should i downgrade fai to a version supported by the "stable" 
version
of fai-bootcd (ie fai <= 2.3.4)?

any light shed on this subject would be very much appreciated.

h)

fai-boot cd question:

according to the documentation, in:

/usr/share/doc/fai-bootcd/fai-bootcd.HOWTO.gz

it says

Your kernel on the machine where you are building the FAI BootCD must 
have
loopback support compiled as a module.  The following option must be 
set in
your .config

    CONFIG_BLK_DEV_LOOP=m

does this mean the kernel that ends up on the host machine requires 
this
as a module? will it fail if you have this option set to "y" ?

why must this be as a module?

it also mentios that these options must be set in the FAI kernel:
The following extra options must be applied:

    CONFIG_BLK_DEV_INITRD=y
    CONFIG_IDE=y
    CONFIG_BLK_DEV_IDE=y
    CONFIG_ISO9660_FS=y
    CONFIG_EXT2_FS=y
    CONFIG_ZISOFS_FS=y

does this mean i must RECOMPILE the fai kernel with these options? or 
can
i set these options in:

/usr/lib/fai/nfsroot/etc/kernel-img.conf ?

(what does the file "kernel-img.conf" do, incidentally?)

my ultimate goal of building a fully self-contained automated 
installation
of debian on CD seems like pretty hard work.  is fai/fai-bootcd the 
right
road to take?

i've done a bit of research, there appears to be other tools like
progeny autoinstall (no longer supported?) and (systemimager.org - 
this
creates an 'image' ? good if you have several machines of some 
hardware, but i will be deploying my fai bootable cd to various
hardware spec'd machines...) .. any thoughts on this?

thanks all for any help you can provide.  i can certainly see the 
potential
and power of fai but have pretty much failed to unleash any of that 
power
at this stage.

alex.




More information about the linux-fai mailing list