5 explains how to setup a networked computer acting as dhcp/pxeboot/nfsroot fully
6 automated installation server to automate installing your favorite hdw-linux
19 1) install minimal nfsroot binaries
21 vi Config [specify arch* variables]
23 note: you dont need to specify fai-server as a target. we are just
24 going to install the nfsroot which will automate the install
25 process. the packages of the fai-server target have to be running
26 on the computer on which you are right now following these
29 note: you might want to fetch hdw binaries from a mirror.
30 edit your /etc/hdw-get.conf file.
32 ./scripts/Create-FAI <nfsroot>
34 where <nfsroot> is the directory to install the fairoot.
36 2) adapt the hdw-get.conf file in the fai nfsroot tree
38 note: again you might want to use a mirror. edit hdw-get.conf, but make
39 sure it is the one from fairoot.
41 3) edit the following files to match your needs, and restart services
46 /tftpboot/pxelinux.cfg/{default,*}
48 (have a look at chapter "fai server configuration")
50 4) adapt configs in ./fai (see chapter "fai config files")
52 5) pxeboot your install candidates. this is actually not fully
53 automated. have a look athe bootdisk section if your client does
56 - type "fai" on pxeboot prompt
57 - after first bootup, use cfdisk to partition your harddisk
58 - touch a disk_ready file in configuration space
59 (after using cfdisk, sync to disk file!)
60 - reboot and finaly wathc your target system to get hdw'ed :)
62 6) optional: login, build a new kernel or do other modifications.
68 config files reside in 1) ./fai/config/<client_ip>/ and 2) ./fai/files/
73 - the files reside in a subdirectory, which is simply the
74 clients ip address, as different clients may need different
80 disk file is used to determine the partition layout and
81 used harddisk. the format: (example, its intuitive!)
89 packages file contains packages to get installed. you
90 may use ./scripts/Helper -create_dist_files to create
91 one. make sure that all the packages are available on
92 the mirror, otherwise the fai install routine will
93 break. hint: switch the partitions to "preserve" and
94 hdw-get will not install already installed packages
99 - files called DEFAULT in a special directory will be copied to
100 every client to the file of its dirname.
101 - files named like a clients ip address will be only copied to
102 that client (again, the file will be the dirname)
106 ./fai/files/etc/X11/XF86Config/DEFAULT will be copied to all
107 clients as /etc/X11/XF86Config file.
110 fai server configuration
111 ------------------------
113 there are several files you need to hack. here we go:
117 file: /etc/dhcpd.conf
119 examples rule, have a look at the configuration for my fai
123 option routers 192.168.10.10;
124 option domain-name-servers 192.168.10.50, 194.25.134.203;
126 fixed-address 192.168.10.80;
127 hardware ethernet 00:50:8b:cb:8e:d2;
130 next-server hackstation; # the fai server
131 server-name hackstation;
132 filename "pxelinux.0";
136 - tftpboot (you will need tftp-hpa as tftpserver)
138 the scripts prepared a working fai config file at
139 /tftpboot/pxelinux.cfg, just add a symbolic link of your clients
140 ip address (in hex, use: gethostip) pointing to fai.
141 ofcourse you need to have the package syslinux installed.
147 the scripts added export entries. just substitute "foobar" to
148 the name or ip address of your fai clients.
152 file: /etc/inetd.conf
154 make sure the tftpboot line is uncommented. if you have problems
155 of tftpd switching to user nobody google for solutions. if you
156 are too lazy substitute "nobody" by "root in inetd.conf. this
157 is dangerous though, you have been warned.
159 note: restart all the mentioned services.
164 for computers old enough to not support pxe but having installed a piece
165 of hardware called floppy disk, you may create a bootdisk containing the
166 install kernel (the pxe stuff is replaced by the bootdisk).
168 - compile a customized kernel <= 1.3 mb. do not unset needed features!
170 (use ./misc/arch/${hdw_arch}/linux.config as .config + modify)
172 - copy bzImage to fai/files/boot/vmlinuz_custom/<ip>
174 - create bootfloppy image
176 dd if=/dev/zero of=bootdisk.img bs=1024 count=1440
177 yes | mke2fs -q -i 40000 -m 0 bootdisk.img
178 mkdir -p /mnt/tmp ; mount -o loop bootdisk.img /mnt/tmp
179 mkdir -p /mnt/tmp/{boot,etc} ; cp bzImage /mnt/tmp/boot/vmlinuz
180 cp misc/fai/lilo.conf /mnt/tmp/etc/lilo.conf
181 (change boot, disk map and image values)
182 touch /mnt/tmp/boot/map # enough? if not take yours from /boot
183 lilo -C /mnt/tmp/etc/lilo.conf
185 (you may store bootdisk.img in the clients config space)
187 finaly: (create the boot floppy)
189 dd if=bootdisk.img of=/dev/floppy/0
194 contact me! -> http://www.hackdaworld.dyndns.org/contents/contact/
195 email: hackbard@hackdaworld.dyndns.org
196 irc: irc.hackdaworld.dyndns.org - #hackdaworld
201 good luck now, you are own your own! enjoy hdw. :)