FAI multi-distribution: Difference between revisions

From FAIWiki
Jump to navigation Jump to search
(makr outdated stuff)
(correct basefiles)
Line 13: Line 13:
Just out of my head without testing it now:
Just out of my head without testing it now:


* build a minimal base image (here, the make-fai-base-tgz from  svn://svn.debian.org/svn/fai/people/lazyboy/fai-distributions canhelp you, but is not required) and put it into CLASSNAME.tgz in the configspace
* build a minimal base image (here, the make-fai-base-tgz from  svn://svn.debian.org/svn/fai/people/lazyboy/fai-distributions canhelp you, but is not required) and put it into CLASSNAME.tgz in the configspace/basefiles
* add the ubuntu host to the class CLASSNAME
* add the ubuntu host to the class CLASSNAME
* check that the package lists of the classes of that host are ubuntu compatible
* check that the package lists of the classes of that host are ubuntu compatible

Revision as of 14:12, 5 July 2007

Status

Most of the stuff below is outdated. I think(but have to test it again - therefore the old stuff is not deleted).

FAI 3.1 (since quite some more versions, but I don't know which) has the most important things integrated:

  • unpacking a base.tgz named CLASS.tgz from the configspace
  • using other package managers (see install_packages or it's doc - I am not sure where and if there exists docs but the sources)

There are some ubuntu classes here: http://faiwiki.informatik.uni-koeln.de/images/b/b1/Fai-configspace.tar.gz

installing other distributions

Just out of my head without testing it now:

  • build a minimal base image (here, the make-fai-base-tgz from svn://svn.debian.org/svn/fai/people/lazyboy/fai-distributions canhelp you, but is not required) and put it into CLASSNAME.tgz in the configspace/basefiles
  • add the ubuntu host to the class CLASSNAME
  • check that the package lists of the classes of that host are ubuntu compatible
  • install

As we have not much feedback on this topic, which makes it hard to know if it works, or to make it better, please report success or failure of this methods on the FAI mailing lists!


old stuff

This is the OUTDATED stuff - I only keep it until I know the thing ABOVE get people to a working cross-distribution install.

It is possible to install other distributions than Debian and dpkg-based ones with FAI. There's an experimental release, which you can get with the apt sources.list line

  deb http://faiwiki.informatik.uni-koeln.de/download/fai-multi-distribution/debian/ experimental/ 

if you're brave. Try it and tell me if it worked for you, or talk about it on the mailing list. You can help to improve it just by reporting things that don't work.

More info on the development of these features: Development_plan#fai-multi-distribution

The code should be fully compatible to FAI 2.9, you should be able to re-use your existing config space with no changes, just some additional classes for the additional distribution, defining different packages and some different installation procedures. It only needs one nfsroot for all.


requirements

  • you should have a debian and ubuntu mirror on your mirrohost, otherwise additional script- or config-editing will be required.
  • it can help if you had previous exposure to FAI, but is not necessarily much harder than get into FAI with Debian sarge only.

usage

  • install the deb's from the download location, including the package fai-distributions (look into it to see what it is about), after adding the apt line to your sources.list, just type
 apt-get update
 apt-get install fai-distributions fai-quickstart
  • do everything you'd do with any other FAI install - read this wiki on how to do that.
  • copy example classes as usual in FAI
  • copy additional example classes:
 cp -a /usr/share/doc/fai-distributions/classes/*/* /usr/local/share/fai/
  • there's some problem with non-executable hooks, do:
 chmod +x /usr/local/share/fai/hooks/*
  • check configuration in
 /etc/fai-distributions/
  • run
 mkdir /tmp/fai
 make-fai-nfsroot
  • run
 sh /usr/lib/fai-distributions/ubuntu_hoary/make-base-tgz

( in lib because it should be called from make-fai-nfsroot)

  • run /usr/lib/fai-distributions/ubuntu_breezy/make-base-tgz
  • run /usr/lib/fai-distributions/mandriva/make-base-tgz (this currently just downloads a base system image. This task needs to be solved.
  • name your install clients sarge, hoary, and breezy, or mandriva in DNS , or add them to the same classes as these example host configurations and install them as usual
  • for mandriva, you need a mandriva mirror at the location specified in files/etc/apt/sources.list/MANDRIVA and in /etc/fai/distributions
  • in general, check the config files in /etc/fai-distributions
  • for mandriva, I have no network suppport in my tests, until I manually add the module for my card to the config - ubuntu and debian do that well
  • also for mandriva, the X config isn't working

missing features

  • runs only on Debian sarge as server and is only tested on i386 architecture
  • only network install is tested - cd install is some more work to do.
  • not tested running on an Ubuntu server. also "normal" FAI has issues running on Ubuntu Linux.
  • in general, FAI itself has not yet been proted to run on any other distribution.

errata

  • MANDRIVA: problem with grub menu.lst - you'll need a file files/boot/grub/menu.lst/HOSTNAME to get a proper menu.lst
  • UBuntu HOARY: does only work with an ubuntu mirror on
 ftp://$mirrorhost/ubuntu
  • Ubuntu hoary: does only work with modified instsoft.UBUNTU hook
  • FAI 2.9 general: /etc/fai/sources.list must have an entry to a repository which has fai-nfsroot available
  • /usr/local/share/fai/files/boot/grub/menu.lst/postinst seems to have a bug within the script. I had to change the line where the variable GROOT is defined to the following one (because a wrong path to device2grub was supplied)
GROOT=$(/usr/bin/device2grub $BOOT_PARTITION)

subversion access

You can also get the latest subversion stuff by checking out

svn co svn://svn.debian.org/svn/fai/people/lazyboy/fai-distributions

and

svn co svn://svn.debian.org/svn/fai/people/lazyboy/fai-2.9-multidistribution

Then going into each of the two new directories and make dpkg-buildpackage -rfakeroot.