Credit-Card PCs Software

Home Computing ECS CC-PC E-mail Notes Meetings Subsystems Search


This page is new and any kind of comments, questions and criticisms concerning itself, the software and documentation are
highly appreciated!

Please direct them to

Where appropriate the answers will be sent to

The CC-PCs are disk-less embedded PCs. They have a small Flash-RAM installed out of which they boot the Linux OS. Currently we use kernel version 2.2.19, and our distribution is based on RedHat 6.2. Everything apart from the kernel image is remotely accessed via NFS. This includes the basic Linux system, as well as the LHCb specific drivers and user software. On this page you will find installation instructions and software for setting up a server for the CC-PCs.

System Requirements

  • The server will typically be a PC running Linux (preferably RedHat, but with some care other installations should pose no problem)

  • The server  must have a reasonable amount of free disk-space to host the root file-system of the CC-PCs, and their /var, /tmp partitions. As a rule of thumb one should reckon 600 MB for the root filesystem and some 200 MB for each CC-PC, depending slightly on the mode of operation

  • The server  must have dhcp installed. Each CCPC will need a valid IP-address and hostname on the network it is to be installed on. This information and the Ethernet (a.k.a. hardware address) of the CCPC will be needed to add it to the system.

  • The server must have NFS installed and working: beware of (default) firewall settings, which might prevent NFS from working!

  • The default user to operate on the CCPC is called cc (default password amex). It will be added to you server by the install procedure. It has userid 502 and groupid 20502. If this conflicts with your system, you must resolve this, unfortunately NFS relies on UID/GID to grant access :-(.

Latest software version

Below is a list of the latest version of the software packages for the CC-PC. Version numbers have two components: the number before the dot  is the version number and the number after the dot the release version (usually for bug-fixes).

Package Description tarball rpm
ccpcroot-2.2.19 The root filesystem for all CC-PCs with kernel 2.2.19 ccpcroot-2.2.19-v1.1.tgz ccpcroot-2.2.19-v1.1-1.i386.rpm
ccpcroot-2.2.19-v1.0-v1.1.patch Patch to upgrade from ccpcroot-2.1.19 v1.0 to v1.1 *) ccpcroot-2.2.19-v1.0-v1.1.patch.tgz  
ccpcm Scripts and utilities to install and manage new CC-PCs and the software ccpcm-v2.0.tgz ccpcm-v2.0-1.noarch.rpm
lb The driver and library (API) for the CC-PC local bus (based on the PLX PCI-9030/80 or the tiny glue-card) lb-v1.0.tgz lb-v1.0-2.i386.rpm
i2c Drivers and library for i2c devices on the LHCb CC-PC ccpc-i2c-v1.0.tgz ccpc-i2c-v1.0-1.i386.rpm

The rpms can also be found on AFS: /afs/

*) Untar (tar -zx < filename.tgz) and follow the instructions in the README file


How to install the base-system in a nutshell (using the rpms) - the preferred method

  1. Get the ccpcroot-2.2.19 and ccpcm rpms from this page

  2. The current version lets you only install to /opt/ccpc. This will be fixed in the next release. If you do not have enough space on /opt create a symlink like:
     ln -s /here_i_have_space/opt /opt

  3. Install them (as root):
    rpm -i ...

  4. If rpm complains about a failed dependency like libxxkrb5, try to install with --nodeps option

  5. Verify (using ls -al /) that the link /cc points to /opt/ccpc. If not, then fix this by typing:
    rm /cc; ln -sf /opt/ccpc /cc

  6. There is an annoying bug to be fixed in the next release. In the meantime please type the following before installing any other package:
    rm -f /cc/ccpcroot-2.2.19/usr/local/include

How to install the base-system in a nutshell (using the tarballs) - when you can't use rpm

  1. Get the ccpcroot and ccpcm packages from this page

  2. Untar the ccpcm package: tar -zx < ccpcm-v1.0.tgz

  3. Copy the ccpcroot package into the directory ccpcm

  4. Select a directory with sufficient space to install the CCPC server and note the absolute path to it

  5. Cd into the ccpcm directory and (as root) type ./install <path_to_ccpc_directory>

How to add a ccpc

  1. Verify the base system has been installed

  2. Select an ip-number and ip-hostname for your CC-PC. If necessary register it in your local network (at  CERN for example you must do this!).

  3. Note the hardware address (Ethernet address) of the CC-PC. (Usually written on the cover).

  4. Make sure that an rudimentary version of /etc/dhcpd.conf exists. It should contain at least the following lines:
    subnet xxx.yyy.zzz.0
    netmask {
    not authoritative;
    group {
    Subnet and netmask must match your network configuration. You can ask your network administrator or me, if you are not sure.

  5. Warning: The cc_addnode cc_addnfs cc_adddhcp scripts modify your system /etc/dhcpd.conf and /etc/exports files! They should be safe, but they assume that the files are syntactically correct. You can verify this by trying to start nfs and dhcpd respectively. From the command line the most basic way to do so is to type (as root):
    /etc/rc.d/init.d/nfs restart
    /etc/rc.d/init.d/dhcpd restart

    If you do not have RedHat, the path to these scripts may be different.

  6. As root type: cc_addnode ip-hostname ip-number hardware-address
    here ip-hostname is given without the domain name, the ip-number in the form and the hw-address in the form FE:ED:BA:BE:CC:DD

A write-up will be released as soon as possible - sorry!


No questions yet - please shoot  :-)

Please send comments and suggestions to

This page last edited by NN on October 16, 2002.