Autoinstall with PXE
Hi, We are currently using PXE to autoinstall (kickstart) our RedHat systems. Now we are switching to SUSE. I can't figure out what files to include in a boot image (initrd) to use for PXE boot/install. I have tried the kernel in suse/images/boot/linux and the image in suse/images/boot/initrd. Is this the correct ones? I always get the "Insert modules Disk 3" when running with autoyast=nfs://172.16.100.1/opt/suse set on kernel cmdline. Is this because yast2 cannot find the modules it need? Or does it always ask this question? How do I get past it? (our systems only has a serial console, no floppy, no cdrom). Maybe it should be enough to add all modules I need to /modules. Especially the ones from disk 3,4,5,6.... ? How does yast2 determine its ip address during installation? If it is not set in linuxrc.config or on kernel cmdline does it try dhcp by default? Can yast2 use the server ip in the dhcp response as ip for an nfs server installation? And use the boot filename in same response as path to autoinst.xml? It would be nice you didn't have to specify any ip specifics (or server paths) on either kernel cmdline and linuxrc.config. Yast should be able to pick up everything from the dhcp file. Or do I have to fix the PXE bootstrap loader to supply this information? /J Karlsson
* Jörgen Karlsson <publius@chello.se> [May 22. 2002 20:16]:
Hi,
We are currently using PXE to autoinstall (kickstart) our RedHat systems. Now we are switching to SUSE.
I can't figure out what files to include in a boot image (initrd) to use for PXE boot/install. I have tried the kernel in suse/images/boot/linux and the image in suse/images/boot/initrd. Is this the correct ones?
Yes.
I always get the "Insert modules Disk 3" when running with autoyast=nfs://172.16.100.1/opt/suse set on kernel cmdline. Is this because yast2 cannot find the modules it need? Or does it always ask this question? How do I get past it? (our systems only has a serial console, no floppy, no cdrom).
What do you have in autoyast=nfs://172.16.100.1/opt/suse ? If you have copied the CDs to this directory and you wish to install over NFS, you should use install=nfs://172.16.100.1/opt/suse
Maybe it should be enough to add all modules I need to /modules. Especially the ones from disk 3,4,5,6.... ?
all modules are available in suse/images/boot/initrd. So if you use this image with PXE, it should be enough.
How does yast2 determine its ip address during installation? If it is not set in linuxrc.config or on kernel cmdline does it try dhcp by default?
If you choose to install over network and you do not provide a specific IP address then it will try DHCP.
Can yast2 use the server ip in the dhcp response as ip for an nfs server installation? And use the boot filename in same response as path to autoinst.xml? It would be nice you didn't have to specify any ip specifics (or server paths) on either kernel cmdline and linuxrc.config. Yast should be able to pick up everything from the dhcp file. Or do I have to fix the PXE bootstrap loader to supply this information?
Yes, most of that can be done, consider the following dhcpd.conf: ddns-update-style none; allow bootp; allow booting; option T128 code 128 = string; option T129 code 129 = string; subnet 192.168.1.0 netmask 255.255.255.0 { range dynamic-bootp 192.168.1.100 192.168.1.110; option domain-name "mynet.home.net"; option routers 192.168.1.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255; option domain-name-servers 204.101.251.1,204.101.251.2; } group { next-server 192.168.1.1; filename "vmlinuz.nbi"; option root-path "/work/CDs/full-i386"; use-host-decl-names on; option T128 e4:45:74:68:00:00; host athlon { hardware ethernet 00:00:1c:b5:64:b3; fixed-address athlon; option T129 "autoyast=http://192.168.1.1/profiles/ install=nfs"; option root-path "/work/CDs/full-i386"; } } I am using etherboot here. A floppy contains the image for my NIC. Using options T128, T129 I can tell etherboot what command line parameter it should use.. Independently, you can just pass autoyast=http://192.168.1.1/profiles/ install=nfs to the command line which is very general and without specifying any details concerning the client etc. next-server 192.168.1.1 will be used as the nfs server and root-path will be mounted from this server. On the server you can have a directory with control files in hex format as described in the docs and the client will fetch the file depending on its IP. Now with PXE there must be some method to pass command line params from DHCP, I'am looking into that.. Anas
/J Karlsson
-- Anas Nashif <nashif@suse.com>, SuSE Linux AG Montreal (Laval), Canada
participants (2)
-
Anas Nashif
-
Jörgen Karlsson