Pre-requites
apt-get install wget unzip genisoimage
wget - pulling down files from the internet unzip - uncompress any zip files genisoimage - Needed for creating the ISO image
Making custom freedos disk
- make a source directory where you will keep all these files.
mkdir ~/src_freedos
export FDSRC=~/src_freedos
cd $FDSRC
- Download the FreeDos OEM CD-ROM disc builder http://www.fdos.org/bootdisks/ISO/FDOEMCD.builder.zip
wget http://www.fdos.org/bootdisks/ISO/FDOEMCD.builder.zip -O ${FDSRC}/FDOEMCD.builder.zip
- unzip the package and go into the new directory called “FDOEMCD”
unzip FDOEMCD.builder.zip
cd ${FDSRC}/FDOEMCD
- Time for customising the FreeDOS image, always remember once you have created this image you will be making it as a read only media so this will be the only time which you will be able to make any changes (unless you setup a RAMDISK to the image which isn’t in the scope of this document). It is recommended to copy the files you want into their own directory under “CDROOT”. In the example below i am copying a BIOS firmware update package and renaming one of the applications
mkdir -p ${FDSRC}/FDOEMCD/CDROOT/BIOS
unzip /tmp/X8dtu61.708.zip -d ${FDSRC}/FDOEMCD/CDROOT/BIOS
cd ${FDSRC}/FDOEMCD/CDROOT/BIOS
cp AFUDOS.SMC AFUDOS.EXE
4a. One useful application to install to the image is reboot http://mirror.aarnet.edu.au/pub/freedos/files/util/system/reboot.zip, by default DOS does not have an application for performing a reboot of the server after you have finished performing the work you wish todo.
cd ${FDSRC}/
wget http://mirror.aarnet.edu.au/pub/freedos/files/util/system/reboot.zip -O ${FDSRC}/reboot.zip
unzip ${FDSRC}/reboot.zip -d ${FDSRC}/FDOEMCD/CDROOT
- Time to re-compile the image to an ISO image for use as either a CD or PXE boot image, drop back to the “FDOEMCD” directory and then run the following mkisofs command (feel free to alter the publisher information if you wish i have left in the FreeDos information in place, i sometimes alter it to highlight whether it’s been built for a specific hardware platform).
cd ${FDSRC}/FDOEMCD
mkisofs -o fdoem-20120306.iso -q -l -N
-boot-info-table -iso-level 4 -no-emul-boot
-b isolinux/isolinux.bin
-publisher "FreeDOS - www.freedos.org"
-A "FreeDOS 1.0 Distribution" -V FDOSBIOS -v CDROOT