DRBLDiskless Remote Boot in Linux
- Install the GNU/Linux distribution and configure all network cards. In the following, we use "eth0" to connect the Internet, while eth1, eth2, eth3 are for DRBL environment (set the network card's IP addresses to be private IPs (i.e. 192.168.x.x, the following example, we set eth1:192.168.101.254, eth2:192.168.102.254, eth3:192.168.103.254...); Please remember this principle, private IP (e.g. 192.168.x.x) is used for DRBL environment.
If on your GNU/Linux, the NetworkManager service is startup automatically, it is recommended to turn off it or remove it. //NOTE// Before you turn off or remove it, make sure you have set the static IP address on your machine. For Fedora, you can: chkconfig --del NetworkManager, chkconfig --del NetworkManagerDispatcher, and turn on network service by "chkconfig network on". For Debian or Ubuntu, it is recommended to remove it completely by: apt-get remove network-manager. Your firewall rules will be overwritten when setting up the DRBL server. After completing the DRBL setup and successfully testing it, you can config your firewall using your own rules. Remember, in the DRBL environment, NFS, NIS, tftp, and dhcp services are required, so dot NOT block them in your firwall rules.
- If you want to get better performance, you can do some tuning as following. This is just an option, not a must:
- If you are using Gnome as the desktop environment, for example, Fedora Core 6, you can delete some language files in /etc/gconf/gconf.xml.defaults/ if you are sure they are useless to you (For Ubuntu 6.10, those files are in directory /var/lib/gconf/defaults/). This will save a lot of disk space in the server (For example, if you just keep %gconf-tree.xml and %gconf-tree-zh_TW.xml, then 40 MB space will be released. Say, if you have 40 clients, then you will save 1.6 GB disk space in this server), and the loading of NFS server will be lower. In Debian or Ubuntu, you can also install localepurge, then run "localepurge" to remove those unnecessary locale files.
- If reiserfs filesystem is available in your GNU/Linux distribution, it is recommended for its better performance compared with ext2/ext3. You can refer to this benchmark.
- After Linux is installed on the server, make sure the hard disk drive DMA mode is on. It will accelerate the access speed of the server's hard disk drive. Use "hdparm /dev/hdx" to check to see if the DMA mode is on or off. If it is off, run "hdparm -d1 -c3 -k1 /dev/hdx" to turn it on. Replace the /dev/hdx to the /dev/hda if your IDE HD for this Linux system is in "Primary IDE."
- Note:Regarding Selinux in Fedora Core 3 or later version - Unless you are an administrator who thoroughly understands SELinux, we recommend you turn SELinux off, otherwise you will probably encounter some unusual problems such as "Permission denied." To disable SELinux, set SELINUX=disabled in /etc/sysconfig/selinux or /etc/selinux/config and then reboot your machine.
- If you have only one NIC, you may set two IP addresses, i.e. one in eth0 and another alias IP address in eth0:1. eth0 will be used for the DRBL server to connect to the public Internet while eth0:1 will be used for the DRBL environment. Here's how to setup eth0:1 in RedHat-like Linux. NOTE! This alias IP address will cause some problems if you do not provide static IP address to DRBL client via its MAC address. In this example, the DRBL server will lease IP address to any machine connected to eth0 if no MAC address is set in the DHCP service. Hence you'd better not to use alias IP if you do not know exactly what you are doing! Two or more NICs are recommended!
Continue the next step - II. Install the required packages on server