1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237
|
.\" Hey, EMACS: -*- nroff -*-
.TH fai-chboot 8 " March 2025" "FAI 6"
.\"
.\" File Name macro. This used to be `.PN', for Path Name,
.\" but Sun doesn't seem to like that very much.
.\"
.de FN
\fI\|\\$1\|\fP
..
.SH NAME
fai-chboot \- manage the network boot configuration files
.SH SYNOPSIS
.B fai-chboot
[OPTION]... KERNELNAME HOST...
.br
.B fai-chboot
\-l[e|d|t|o|g] [PATTERN]
.br
.B fai-chboot
\-e HOST...
.br
.B fai-chboot
\-d HOST...
.br
.B fai-chboot
\-c HOST|TEMPLATE HOST|TEMPLATE...
.br
.B fai-chboot
\-i [OPTION]... HOST...
.br
.B fai-chboot
\-I [OPTION]... HOST...
.br
.B fai-chboot
\-a [ACTION]... HOST...
.SH DESCRIPTION
This command creates the configuration files for network booting using
pxelinux and DHCP.
KERNELNAME is the file name of the kernel that will be booted. This
kernel will mount the root filesystem via NFS. You can add
additional kernel parameters and define some FAI specific flags. For
each host one configuration file is created. The file name of the
configuration file is its IP address in upper case hexadecimal or its
MAC address with the prefix "01-". HOST
can be a host name, an IP or a MAC address or the keyword "default".
.SH OPTIONS
.TP
.BI "\-a " action
Same as -i but also sets FAI_ACTION.
.TP
.BI \-B
Set default values for FAI_FLAGS. This is the same as \-f
verbose,sshd,reboot
.TP
.B \-c
Copy an existing config file (called template) to one or more hosts and enable
them for network booting. fai-chboot performs these substitutions if
you use $IP or $HOST in your template:
$IP : the IP address as dotted decimal
$HOST : the assigned hostname
.TP
.BI "\-C " CFDIR
Use CFDIR as the configuration directory. Default is /etc/fai. You can
also set the environment variable FAI_ETC_DIR.
.TP
.BI "\-D " DIR
Set the directory for the network boot configuration to
DIR. The default value is /srv/tftp/fai/pxelinux.cfg/.
.TP
.B \-d
Disable the PXE configuration for the specific HOST. This renames the config file adding
the suffix .disable to it, making PXE boot fall back to the default.
.TP
.B \-e
Re-enable network booting for HOST. This renames the config file removing
the suffix .disable from it, so the next time it uses its own PXE configuration.
.TP
.B \-E
Add FAI_FLAG initial. This causes setup-storage to disable preserving
partitions. This may erase (therefore option E) data on the disk.
.TP
.BI "\-f " fai_flags
Set FAI_FLAGS. The flags must be comma separated.
.TP
.BI \-F
Set default values for FAI_FLAGS. This is the same as \-f
verbose,sshd,createvt
.TP
.B \-h
Show simple help and version.
.TP
.B \-i
Set parameters for booting the FAI install kernel (proper initrd, boot from nfs). This does not set FAI_ACTION
.TP
.B \-I
Same as \-i but also sets FAI_ACTION=install. So a fully automatic
installation will be performed. ATTENTION! This will erase most of the
data on the local disks of the install clients.
.TP
.BI "\-k " parameters
Set kernel append parameters.
.TP
.B \-l
List the configuration for all hosts in short format. If PATTERN is
given, list only hosts matching PATTERN. Lists hostname, FAI_ACTION,
kernel name and IP address in hex. Use \fB\-le\fR, to list only enabled hosts,
\fB-ld\fR to list only disabled hosts, \fB-lt\fR to list only templates,
\fB-lo\fR to list only hosts that do not match any of the
previous categories, and \fB-lg\fR to list the configuration for all hosts,
sorted and ordered by groups (enabled, disabled, templates, others).
Note that a combination of multiple \fB-l\fR options is not supported and that
in listing mode no other action will be performed.
.TP
.B \-L
List the configuration for all hosts. Also list the kernel append parameters.
If PATTERN is given, list only hosts matching PATTERN.
.TP
.B \-n
Do not create configuration but show what would be done. This also
enables the verbose flag.
.TP
.BI \-o
Do localboot via PXE. Do not boot via network card, but use next boot
device which is specified in the BIOS. Normally this is the local disk.
.TP
.B \-p
Preserve existing config files. The default is to overwrite an
existing config file.
.TP
.B \-P
Add the pxelinux option IPAPPEND 6 to the config file. This will add
the two variables BOOTIF and SYSUUID to the kernel command line, that
are also defined as variables inside FAI.
Example:
.ti 19
BOOTIF=01-08-00-27-12-34-56
.ti 19
SYSUUID=00234567-1111-2222-3333-123456789000
.TP
.B \-q
Query the absolute path and filename of the PXE configuration file for a host or a list
of hosts.
.TP
.BI "\-s " PATTERN
Match PATTERN to determine which kernel and initrd to use. Useful if
multiple kernel versions are available.
.TP
.BI \-S
Same as \-i but also sets FAI_ACTION=sysinfo.
.TP
.BI "\-u " URL
Set FAI_CONFIG_SRC to URL. Setting this variable is mandatory for
the operation of FAI. See fai.conf(5) for the format of this variable.
.TP
.BI "\-U " URL
Add URL to kernel and initrd file names. lpxelinux.0 can use FTP and
HTTP for getting these files.
.TP
.B \-v
Create verbose output.
.SH EXAMPLES
.TP
fai-chboot \-l
List the configuration for all hosts.
.TP
fai-chboot \-FSPv -u nfs://faiserver/srv/fai/config atom02
The host atom02 will boot the FAI install kernel but with FAI_ACTION sysinfo.
.TP
fai-chboot \-l tmpl
All templates are listed.
.TP
fai-chboot \-IBPv -u nfs://faiserver/srv/fai/config atom02
The host atom02 will be installed. ATTENTION! All data on the local
hard disks are lost in most cases, because we want to install a new
system. After the installation the host automatically reboots.
.TP
fai-chboot \-vSP \-s6.1 atom04
Booting kernel vmlinuz-6.1.0-22-amd64
append initrd=initrd.img-6.1.0-22-amd64 ip=dhcp
atom04 has 1.2.3.4 in hex 01020304
.br
Writing file /srv/tftp/fai/pxelinux.cfg/01020304 for faiserver
.TP
fai-chboot \-IFv \-u nfs://faiserver/srv/fai/clusterconf node03
.br
node03 will be installed using the configuration space
/srv/fai/clusterconf, which is mounted from faiserver via NFS.
.TP
fai-chboot memtest86+ atom02
The host atom02 will boot the memory test. Install the package
memtest86+ and copy the executable memtest86+.bin to /srv/tftp/fai
without the .bin suffix.
.TP
fai-chboot \-o default
All hosts, that do not have a PXE configuration for their IP-address
will do a localboot, i.e. booting from local disk.
.TP
fai-chboot \-vc lenny64 james007
This command will tell the host james007 to use the template called lenny64.
Beforehand, you have to manually create the template
and save it to /srv/tftp/fai/pxelinux.cfg/lenny64.tmpl.
.TP
fai-chboot \-iFPv atom02 atom03 dom kueppers
The hosts atom02, atom03, dom and kueppers will boot the FAI install
kernel. FAI_ACTION will not be set unless specified with option
\-k or \-I. You can also use the script class/LAST.var on the install server
to set FAI_ACTION.
.TP
fai-chboot \-IFv \-U http://faiserver/fai \-u nfs://faiserver/srv/fai/config demohost
The host demohost will receive the kernel and initrd via the HTTP
(which is much faster than using tftp). On the faiserver you have to
run a web server and create a symlink using:
$ ln -s /srv/tftp/fai /var/www/html/fai
.TP
.SH NOTES
Currently only PXE boot is supported but also with UEFI.
.SH SEE ALSO
.br
.FN /usr/share/doc/syslinux/pxelinux.doc.gz
The pxelinux documentation.
.TP
This program is part of FAI (Fully Automatic Installation). See the FAI manual for more information on how to use fai-chboot. The FAI homepage is https://fai-project.org.
.SH AUTHOR
Thomas Lange <lange@cs.uni-koeln.de>
|