Building a Folding Farm - The Installation
(Page 3 of 4 )
I downloaded the Folding Server .iso and burned the image to a 3" CD-R using Nero 6.0 (Tools, Burn from Image...). After some initial problems with uncooperative CD-ROM drives, I got the disk to boot up. Once in, I typed /install to begin the installation process.
At this point in time, the installation is far from seamless. There is no way that someone could install this program without having the instructions (web site, documentation) in front of them. I talked with the developer, Will Murnane, and he indicates that he does intend to make the software easier to work with, but since he (like many of us) has to work for a living, it will take some time before we will see a revised product.
This being a Linux Operating System, many of the instructions may seem arcane, if not downright confusing to GUI-only folk. However, if you have worked with DOS any, then some of the command-line items may make a little sense. I will attempt to outline simplistically what each command is and what it does, however, I am not by any means a Linux-guru; if in doubt, there's always the Internet -- using your favorite search engine, search for the word "man" (as in manual) and the command that you have questions about. You should get a pile of information regarding that command and its usage. If you're still in doubt, there is Dev Hardware and a billion and a half other forums full of penguin-heads eager to help out.
As per the instructions, I determined which drive I wanted to install on (hda), and then partitioned it accordingly in a second console reached through alt+F2. My partition scheme is the default one -- 512MB for the / (root) partition, 512MB for swap, and the rest for saving the folding work data. Partitioning is accomplished with the command fdisk, which is similar in nature to the DOS FDISK command. I entered fdisk /dev/hda (/device/hard drive "a" which would be the master drive on the first IDE controller bus), deleted all the existing partitions and then created new ones as indicated above. Note that the installation program only formats the root and swap partitions-- any other partitions need to be formatted manually using the mkfs (make filesystem) command.
Once the partitioning (and formatting the last partition) was done, I used alt+F1 to return to the installation program and entered in the information asked for, namely what drive to install on, which partition was the root (hda1), which was swap and what to name the additional partition. The program formatted the root and swap partitions, installed the operating system and then asked to reboot to complete the installation. One must not forget to eject the CD before rebooting.
A quick note about how Linux assigns NICs -- as a general rule (as in, I have yet to see it go otherwise), a Linux will detect network cards and assign them numbers based on their position in the PCI bus (given that the cards are PCI-type), which means a card in PCI slot 1 (or slot 0 if there is one) will be assigned eth0, the next card in line on the bus will be eth1, and so on. Many motherboards assign the first PCI slot to the one nearest to the processor, however, I have seen various configurations (particularly on proprietary boards) so your best bet is to pay attention to how the connectors on the motherboard are numbered and record the hardware addresses (MAC addresses) for each card when installing them. Eth0 will handle the folding branches and eth1 connects to the LAN/Internet.
On rebooting, I ran into a slight problem. I couldn't continue as the instructions said and access the server's GUI through the regular LAN because of the Smoothwall firewall/proxy setup I have, which turned out to be a problem with addressing -- the default IP address for Fold-Server is 192.168.1.15 whereas the GREEN network (trusted LAN zone) on the Smoothwall was set to 192.168.5.0. I solved this by logging into the machine locally as user DSL (which launches Firefox automatically) and changing the eth1 settings (to 192.168.5.15).
I then ran into a problem when trying to download the client and cores using the utility getfold.pl due to the nature of my proxy. Because I use a proxy with authentication (and connection through proxy is required for ports 80 and 8080, which are used by F@H), the proxy was refusing to allow the command wget (web-get, as in obtain from the Internet) to access the Internet and download the appropriate files. One way around this may be to enter the proxy information when calling up the utility, like so: http_proxy=user:passwd@proxyaddress getfold.pl where user is the username, passwd is the user password and proxyaddress is the address of the proxy server. Note that there is a colon ( : ) between the username and password -- I found out the hard way that a period ( . ) will not substitute. Your mileage may vary; I couldn't get it to work properly and finally disabled the proxy for a little while until the load was completed. Alternatively, if you have any programming skills, you might try appending the http_proxy information in front of each of the wget commands in the getfold.pl utility.
The getfold.pl utility is a Perl script which goes out to Stanford's Folding at Home website, finds and downloads the latest Linux folding client, then goes to a second Stanford site which contains all the current core utilities (these are used to perform the work for the individual Work Units or WUs), decrypts them and then creates a bzipped tarball (bzip is a compression algorithm and the tar utility takes a number of files and packages them into a single file for easy downloading; the resulting file is called a tarball) for use by the farm clients. If, for some reason you have trouble with the utility (or want to use an older or beta client), then you can manually download the components and create the tarball by command line; the appropriate commands are right in the Perl script. The process is complex; it's not terribly difficult if one has a little programming knowledge and familiarity with using a command line, but it is out of the scope of this tutorial. When new cores are added or updated, then you will have to rerun the getfold.pl script so that the tarball has the correct cores. At the time of writing, version 5.02 was the latest build according to the script, though v5.04b (beta release) has been stable for a good six months or better. I downloaded v5.04b and created a tarball off that.
Next: The Branches >>
More Opinions Articles
More By Dngrsone