.\" Man page generated from reStructuredText. . . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .TH "BOOTCDWRITE.CONF" 5 "2020-08-07" "0.1" "bootcd utils" .SH NAME bootcdwrite.conf \- bootcd utils .SH SYNOPSIS .sp /etc/bootcdwrite.conf .SH DESCRIPTION .sp \fBbootcdwrite.conf\fP is a configuration file used by \fBbootcdwrite\fP\&. The default path is \fB/etc/bootcdwrite.conf\fP\&. .sp This file will be sourced as shell file. The following Options can be used. Examples how to use the Options are shown. .SH OPTIONS .sp \fBSRCDISK\fP .INDENT 0.0 .INDENT 3.5 The Variables \fBSRCDISK\fP defines the root of the files that will be copied. .sp For example, to build an image from a remote system, export root\-directory with nfs, mount it locally to \fI/mnt/remote\fP and add: .INDENT 0.0 .INDENT 3.5 .sp .EX SRCDISK=/mnt/remote .EE .UNINDENT .UNINDENT .sp It is added as prefix to KERNEL, INITRD, DISABLE_CRON and NOT_TO_CD, if this are relativ paths (without starting \(dq/\(dq) .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX SRCDISK=/ .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBKERNEL\fP .INDENT 0.0 .INDENT 3.5 This defines the kernel which is used. More kernels can be defined with KERNEL The numbers have to start with 1 and can continue with 2, 3, 4 ... .INDENT 0.0 .INDENT 3.5 .sp .EX KERNEL1=/boot/vmlinuz\-2.6.18\-3\-686\-bigmem KERNEL2=/boot/vmlinuz\-4.19.0\-5\-amd64 .EE .UNINDENT .UNINDENT .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX KERNEL=vmlinuz .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBAPPEND\fP .INDENT 0.0 .INDENT 3.5 This can be used to define additional options for the kernel For more kernels APPEND can be defined: .INDENT 0.0 .INDENT 3.5 .sp .EX APPEND1=\(dqvga=normal nomodeset\(dq APPEND2=\(dq\(dq .EE .UNINDENT .UNINDENT .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX APPEND=\(dq\(dq .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBINITRD\fP .INDENT 0.0 .INDENT 3.5 This defines the path to initrd. For more kernels INITRD can be defined: .INDENT 0.0 .INDENT 3.5 .sp .EX INITRD1=/boot/initrd.img\-2.6.18\-3\-686\-bigmem INITRD2=\(dqinitrd.img\(dq .EE .UNINDENT .UNINDENT .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX INITRD=\(dqinitrd.img\(dq .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBKLABEL\fP .INDENT 0.0 .INDENT 3.5 This defines a label for the kernel to be choosen when booting from bootcd. Can defines multiple kernels with \fIKERNEL\fP and label \fIKLABEL\fP: .INDENT 0.0 .INDENT 3.5 .sp .EX KLABEL1=686\-3 KERNEL1=/boot/vmlinuz\-2.6.18\-3\-686\-bigmem INITRD1=/boot/initrd.img\-2.6.18\-3\-686\-bigmem APPEND1= .EE .UNINDENT .UNINDENT .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX KLABEL=linux .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBDISPLAY\fP .INDENT 0.0 .INDENT 3.5 Text files to display at boottime (see syslinux doku) When pressing \fBF1\fP at boot time the file defined by \fIDISPLAY\fP is shown. \fBF2\fP will show the file defined by \fIDISPLAY2\fP and \fBF3\fP will show the file defined by \fIDISPLAY3\fP \fBF10\fP lists all people mentioned in \fIchangelog\fP\&. .sp The text file \fIkernelinfo\fP is replaced with a file which includes kernelinfo. .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX DISPLAY=\(dq/usr/share/bootcd/default.txt\(dq DISPLAY2=\(dqkernelinfo\(dq .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBTYP\fP .INDENT 0.0 .INDENT 3.5 TYP can be defined as \fBCD\fP or \fBDVD\fP to get a warning if the size of the image will be larger as the specified medium. .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX TYP=DVD .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBCDDEV\fP .INDENT 0.0 .INDENT 3.5 Specifies one or more CD devices to boot from. The first one is the default. \fBauto\fP tries to find the bootcd on all SCSI and IDE CDROMS .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX CDDEV=\(dqauto /dev/hda /dev/hdb /dev/hdc /dev/hdd /dev/sr0 /dev/sr1\(dq .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBDO_CHECK\fP .INDENT 0.0 .INDENT 3.5 Enables some checks or not. To check for possible problems can take a long time, but it is recommended to do the checks. .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX DO_CHECK=yes .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBNOT_TO_CD\fP .INDENT 0.0 .INDENT 3.5 This variable can also contain special characters. See \fBEVALVARS\fP\&. .sp Add directories which should be excluded from bootcd. Directories are separated by spaces. SRCDISK will be automatically added to each path that does not start with \(dq/\(dq. .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX NOT_TO_CD=\(dq\(dq .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBSSHHOSTKEY\fP .INDENT 0.0 .INDENT 3.5 If using ssh it is helpful to have a unique ssh hostkey for each CD. To be generated at burntime:: Default: .INDENT 0.0 .INDENT 3.5 .sp .EX SSHHOSTKEY=yes .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBUDEV_FIXNET\fP .INDENT 0.0 .INDENT 3.5 If the network interfaces are hardwired in /etc/udev/rules.d/xx_persistent\-net.rules they can removed on bootcd, with: Default: .INDENT 0.0 .INDENT 3.5 .sp .EX UDEV_FIXNET=\(dqyes\(dq .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBVAR\fP .INDENT 0.0 .INDENT 3.5 This defines the directoy where the image resists after build. Default: .INDENT 0.0 .INDENT 3.5 .sp .EX VAR=/var/spool/bootcd .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBFLOPPY_RUNTIME_DEV\fP .INDENT 0.0 .INDENT 3.5 When you booting from cd changes will be read from this device. Without a floppy: .INDENT 0.0 .INDENT 3.5 .sp .EX FLOPPY_RUNTIME_DEV=\(dq\(dq .EE .UNINDENT .UNINDENT .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX FLOPPY_RUNTIME_DEV=/dev/fd0 .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBBOOTCDFLOPPY\fP .INDENT 0.0 .INDENT 3.5 If the system should boot the kernel from floppy. This reduces space on floppy used by bootcdflopcp. For this to work FLOPPY_CREATE_DEV has to be specified: .INDENT 0.0 .INDENT 3.5 .sp .EX BOOTFLOPPY=yes|no .EE .UNINDENT .UNINDENT .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX BOOTFLOPPY=no .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBBOOT_ONLY_WITH_FLOPPY\fP .INDENT 0.0 .INDENT 3.5 If you several machines will be booted from the same bootcd, you must have each one can hav separat configuraiton (exp: /etc/network/interfaces) on floppy. If the floppy can not be mounted, it may be a good idea to stop booting with: .INDENT 0.0 .INDENT 3.5 .sp .EX BOOT_ONLY_WITH_FLOPPY=yes .EE .UNINDENT .UNINDENT .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX BOOT_ONLY_WITH_FLOPPY=no .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBCLEAN_VAR\fP .INDENT 0.0 .INDENT 3.5 delete some chached files in /var with: Default: .INDENT 0.0 .INDENT 3.5 .sp .EX CLEAN_VAR=yes .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBTO_FSTAB\fP .INDENT 0.0 .INDENT 3.5 To add addiditionel entries to fstab. Use for example: .INDENT 0.0 .INDENT 3.5 .sp .EX TO_FSTAB=\(dq/dev/hdc1 /home ext3 defaults 1 1 .EE .UNINDENT .UNINDENT .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX TO_FSTAB=\(dq\(dq .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBNOTCOMPRESSED\fP .INDENT 0.0 .INDENT 3.5 Files or Directory\-Trees that should never be compressed on CD can be listed here. This can be used for documentation which should be visible without installing the bootcd. Default: .INDENT 0.0 .INDENT 3.5 .sp .EX NOTCOMPRESSED=\(dq\(dq .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBDISABLE_CRON\fP .INDENT 0.0 .INDENT 3.5 Files listed will be on the cdrom with a .no_run_on_bootcd suffix so run\-parts won\(aqt execute them. The original file will be a link to /bin/true. This is meant for cron maintenance scripts which are useless on a static cdrom. The default is to disable the daily find, standard and security scripts. With bootcd2disk this files will be reactivated again. .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX DISABLE_CRON=\(dqetc/cron.daily/find etc/cron.daily/standard etc/cron.daily/security\(dq .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBMKISOFS_CHNG\fP .INDENT 0.0 .INDENT 3.5 With this variable some options given to mkisofs by bootcdwrite can be changed. .sp Example: To use \fI\-opt1\fP and \fI\-opt2 \fP and to not use any previous \fI\-opt1 [...]\fP, \fI\-opt2 []\fP and \fI\-opt3 [...]\fP and to leave any other options as defined: .INDENT 0.0 .INDENT 3.5 .sp .EX MKISOFS_CHNG=\(dq\-opt1 \-opt2 !\-opt3\(dq .EE .UNINDENT .UNINDENT .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX MKISOFS_CHNG=\(dq\(dq .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBextra_changes()\fP .INDENT 0.0 .INDENT 3.5 It is possible to define a function called extra_changes to have some files modified on the ISO image. Here is an example: .INDENT 0.0 .INDENT 3.5 .sp .EX extra_changes() { bootcd_global VAR echo \(dqnoname\(dq >$VAR/changes/etc/hostname mkdir \-p $VAR/changes/etc/network ( echo \(dqauto lo\(dq echo \(dqiface lo inet loopback\(dq echo \(dq\(dq echo \(dqauto eth0\(dq echo \(dqiface eth0 inet static\(dq echo \(dq address 0.0.0.0\(dq echo \(dq netmask 255.255.255.0\(dq ) >$VAR/changes/etc/network/interfaces echo \(dq127.0.0.1 localhost noname\(dq >$VAR/changes/etc/hosts cat $SRCDISK/etc/passwd | grep \-v \-e \(dq^bs:\(dq \-e \(dq^bianca:\(dq \-e \(dq^tim:\(dq >$VAR/changes/etc/passwd cat $SRCDISK/etc/shadow | grep \-v \-e \(dq^bs:\(dq \-e \(dq^bianca:\(dq \-e \(dq^tim:\(dq >$VAR/changes/etc/shadow cat $SRCDISK/etc/group | grep \-v \-e \(dq^bs:\(dq \-e \(dq^bianca:\(dq \-e \(dq^tim:\(dq >$VAR/changes/etc/group } .EE .UNINDENT .UNINDENT .sp Default: .INDENT 0.0 .INDENT 3.5 .sp .EX # make sure the function is not defined unset \-f extra_changes .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .sp \fBBOOTCDMODPROBE\fP .INDENT 0.0 .INDENT 3.5 If booted from initrd bootcd has to load the necessary modules. If only modules provided by initramfs\-tools are needed you can specify \(dqstandard\(dq here: .INDENT 0.0 .INDENT 3.5 .sp .EX BOOTCDMODPROBE=standard .EE .UNINDENT .UNINDENT .sp If bootcd should try extra hard to load neccessary modules you can specify \(dqbootcd\(dq here. Bootcd will use discover for this purpose. So discover has to be installed: .INDENT 0.0 .INDENT 3.5 .sp .EX BOOTCDMODPROBE=bootcd .EE .UNINDENT .UNINDENT .sp If you specify auto, bootcd will check if discover is installed. If it is installed BOOTCDMODPROBE=bootcd will be set, if not BOOTCDMODPROBE=standard will be set. Be aware that people have reported, that sometimes BOOTCDMODPROBE=bootcd may not work but sometimes it is needed. Default: .INDENT 0.0 .INDENT 3.5 .sp .EX BOOTCDMODPROBE=auto .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .SH EVALVARS .INDENT 0.0 .INDENT 3.5 Most variables listed in chapter \fBOPTIONS\fP can\(aqt contain special characters. .sp It is not recommended to use special characters anyway, but the variable \fBNOT_TO_CD\fP may contain blank ( ), dollar ($), backslash (\e), qoute (\(dq) and backquote (\(ga). This variables are called \fBEVALVARS\fP in this manpage, because in shell script, the \fIeval\fP command can be used to easily read them. .sp For example to define \fBNOT_TO_CD\fP with the files or directories \(dq/etc/noblank\(dq, \(dq/etc/blank name1\(dq and \(dq/etc/blank name2\(dq the following config line would be possible: .INDENT 0.0 .INDENT 3.5 .sp .EX NOT_TO_CD=\(dq/etc/noblank \e\(dq/etc/blank name1\e\(dq /etc/blank\e name2\(dq .EE .UNINDENT .UNINDENT .sp Because all variables have to be readable by shell with the \fIeval\fP command, the syntax can be checked. if the config line above is entered in a shell with the test commands: .INDENT 0.0 .INDENT 3.5 .sp .EX eval \(dqset \-\- $NOT_TO_CD\(dq echo \(dq#=<$#> 1=<$1> 2=<$2> 3=<$3> 4=<$4>\(dq .EE .UNINDENT .UNINDENT .sp should print out the result: .INDENT 0.0 .INDENT 3.5 .sp .EX #=<3> 1= 2= 3= 4=<> .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .SH ENVIRONMENT .sp \fBia_logfile\fP .INDENT 0.0 .INDENT 3.5 The logfile of \fIbootcdwrite\fP is \fI/var/log/bootcdwrite\fP, if not overwriten with variable \fIia_logfile\fP before. .UNINDENT .UNINDENT .SH USING FUNCTIONS .INDENT 0.0 .INDENT 3.5 Used functions listed in \fIOPTIONS\fP should declare all used variables listed in \fIOPTIONS\fP with the function \fBbootcd_global [...]\fP\&. .sp For example a function \fBextra_changes()\fP that wants to use variable \fBVAR\fP should start with: .INDENT 0.0 .INDENT 3.5 .sp .EX extra_changes() { bootcd_global VAR .EE .UNINDENT .UNINDENT .sp see full example in \fBOPTIONS/extra_changes()\fP .sp The function \fBbootcd_global\fP makes sure that all given variables are declared. .UNINDENT .UNINDENT .SH SEE ALSO .sp bootcd(7), bootcdwrite(1), bootcd2disk(1), bootcdflopcp(1), bootcdmk2diskconf(1), bootcd2disk.conf(5) .SH AUTHOR bernd.schumacher@hpe.com License: GNU General Public License, version 3 .SH COPYRIGHT Bernd Schumacher (2007-2020) .\" Generated by docutils manpage writer. .