Variables: Difference between revisions

From FAIWiki
Jump to navigation Jump to search
(fix path for $FAI)
(FAI_CONFIGDIR moved to m-f-n.conf)
Line 67: Line 67:


|-
|-
|FAI_CONFIGDIR||int||/srv/fai/config||fai.conf||*.postinst, fai-setup, fai-cd, fai-mirror, make-fai-nfsroot ||
|FAI_CONFIGDIR||int||/srv/fai/config||make-fai-nfsroot.conf||*.postinst, fai-setup, fai-cd, fai-mirror, make-fai-nfsroot ||
|-
|-
|HOSTNAME||||demohost||||very often|| may the hostname change during installtion? Is the hostname FQDN in some cases? numeric hostname if host-decl-name off in dhcpd.conf
|HOSTNAME||||demohost||||very often|| may the hostname change during installtion? Is the hostname FQDN in some cases? numeric hostname if host-decl-name off in dhcpd.conf

Revision as of 18:38, 20 July 2009

The following Variables do exist in FAI (example values included):

Please do not edit that much, without contacting Mrfai. Currently it's my private list of variable and comments.

type: int = internal use only; CS used in config space (often defined by *.var)

Which variables are needed inside the nfsroot, so the install clients can use them? (maybe write them into fai-client.var or nfsroot.var). Then do not copy fai.conf into the nfsroot any more.

name type example value created by used by comments
BROADCAST 192.168.0.127 get-boot-info scripts/FAIBASE/30-interface
DNSSRVS 192.168.1.16 get-boot-info create_resolv_conf
DNSSRVS_1 192.168.1.16 get-boot-info first element of DNSSRV
DOMAIN workgroup.de get-boot-info task_setup() task_prepareapt()
NETMASK 255.255.255.128 get-boot-info
NETWORK 192.168.0.0 get-boot-info
IPADDR 192.168.0.14 get-boot-info
GATEWAYS 192.168.0.1 get-boot-info
GATEWAYS_1 192.168.0.1 get-boot-info
SERVER kueppers get-boot-info
--
DEBIAN_FRONTEND int noninteractive dpkg -i
do_init_tasks int boolean fai, task_confdir(), prcopyleft() 1 if doing net or CD installations
--
FAI /var/lib/fai/config fai.conf almost every function
FAI_ETC_DIR /etc/fai fai -c make-fai-nfsroot, fai-mirror, fai-cd, task_prepareapt, fai_init()
FAI_ACTION install, sysinfo, softupdate fai-chboot via kernel command line save_log_local() save_log_remote_shell() save_log_remote() get_bootp_info() task_action(), fai-savelog-ftp, updatebase
FAI_FLAGS 'createvt sshd' kernel command line, fai-chboot define_fai_flags() rename flags, e.g $flag_sshd
FAI_CONFIG_SRC nfs://faiserver/srv/fai/config make-fai-nfsroot get-config-dir m-f-n writes its value to $NFSROOT/etc/fai/fai.conf
FAI_LOCATION faiserver:/srv/fai/config make-fai-nfsroot get_bootp_info() get_fai_dir() get_fai_cvs() replaced by FAI_CONFIG_SRC
FAI_LOGPROTO ftp fai.conf fai-setup, save_log_remote() replaces FAI_REMOVECP and FAI_REMOTESH, may be removed from fai.conf, should be defined in class/*.var, but fai-setup needs this too, maybe add option to fai-setup that determines if ssh/rsh should be set up
FAI_ROOT const /target bin/fai almost every script $target has the same value
fai_rundate int 20060123_163824 task_setup() fai-savelog
FAI_VERSION const FAI 3.2 fai, prcopyleft()
FAI_CONFIGDIR int /srv/fai/config make-fai-nfsroot.conf *.postinst, fai-setup, fai-cd, fai-mirror, make-fai-nfsroot
HOSTNAME demohost very often may the hostname change during installtion? Is the hostname FQDN in some cases? numeric hostname if host-decl-name off in dhcpd.conf
HOSTTYPE int x86_64 bash variable prcopyleft
FAI_ALLOW_UNSIGNED *.var prepareapt allow installation of packages from unsigned repositories
LOGDIR /tmp/fai fai very often
LOGPASSWD CS *.var fai-savelog-ftp moved from fai.conf to CS
LOGREMOTEDIR CS upload *.var fai-savelog-ftp moved from fai.conf to CS
LOGSERVER CS *.var fai-savelog, fai-savelog-ftp default: LOGSERVER=$SERVER, moved from fai.conf to CS
LOGUSER fai fai.conf fai-setup, fai-savelog, fai-savelog-ftp,task_chboot() default: LOGUSER= will disable logging
MNTPOINT /media/mirror make-fai-nfsroot, fai-mirror, task_mirror() influences entries in sources.list, may become a fixed path
NFSROOT /srv/fai/nfsroot/ make-fai-nfsroot.conf fai-setup, make-fai-nfsroot, fai-cd, fai-mirror, make-fai-bootfloppy not needed in $NFSROOT, only needed on the install server
STOP_ON_ERROR int 99999 *.var task_error() errors greater STOP_ON_ERROR will cause fai to stop the installation
TFTPROOT /srv/tftp/fai make-fai-nfsroot.conf make-fai-nfsroot, fai-chboot not needed in $NFSROOT, only needed on the install server
PATH int /usr/local/sbin:... fai
SERVERINTERFACE eth0 make-fai-nfsroot.conf fai-setup used to specify interface when building exportfs line, only needed when install server has multiple interfaces
FAI_DEBMIRROR $mirrorhost:/srv/debmirror fai.conf move to make-fai-nfsroot.conf, but needed in $NFSROOT/../fai.conf
--
HOST demohost given on kernel command line can redefine host name
cfclasses int DEFAULT.LINUX.LAST task_defclass() cfagent scripts
classes int DEFAULT LINUX LAST task_defclass() almost every script
device_size int 'sda 71687372' set_disk_info() all disks and their sizes; may become local variable
disklist int sda set_disk_info() setup_harddisks, fai-mount-disk
faimond int 0 determines if faimond is running, merge $faimond and $monserver
monserver kueppers task_confdir sndmon() default: monserver=$SERVER, may be removed, but must be set very early (e.g in fai.conf)
ip int dhcp fai-chboot via kernel append parameter get-boot-info
--
netdevices int eth0 get-boot-info get-boot-info, task_sysinfo, dhclient-fai-script
netdevices_all int eth0 eth1 get-boot-info get-boot-info, task_sysinfo
netdevices_up eth0 get-boot-info get-boot-info, task_sysinfo
nfsroot int /srv/fai/nfsroot/ fai-chboot via kernel append parameter kernel may contain server's IP address, may contain nfs parameters like: v2,rsize=32768,wsize=32768
renewclass int boolean task_defclass() on softupdate recalculate the list of classes, unset after use
romountopt int -o async,noatime,ro unset after use
sndhostname task_confdir() sndmon() sndhostname=$HOSTNAME; client's hostname, do not replace with $HOSTNAME, since HOSTNAME may change during installation
flag_sshd int boolean define_fai_flags()
flag_createvt int boolean define_fai_flags()
task_error int integer every task can set it formerly $terror
target /tmp/target same as $FAI_ROOT
ROOTCMD 'chroot /tmp/target' almost every script
stamp int ..._IN_PROGRESS


CONSOLEFONT CS class/*.var
KEYMAP CS de class/*.var
BOOT_PARTITION CS /dev/sda1 setup_harddisks grub/menu.lst/postinst
ROOT_PARTITION CS /dev/sda1 setup_harddisks LILO/20-create-liloconf
UTC CS yes class/*.var example/simple/scripts
TIMEZONE CS Europe/Berlin class/*.var example/simple/scripts
liloappend CS class/*.var 20-create-liloconf
MODULESLIST CS psmouse class/*.var scripts/FAIBASE/10-misc
MAXPACKAGES CS 300 install_packages limit the number of packages install added to apt-get or aptitude
USE_SETUP_STORAGE CS 1 *.var when set to 1, FAI will use the new partition tool setup-storage
FAI_BACKUPDIR CS *.var fcopy directory used bu fcopy for backup files


Variables that are unused since 3.x versions of FAI:

name type example value created by used by comments
FAI_REMOTECP scp fai.conf fai-savelog replaced by FAI_LOGPROTO
FAI_REMOTESH ssh fai.conf fai-savelog, task_chboot() replaced by FAI_LOGPROTO
diskvar int $LOGDIR/disk_var.sh removed, replace with "$LOGDIR/diskvar"
lpipe int /tmp/fai/logfifo variable removed, try to remove the ugly hack using it
FAI_BOOT dhcp bootp make-fai-nfsroot removed from fai.conf, now using default value, BOOTP is not supported any more
DNSDOMAIN workgroup.de task_setup() removed
installserver kueppers fai.conf only for building FAI_LOCATION removed
mirrorhost 192.168.0.8 fai.conf make-fai-nfsroot.conf,$FAI_DEBOOTSTRAP, $FAI_DEBMIRROR, NFSROOT_ETC_HOSTS removed
fstab int fstab was used for solaris, fstab -> vfstab removed
VIDEODRIVER CS mga 20-hwdetect.source scripts/DEMO/10-misc removed with Xorg

useful oneliners

find all files not under a ".svn" directory and replace the string '$diskvar' with '$LOGDIR/diskvar'

Test:

find -name '.svn' -prune -o -type f -exec perl -n -e 's/\$diskvar/\$LOGDIR\/diskvar/g && print' {} \;

find -name '.svn' -prune -o -type f -exec perl -p -e 's/\$diskvar/\$LOGDIR\/diskvar/g' {} \; | less

Really replace: ( same, but "i" added )

find -name '.svn' -prune -o -type f -exec perl -pi -e 's/\$diskvar/\$LOGDIR\/diskvar/g' {} \;

More info:

perldoc perlrun

man find