1999 The Central Ohio Linux User Group. // All rights reserved. // Released under the GPL, v. 2. See: LICENSE.TXT // This file: template/header.php // // // echo "\n"; print ""; echo "\n"; echo ""; echo ""; echo "Rossberry.com - The Home of the Mobile Linux Lab"; if ($title != "") { echo " -- $title"; } echo "\n"; // The next line lets us link the header page below // the top ditrectory, and have the buttons work // RPH -- 011124 echo ""; // // scheme://user:pass@host:port/path?query#fragment // //$REQUEST_URI = $_SERVER[REQUEST_URI]; $url=parse_url("$REQUEST_URI"); $svr=$url[host]; //$svr="www.rossberry.net"; $svr="www.rossberry.com"; $server = $server_name ; print ""; ?>


Home of the Mobile Linux Lab

Home Overview Philosophy Infrastructure
Version Control Blogs Files cfengine

Installing dom0, the host OS


As noted the base build on my laptop is CentOS 5, 64 bit, updated to the latest versions currently released.

[RANT: Note that I said 5, not 5.4 or 5.5. The various "updates" from Red Hat do not exist as separate products or supportable releases. What is in 5.4 is not defined (other than on the CD) and you can not arbitrarily move a machine to a particular 'level'. The VAR agreement for developers specifically excludes a 'certified' package from requiring anything other than "RHEL 5".]

This particular machine is a stock Toshiba Satellite C645D with 3G of RAM and 250G of disk from Microcenter. If you are going to use it on the bus like I do, I recommend against getting a widescreen format...it intrudes on your seat mates.


Unless you have a local build machine, you will have to install your laptop from DVD or CD. Pull the appropriate ones from your favorite centos.org mirror and burn them to media. If you have any doubts about the hardware, I recommend that you boot it with the CentOS live cd to prove that all the pieces work. Interestingly, on this machine the wireless card works very well, but the copper network does not work at all (yet).


If you know how to use it, here is the anaconda-ks.cfg from this machine. If you are going to do an interactive install you will need the Virtualization and Server groups. Season to taste of course.

Disk layout

I used LVM for my disk layout, with the entire disk (outside of /boot) in a single Volume Group. While LVM adds a layer of complexity to a single disk, non expandable machine (such as a laptop), it is something that you need to be familiar with in an "enterprise environment". In particular I used LVM so that I could use logical volume snapshots for some of my testing. More on that later.

fdisk output for my drive

Disk /dev/sda: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          64      514048+  83  Linux
/dev/sda2              65       30401   243681952+  8e  Linux LVM

Note that I overrode the default VolGroup00 name assigned by the installer. In my experience this is a small step that makes 2 things easier:

  • attaching the drive to another machine in rescue mode (it's not that hard to sort out multiple VolGroup00's, but not pleasant to do in a crisis if it can be avoided)
  • it is an added reminder for when I'm modifying logical volumes of which machine I'm on.

Current logical volume layout.

  VG      #PV #LV #SN Attr   VSize   VFree
  vg_tosh   1  10   0 wz--n- 232.38G 131.00G

lv_xen and lv_exports were added after the build as I needed more space for various pieces of the setup. So the original build just had /, /home, /var and swap created. I could have added the additional space to /, but I'm a bit "old school" and like to keep them separate. Note that in an enterprise setup this is often done for "cost recoveries" reasons. In other words, the base OS installation will be charged to the consuming business by the central IT organization at a flat rate for a standard layout. Additional space will be charged on an ala carte basis. Keeping the disk space in separate logical volumes/file systems makes it easier for accounting. It also makes some clustering and failover activities easier (ie, /var/lib/xen/images can be safely shared between members of a cluster, where as /var/log needs to be local to each machine).

  LV      VG      Attr   LSize  Origin Snap%  Move Log Copy%  Convert
  lv_home vg_tosh -wi-ao  9.75G                                      
  lv_root vg_tosh -wi-ao  9.75G                                      
  lv_swap vg_tosh -wi-ao  2.00G                                      
  lv_var  vg_tosh -wi-ao  8.88G                                      
  lv_exports  vg_tosh -wi-ao 20.00G                                      
  lv_xen  vg_tosh -wi-ao 35.00G                                      

Random notes

I have my machine set to boot into command line mode to save power and time. If I need a graphical environment, I login as my normal user and use startx to bring up X windows. I typically run kde or xfce depending on my mood.

1999 The Central Ohio Linux User Group. // All rights reserved. // Released under the GPL, v. 2. See: LICENSE.TXT // This file: template/footer.php // print "

"; // print " \n \n \n "; // $url=parse_url("$REQUEST_URI"); $scheme = $url[scheme]; $host = $url[host]; $whereami = $url[path]; $basename = exec("basename $whereami"); $REFERRER=exec("basename $whereami .php"); $SMURF = exec(" ls | grep $REFERRER | grep txt "); if ($SMURF != "") { ## echo ""; ## This next line of code opens the displayed code in a new window when uncommented echo ""; echo "\"View of "; echo ""; echo "$basename"; } else { print "\n"; print "\n"; } // print " Contact mll@rossberry.com Copyright\n © 2010, 2011 Jim Wildman.\n "; print "
All rights reserved.
"; ?>