Linux

Home page Models Systems Tools IT staff References

Linux is a version of Unix that runs on a very large number of different hardware platforms. There are also a large number of Linux distributions, "distros", that package the Linux kernel with various windowing systems, utilties and configuration options. A distro is often oriented towards some specific type of use. There are Linux distros for enterprise computing, home media systems, general purpose desktop/laptop systems, mobile applications (ex. smartphones), etc. The Kirschner lab uses Ubuntu on its desktop systems for general use and Mandriva for some system administration tasks (ex. disk partition management). Cluster systems, such as Axiom, often use Red Hat.

When installing software you will need administrator privileges. The typical way to do this is to use the sudo command. This command looks to see if the account it is run from has been given permission to perform administrative tasks, and if so, prompts for your password and then runs the specified command with administrative privileges.

Distros often have a package manager for installing software using pre-built binaries for that distro. A package manager knows where to get a software package from and also tracks dependcies between software packages - it knows that package A requires package B, C and D and will automatically install those when installing package A. This avoids the need to know download urls, compile source, know, or find out the hard way, that one package is dependent on another.

In some cases a prebuilt binary for a distro is not available, or the pre-build version is not the version needed - it is too old a version or it is not configured as needed. In that case consult the web site for a package for installation files to download and for installation instructions. This is often either an install program to run or an archive file (ex. zip or tar file) to extract to particular directory. In some cases it is source code that must be downloaded, compiled and the resulting executable copied to an appropriate directory.

When installing from source on Linux the following general procedure is often used:

Ubuntu uses the apt package manager for installing or uninstalling pre-built packages. This can be accessed from the command line using the apt-get command, which is useful for scripting a set of installs. For example:

sudo apt-get install package-name

Ubuntu also has a GUI front-end to apt-get, available from System | Administration | Synaptic Package Manager. It also requires administrative privileges, so it must be invoked from an account that has those privileges and will prompt you for your password.

It has a search feature which can be helpful if you don't know the exact package name for a software package you want to install. Synaptic Package Manager will display a list of packages that can be installed. Click the check box next to ones you want to install. Synaptic Package Manager will present a pop up menu. Select the "Mark for Installation" option. This will display all the other required packages that will need to be installed and ask for confirmation that this is ok. Click Mark. Then click the Apply button in the Synaptic Package Manager tool bar to begin the installation.

sudo apt-get update

On Ubuntu systems always perform sudo apt-get update before performing any other apt-get commands that install or update software or update the operating system, including using the Synaptic Package Manager. This ensures that the system knows the latest information about the packages that can be installed - the current locations of the current versions. Otherwise it is possible not all necessary files are installed and model builds may fail.

The Kirschner lab also has a local server for installing packages on Mandriva. See Joe Waliga for details on how to use this.