MAS OS setup on obsolete systems

From MCEWiki
The following describes an obsolete procedure or component.  See MAS OS setup for a more recent alternative.

This page describes the parts of the OS setup procedure for MAS specific to Ubuntu 6.06, 7.10, 8.04, 8.10, 9.04, 9.10, 10.04, and 12.04. For the general OS setup procedure, see: MAS OS setup.

Users are strongly encouraged to run MAS under Ubuntu 14.04 LTS or 16.04 LTS, when possible. See the MAS OS setup for full instructions.

Ubuntu 12.04

Follow instructions for Ubuntu 14.04, but use install tools package:

wget http://e-mode.phas.ubc.ca/mce/pc_install/install_tools/mce_install_ubuntu_12.04.tar.gz

Ubuntu 10.04

The automated installation package is tested, but as Ubuntu tweaks its packages the install script may fall slightly out of sync. It's worth a shot though.

After installing Ubuntu 10.04 (desktop), get the install tarball:

cd ~
wget http://e-mode.phas.ubc.ca/mce/pc_install/install_tools/ubuntu_10.04_install.tar.gz
tar -xzf ubuntu_10.04_install.tar.gz
cd install/

Install additional ubuntu packages

From that install folder, run

bash install.bash

(Under 10.04, the vanilla kernel 2.6.38.8 is also supported. To use it, copy ./alternatives/sources.2.6.38.8.bash to ./sources.bash before running install.bash and kernel_build.bash .)

Bigphysarea kernel patch

You can either download the compiled kernels or build them from scratch.

From install folder, run EITHER

bash kernel_download.bash

or

bash kernel_build.bash

Then when one or the other of those has succeeded, install them:

bash kernel_install.bash

You can now proceed to the section below titled "Configure the system for MCE users".

Ubuntu 9.10

Starting with Ubuntu 9.10, some effort has been made to automate the installation. After installing Ubuntu 9.10 (desktop), get the install tarball:

cd ~
wget http://e-mode.phas.ubc.ca/mce/pc_install/install_tools/ubuntu_09.10_install.tar.gz
tar -xzf install.tar.gz
cd install/

Install additional ubuntu packages

From that install folder, run

bash install.bash

Bigphysarea kernel patch

You can either download the compiled kernels or build them from scratch.

From install folder, run EITHER

bash kernel_download.bash

or

bash kernel_build.bash

Then when one or the other of those has succeeded, install them:

bash kernel_install.bash

You can now proceed to the section titled "Configure the system for MCE users".

Ubuntu 9.04 and earlier

Disable CDROM seeking

The package manager knows that you have the Ubuntu disk and will say things like

Media change: please insert the disc labeled
'Ubuntu-Server 6.06.1 _Dapper Drake_ - Release i386 (20060807.1)'

To disable this (and download packages from the internet instead), open /etc/apt/sources.list

sudo pico /etc/apt/sources.list

and remove (comment) the line

deb cdrom:[Ubuntu-Server 6.06.1 _Dapper Drake_ - Release i386 (20060807.1)]/ dapper main restricted

Install required packages

sudo apt-get update
sudo apt-get install build-essential subversion emacs21 libreadline5-dev 

Enable universe repository and install GGV

Uncomment the line in /etc/apt/sources.list so it says

deb http://us.archive.ubuntu.com/ubuntu/ dapper universe

Then run

sudo apt-get update
sudo apt-get install gnome-gv

gnome-gv doesn't exist on 7.10, you'll have to settle for

sudo apt-get install gv

Install packages that you shouldn't even want to install (soon to be optional)

sudo apt-get install tcsh

Install desktop manager (optional)

sudo apt-get install ubuntu-desktop gdm

Install python stuff

The 'pyth' branch MAS has experimental support for python using wx and matplotlib:

sudo apt-get install python-dev python-wxglade python-matplotlib python-numarray-ext swig

numpy and scipy

For loading / plotting MCE data in python using mce_data.py, you will want numpy / scipy. The Ubuntu packages can be a bit out of date, but should be enough for basic data manipulation and plotting. Just run:

sudo apt-get install python-numpy python-scipy 

For Ubuntu 6.06, numpy and scipy can be obtained following instructions from this page:

http://debs.astraw.com/dapper/

There are some very useful numpy features that are not available on older Ubuntu default packages. To access such features it is not too hard to install more recent versions of numpy (and scipy) from sourceforge:

1. Remove Ubuntu numpy and scipy packages; install dependencies for the source.

sudo apt-get remove python-numpy python-scipy
sudo apt-get install libblas-dev lapack-dev

2. Get source tarballs from links below... unzip the contents.

http://sourceforge.net/projects/numpy
http://sourceforge.net/projects/scipy

3. Compile the source packages. That means that in each folder you have to do:

./setup.py config
./setup.py build
sudo ./setup.py install

The config step complains a fair bit, but it's really obvious when there is an error rather than a warning. The scipy package takes a long time to compile.

Install libconfig

MAS uses libconfig to manage its configuration files. The webpage is here: http://www.hyperrealm.com/libconfig/. To install libconfig run the commands below. The active version of libconfig changes a lot; go to the hyperrealm link to see what the latest version is; it's probably compatible.

 wget http://www.hyperrealm.com/libconfig/libconfig-1.3.2.tar.gz
 tar -xzf libconfig-1.3.2.tar.gz
 cd libconfig-1.3.2
 ./configure
 make
 sudo make install

To make the system aware of this library, add "/usr/local/lib" to /etc/ld.so.conf and run "sudo ldconfig". i.e.

 echo /usr/local/lib | sudo tee -a /etc/ld.so.conf
 sudo ldconfig

On newer systems (Ubuntu 7.10) you can do this instead:

 echo /usr/local/include | sudo tee /etc/ld.so.conf.d/libconfig.conf
 sudo ldconfig

Download and install MAS kernel patch

Download

If you're not compiling the kernel from scratch, download the binary packages from UBC:

wget http://e-mode.phas.ubc.ca/~mhasse/mce/kernel-headers-2.6.15.7-bigphys_10.00.Custom_i386.deb
wget http://e-mode.phas.ubc.ca/~mhasse/mce/kernel-image-2.6.15.7-bigphys_10.00.Custom_i386.deb
wget http://e-mode.phas.ubc.ca/~mhasse/mce/extras.patch

For Ubuntu 7.10, get these instead:

wget http://e-mode.phas.ubc.ca/~mhasse/mce/linux-headers-2.6.22.9-bigphys_10.00.Custom_i386.deb
wget http://e-mode.phas.ubc.ca/~mhasse/mce/linux-image-2.6.22.9-bigphys_10.00.Custom_i386.deb


On Ubuntu 7.10 machines without PAE hardware (i.e. a maximum of 4G of system memory) use:

wget http://e-mode.phas.ubc.ca/~mhasse/mce/linux-headers-2.6.22.14-bigphys_2.6.22.14-bigphys-10.00.Custom_i386.deb
wget http://e-mode.phas.ubc.ca/~mhasse/mce/linux-image-2.6.22.14-bigphys_2.6.22.14-bigphys-10.00.Custom_i386.deb

Install

Then, install the packages using dpkg:

sudo dpkg -i kernel-headers-2.6.15.7-bigphys_10.00.Custom_i386.deb
sudo dpkg -i kernel-image-2.6.15.7-bigphys_10.00.Custom_i386.deb

The "image" file might complain about symbolic links, no big deal.

On Ubuntu 7.10, instead install these:

sudo dpkg -i linux-headers-2.6.22.9-bigphys_10.00.Custom_i386.deb
sudo dpkg -i linux-image-2.6.22.9-bigphys_10.00.Custom_i386.deb

Why are these ones called "linux" instead of "kernel"? I think it's because I got them from Ubuntu repositories instead of kernel.org.

On Ubuntu 7.10 machines without PAE install these:

sudo dpkg -i linux-headers-2.6.22.14-bigphys_2.6.22.14-bigphys-10.00.Custom_i386.deb
sudo dpkg -i linux-image-2.6.22.14-bigphys_2.6.22.14-bigphys-10.00.Custom_i386.deb

The Ubuntu 8.04 kernel has a sound-card driver that lays claim to the Motorola DSP on the PCI card. We have to blacklist this module to prevent it from trying to configure the card as a sound card. Add the following to the bottom of /etc/modprobe.d/blacklist :

# Conflicts with Astro-cam PCI card!!
blacklist snd_asihpi

Patch

This makes it possible to compile against the kernel package as though it had been locally compiled originally.

cd /usr/src/kernel-headers-2.6.15.7-bigphys/
sudo patch -p1 < ~/extras.patch

This step is not necessary for Ubuntu 7.10. It may be necessary to link the kernel headers into /lib/modules:

 sudo ln -s /usr/src/linux-headers-2.6.22.9-bigphys/ /lib/modules/2.6.22.9-bigphys/build

Boot menu

We need to add the kernel option that causes bigphys to allocate boot memory for our driver. In older versions of MAS (especially ACT's stable release) we also need to disable "acpi". It's a good idea to not run any DSP/MCE commands until all of your kernel options are in place.

Having installed the kernel "image" package, the kernel should show up in the boot loader (grub)'s kernel list.

Editing the kernel list

As root (or using sudo), edit the file /boot/grub/menu.lst .

sudo pico /boot/grub/menu.lst

Go to the list of kernels, below the line "## ## End Default Options ##", and find the new kernel entry. On Ubuntu 6.06, it should be the third block (index 2), and look like this:

title           Ubuntu, kernel 2.6.15.7-bigphys
root            (hd0,0)
kernel          /vmlinuz-2.6.15.7-bigphys root=/dev/sda3 ro quiet splash
initrd          /initrd.img-2.6.15.7-bigphys
savedefault
boot

Add the kernel options to the "kernel" line, producing either this (recent MAS):

kernel          /vmlinuz-2.6.15.7-bigphys root=/dev/sda3 ro quiet splash bigphysarea=8192

or this (old MAS, esp. ACT):

kernel          /vmlinuz-2.6.15.7-bigphys root=/dev/sda3 ro quiet splash bigphysarea=8192 acpi=off

Save and close the file, and reboot to test this kernel. If the kernel "works", you can edit menu.lst again and change the value of the "default" option to point to this kernel:

default    2

Ubuntu 7.10 and later: the kernel packages install a bit differently so the block will likely be the first one in the list. The 'kernel' line must change from something like

kernel          /boot/vmlinuz-2.6.22.9-bigphys root=UUID=1b6e7b54-894d-4571-9f0a-527fe0103975 ro quiet splash

to

kernel          /boot/vmlinuz-2.6.22.9-bigphys root=UUID=1b6e7b54-894d-4571-9f0a-527fe0103975 ro quiet splash bigphysarea=8192

Note that the long hexadecimal serial numbers are system specifc and yours are probably different than these ones. Leave them as they are and just add the new kernel options. The "default" option will probably be

default    0

but it's a good idea to count these things out for yourself.

You can now proceed to the section titled "Configure the system for MCE users".