fiti-PCΒΆ

water cooled fitpc

See here my shiny new server. It’s the black thing playing beer mat to my water bottle. It’s a fit-PC2 with a 2Ghz Intel(R) Atom(TM) CPU Z550 proc and 2Gb of memory. I also bought a 500gb Western Digital 500Gb/2.5+ disk since it had no internal storage.

I installed it by using a downloaded CentOS 5 install DVD and loop back mounting this to obtain the images/diskboot.img file and then sticking it onto an old usb stick with:

dd if=/var/www/dist/CentOS-5.5-i386/images/diskboot.img of=/dev/sdc

Please note that the usb disk is located on /dev/sdc for ‘’me’’ and I planned on hosting the installation sources myself to save time therefore I’ve mounted the iso image under /var/www/dist/CentOS-5.5-i386/.

Once I installed the harddrive and attached the necessary cables (keyboard, monitor, network, power) I powered the machine, booted from the usb disk and started the installation. Once asked for an installation medium I used HTTP and pointed it to my webserver.

Formatting on this system took a ‘’long’’ time and the unit got pretty hot (hence the water cooling). The rest of the installation went pretty well although I should have payed more attention at the boot loader part, which I subsequently installed on the usb stick. To fix that I needed to edit /boot/grub/device.map and /boot/grub/grub.conf fixing to location so both would point to /dev/hda and hd(0,0).

After that I had a running all be it slow new piece of hardware. Some searching brought me to this page CentOS 5.4 - IDE controller patch. This seemed to solve the case, however I installed kernel 2.6.18-194.32.1.el5 not 2.6.18-164.el5. Luckily the system that hosted the installation software also had the kernel sources and a compiler. I rather not install compilers on systems that don’t need them. This changed the instructions some what:

  • Go to machine01
  • Create a directory called /root/pata_sch_source
  • Change to that directory
  • Download the sources needed by running: wget http://www.fit-pc2.com/download/centos/IDE/pata_sch_source.zip and unzip pata_sch_source.zip
  • Then create a make file, not because we need it now, but kernels tend to get upgraded.
  • The content of the makefile should look like this:
obj-m = pata_sch.o
KVERSION = $(shell uname -r)
all:
      make -C /lib/modules/$(KVERSION)/build M=$(PWD) modules
clean:
      make -C /lib/modules/$(KVERSION)/build M=$(PWD) clean
  • Run make
  • rsync the /root/pata_sch_source to machine02 (the fitPC)
  • Go to machine02
  • Run the following commands:
cp pata_sch.ko /lib/modules/$(uname -r)/extra/
depmod
mv /boot/initrd-$(uname -r).img /boot/initrd-$(uname -r).img.bak
mkinitrd --preload libata --preload pata_sch /boot/initrd-$(uname -r).img $(uname -r)
  • Edit the /boot/grub/grub.conf file to change it from this:
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd1,0)
#          kernel /vmlinuz-version ro root=/dev/hda3
#          initrd /initrd-version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-194.32.1.el5)
      root (hd0,0)
      kernel /vmlinuz-2.6.18-194.32.1.el5 ro root=LABEL=/
      initrd /initrd-2.6.18-194.32.1.el5.img
title CentOS (2.6.18-194.el5)
      root (hd0,0)
      kernel /vmlinuz-2.6.18-194.el5 ro root=LABEL=/
      initrd /initrd-2.6.18-194.el5.img
  • to this:
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd1,0)
#          kernel /vmlinuz-version ro root=/dev/hda3
#          initrd /initrd-version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-194.32.1.el5)
      root (hd0,0)
      kernel /vmlinuz-2.6.18-194.32.1.el5 ro root=LABEL=/ hda=noprobe hda=none hdb=noprobe hdb=none reboot=b
      initrd /initrd-2.6.18-194.32.1.el5.img
title CentOS (2.6.18-194.el5)
      root (hd0,0)
      kernel /vmlinuz-2.6.18-194.el5 ro root=LABEL=/
      initrd /initrd-2.6.18-194.el5.img

After a reboot the performance of the disk and the system increased greatly.