On Tue, 20 Nov 2001, Taylor, ForrestX wrote: > > Subject: Re: 7.1 nfs install requires DHCP? > > > > > > > > In syslinux.cfg we can have: > > > > > > > > > > > > to boot without dhcp > > > > -------------------- > > > > label ks > > > > kernel vmlinuz > > > > append initrd=initrd.img ks=floppy > > > > And in ks.cfg there is this line: > > network --bootproto static --ip xxx.xxx.xxx.xxx --netmask > > 255.255.255.0 --gateway xxx.xxx.xxx.1 --nameserver xxx.xxx.yyy.yyy > > > > That will do it. At least we do it. > > Yes, that will give you a static IP address after installation, but as far > as I know, 7.1 still needs a DHCP address when you first boot from the > installation media. Do you have a DHCP server? > Not for kickstart. Here's the process we go through (cut-and paste from our kickstart installation log file): 1) In order to do a network installation using NFS, I needed to have the contents of the RedHat CD on an NFS server. I copied the contents of both of the RedHat 7.1 CDs to: nfsserver:/RedHat/7.1/OS_CD/ 2) I created a kickstart config file that had commands to configure the hardware, install specific RPM packages from the Red Hat Linux 7.1 distribution, install other RPM packages that we want as part of the default installation, and create directories, install configuration files and other tasks to tailor the Red Hat Linux 7.1 installation to fit our installation model. Here are the steps I took to create the kickstart config file: a) I installed the entire base Red Hat Linux 7.1 system on a typical PC. b) I removed these RPM packages from the system: openssh-askpass-gnome-2.5.2p2-5 openssh-askpass-2.5.2p2-5 openssh-clients-2.5.2p2-5 openssh-server-2.5.2p2-5 openssh-2.5.2p2-5 c) I ran this command to create a template config file: mkkickstart > ks.cfg I did this mainly to get the list of installed packages in the format that a kickstart file wants. In addition, this provides the template for placing the commands that direct the OS installation, disk partitioning and local configuration. d) I made the following changes to the template config file: - changed the installation method from "cdrom" to "nfs" and specified the NFS server and directory to mount; - specified the IP address, hostname, gateway and nameserver to use for network access; - specified the proper mouse type; - specified the proper disk partitions to use and how to mount them; - set up a dummy password for root rather than a real (encrypted) password - added lots of comments to describe what was going on in the file In addition, I created a "%pre" section that had commands to the "fdisk" program to erase and re-partition the disk. I also created a "%post" section that had the commands to save default configuration files, replace them with locally-modified versions, install other config files, create directories needed in our local environment, and turn on or off various daemons. I made two different versions of this config file, one for 9GB disk drives and one for 18GB disk drives. That is because the "%pre" section differs for each of these disk drives. The complete kickstart configuration files can be found at the end of this document. 3) I created an installation boot floppy that had networking code in it. The default installation boot floppy for Red Hat Linux does not have this code. Here is how I made this floppy disk: a) I put this CD in the CD-ROM drive on my Linux computer: Red Hat Linux 7 Operating System CD 1 Binary CD It was automatically mounted here: /mnt/cdrom b) I placed a blank floppy disk into the floppy disk drive on my computer. c) A binary image of the network-aware installation boot floppy is contained on the CD. When the CD is mounted on my Linux computer, the image file appears as: /mnt/cdrom/images/bootnet.img Here are the commands I used to copy this image onto the blank floppy disk: dd if=/mnt/cdrom/images/bootnet.img of=/dev/fd0 bs=1440k This floppy disk is an MS-DOS format disk and can be manipulated using a Windows PC or using the "mtools" utilities under Linux. 4) I placed the kickstart config file on the "bootnet.img" installation disk that I just made. Here are the steps I took to do this: a) I put a copy of the kickstart configuration file: ks.cfg in my home directory on my Linux computer. b) I put the "bootnet.img" disk in the floppy disk drive of my Linux computer. c) I copied the kickstart configuration file onto the "bootnet.img" disk using these commands: cd ~/ mcopy ks.cfg a: -o 5) (omitted...deals with backups of existing machines) 6) I used the "bootnet.img" installation disk to boot the PC. This booted the PC into the initial RedHat installation screen. I entered the following command at this point: linux ks=floppy When the installation was done, a message displayed on the machine's console stating that the installation was complete, to remove the boot media from the drive and press the <Enter> key. I did all of this. 7) The machine rebooted to a graphical LILO screen. I let LILO automatically boot Linux and logged in as root. In the ks.cfg file, I set these values: # I N S T A L L A T I O N M E T H O D nfs --server aaa.bbb.ccc.xxx --dir /RedHat/7.1/OS_CD # N E T W O R K C O N F I G U R A T I O N network --bootproto static --ip aaa.bbb.ccc.yyy --netmask 255.255.255.0 --gateway aaa.bbb.ccc.nnn --nameserver aaa.bbb.ccc.zzz --hostname user.desktop.linux.machine # D E V I C E S P E C I F I C A T I O N device ethernet 3c59x along with all of the other specs for keyboard, mouse, language, disk partitioning, packages to install and pre- and post-processing. An entry for the machine to be kickstarted: aaa.bbb.ccc.yyy goes into the /etc/exports file of the nfs server (aaa.bbb.ccc.xxx). I also put entries into our DNS server for: aaa.bbb.ccc.yyy user.desktop.linux.machine Things then just work. No DHCP is involved in either kickstart or in routine operation. Carl G. Riches Software Engineer Department of Mathematics Box 354350 voice: 206-543-5082 or 206-616-3636 University of Washington fax: 206-543-0397 Seattle, WA 98195-4350 internet: riches@xxxxxxxxxxxxxxxxx