/usr
is mounted later in the startup process.
(In fact, some older hard drives are
used as local swap and /tmp.)
| Item | Quantity |
| MSI K8D motherboard | 8 |
| AMD Opteron 240 CPU | 16 |
| ATP PC2700 512 MByte Registered ECC Memory | 32 |
| Tripp-Lite SmartPro 3000VA UPS | 1 |
| D-Link DGS-1008T gigabit ethernet switch | 2 |
| Enermax EGS465AX-VE PFC power supply | 8 |
| Seagate Barracuda 40 Gbyte hard drive | 4 |
| Generic mid-tower ATX case | 8 |
| Enermax case fan | 8 |
GinGin64, a 64-bit version of RedHat 8. Advice given in Diskless Linux by Chip Coldwell and Computer Network Booting by Colby Kraybill, et al. were most helpful. Set-up details are recorded in a rather sketchy text file.
During August 2004, we updated the system to Fedora Core 2 for x86-64. In the following, instructions are given for a new install of the operating system and for recovery from a hard drive failure. In both cases, one one starts by a standard install of the operating system on a new hard drive. These are the options chosen during the installation:
chkconfig postfix on; rpm -e sendmail
chkconfig kudzu off
chkconfig iptables off
mkdir /usr45; mkdir /backup
/etc/fstab
bdump.
See info tar for background on incremental
backups.
mount /backup; ls /backup
dump*.tgz files
cd /
tar zxf /backup/dump0.tgz --listed-incremental=/backup/dump0.inc
tar zxf /backup/dump1.tgz --listed-incremental=/backup/dump1.inc
reboot and you are done.
hosts
listing is on the NIS server bvds
chkconfig dhcpd on
chkconfig nfs on
/usr/local/lib64 and /usr/local/lib
to /etc/ld.so.conf and run ldconfig.
PROXY_ARP=yes to
/etc/sysconfig/network-scripts/ifcfg-eth2
/etc/sysctl.conf
/etc/X11/fs/config
/etc/postfix/main.cf:
mydomain = bvds.geneva.edu
relayhost = bvds
/etc/postfix/aliases (near the end) and
run newaliases.
/etc/postfix/main.cf:
pxelinux.0 into
/tftpboot.
mkdir /tftpboot/pxelinux.cfg and
echo "DEFAULT vmlinuz\n APPEND root=/dev/nfs ip=dhcp" > /tftpboot/pxelinux.cfg/C0A801.
mkdir /export; mkdir /export/barak cd /export/barak # work in this directory!For now on, we assume this is the working directory.
mkdir usr; mkdir home mkdir usr/bin; mkdir tmp; mkdir proc mkdir usr45 cp -a /dev . ; cp -a /etc . ; cp -a /var . cp -a /bin . ; cp -a /sbin . ; cp -a /root . cp -a /mnt . ; cp -a /lib . ; cp -a /lib64 . chomod a+w tmp # Else X doesn't start! echo "ServerName jael" >> /etc/cups/client.confTurn off ip-forwarding in
etc/sysctl.conf.
Remove any unneeded kernel modules from lib/modules.
The startup script /etc/rc.d/rc.sysinit uses
/bin/bash.
However, /bin/bash needs two /user/bin
files to run:
cp -a /usr/bin/id usr/bin cp -a /usr/bin/dircolors usr/binThe following init scripts were modified: see the older instructions for more information. Turn off extra services nfs, tftp, dhcpd on the clients by switching the root
/usr/sbin/chroot /export/barak
and using /sbin/chkconfig ... off.
You can use chroot to verify that the
client filesystem has been set up properly.
/usr/src/linux-2.6.7-diskless.
One can start with the Fedora config file: copy the
appropriate config in /usr/src/linux*/configs
to /usr/src/linux-2.6.7-diskless/.config.
Start up the configuration script and set:
Processor type and features
2 CPUs
Device Drivers
Block devices
N Compaq SMART (compile error)
Networking support
Network device support
Ethernet (100 Mbit)
Y 3COM 3C590 etc. support
Ethernet (1000 Mbit)
Y Broadcom Tigon 3 support
Wireless LAN
N Wireless LAN (otherwise, a module compile error)
WAN
N WAN (otherwise, module compile error)
Networking options
N IP: multicasting (cruft)
N IP: advanced router (cruft)
Y IP: kernel level autoconfiguration
Y IP: DHCP support
Character devices
I2C support
M I2C support
M I2C PCF 8584 interfaces
M I2C device interface
Turned off sound support (due to a module compile error)
File systems
Y ext3 filesystem support
Network file systems
Y NFS file system support
Y Root file system
Make using make -j4.
Now we can install the kernel and the modules:
make -j 4 modules_install INSTALL_MOD_PATH=/export/barak cp System.map /export/barak/System.map cp arch/x86_64/boot/bzImage /tftpboot/vmlinuz
/export directory, copy over files for each node.
When copying over, one needs to modify the files etc/fstab
and etc/sysconfig/network-scripts/ifcfg-eth?.
The files /etc/dhcpd.conf
and /etc/hosts
should include entries for each client node.
|
Brett van de Sande,
Homepage: http://www.geneva.edu/~bvds and E-mail: bvds@pitt.edu |
|