Linux for Biologists

a short introduction for those that are tired of using MS Windows

Introduction to Linux:

Linux is an open-source operating system created by a guy named Linus Torvalds and currently maintained by a small army of volunteer and paid programmers. Open source means that the program source (the code) is available to anybody to modify and redistribute for free. This often means that the program binary (the thing you get when you compile the source) is also available for free. Just because it is free however does not mean that it is of subpar quality. Linux is highly regarded as a stable, safe, and powerful operating system and is used widely in various academic circles (Computer Science, Math, and Physics for example) and various corporate institutions (IBM, Google, etc).

There are many reasons why people choose Linux over other operating systems. First, it's free. Although most people get Windows when they buy a computer, they don't realize that they are in fact paying approximately $200 more than would if they bought the computer without an operating system. Many computer makers including HP now give many people the option of excluding an operating system when they buy a machine for a reduced price. The price doesn't just stop at the operating system. Most Linux distributions come with a wide variety of open source software that would otherwise cost money in the Windows world.

Second, it's safer than Windows. Windows viruses do not affect Linux, and Linux has very few if any real viruses. Finally, using Linux won't leave you feeling used by a gigantic corporation that doesn't care about anything but your money.


So how do I use Linux?

First you need to download a particular distribution. Since Linux is free, there are several organizations that compile and package Linux in slightly different ways. Some of them then try to make money by selling technical support. Popular distributions (or “distros”) include Redhat/Fedora, Suse, Debian, and Ubuntu. Some distros concentrate on being server distros (like Debian), while others try to be desktop distros. As such, I'd recommend Ubuntu.

If you visit Ubuntu's homepage http://releases.ubuntu.com/kubuntu/hoary/, you'll find links to download various CD images. Most people running a PC should choose the Intel x86 links. A quick note: some of you may notice that this download page is pointing to something called “Kubuntu”. Kubuntu is basically Ubuntu packaged with a very nice desktop environment called KDE (more on that later).

At this stage, you have a choice of selecting either the Install CD or Live CD. The Install CD is exactly what you'd expect. Once you've downloaded and burned the file appropriately and reset your computer, it will begin installing Linux. The installer is very straightforward (arguably more so than Window's installer) and should take about 30 mins. Please remember to backup all your important data before you begin installing a new OS.

A Live CD is one where you can try out Linux without installing it. Once you've downloaded and burned the CD image, you can reboot your computer and it will boot into Linux without permanently installing on your harddrive. You can then play around with Linux and when you are done, just restart your computer without the Linux CD to boot back into Windows! Most Live CD's even support USB sticks so that you can save files onto your USB device when in Linux.

Introduction to KDE:

I'm assuming by this point that you have installed K-Ubuntu. Once you have logged in, you should be presented with something that vaguely reminds you of a Windows desktop. On the bottom of the screen, you should see a panel that includes various icons, including a large K. This K-Icon is most equivalent to the Windows “Start” menu. From there, you can launch various applications. By default the rest of the desktop should look pretty plain. You can download new icons and desktop themes at kde-look.org To browse your files, you can select the K-Icon and click on the icon that says “Home”. By default all your files are placed in your “Home” directory (every user has a unique home directory). You can always create more directories in your Home if you want (I usually create a Documents and Papers directory).

Applications

An operating system is useless without some useful applications, so let's go over what's available. Here's the part that will disappoint some people. Since Linux is not as popular as Windows, not all Windows applications have an equivalent in Linux. So before you completely jump ship, you should find out if such an application exists.

OpenOffice.org

This is an open source office suite that closely resembles MS Office. It can save and open MS Office files and contains components for writing, presentation, spreadsheet, and drawing. This program already comes with K-Ubuntu so you should already have it installed (check your K-menu). For more information, check out their website: http://openoffice.org OpenOffice is also available for Windows, so even if you don't install Linux, you can still use OpenOffice.

Web Browser

The default browser shipped with K-Ubuntu is called Konqueror. Konqueror is also the name of the file manager, but that's not a very important detail. You can find it in the K-menu. In my experience Konqueror is a fast and safe (as opposed to Internet Explorer) browser. However some people feel more comfortable using Mozilla Firefox. Firefox is another open source web browser that is quickly capturing the browser market. As of right now, about 10% of the web browsing community uses Firefox and more are expected to use it in the future. This is because Firefox is also available for Windows and provides a faster, safer mechanism for browsing the internet than the aging Internet Explorer. However as I said Firefox doesn't automatically come installed with K-Ubuntu. I will cover installing applications in a later section.


Email

I highly suggest the program Kmail. You should be able to find it in the K-Menu. The first thing you'll want to do is set up your email account. This is fairly straightforward. Click on “Settings -> Configure Kmail”. On the left there are large icons. One of them is called “Accounts”. There are two tabs, one for setting up sending and the other for receiving. On the receiving tab, click on the “Add” button on the right. Now you are given a choice of different types of mail servers. Assuming you are using a UNM account, I suggest “Disconnected IMAP”. Afterwards, fill out the relevant information that it asks you. Finally, click on the “Security” tab and click on the button “Check what the server supports”. This ensures that all your login/password information is kept confidential from various network spy tools.After configuring the “Receiving”, configuring “Sending” is very similar. Click on “smtp” and fill in the information. Again, I suggest clicking on the Security tab to get the most secure settings.

Calendar and Contacts

The two programs I suggest are Korganizer and Kaddressbook. These two programs are both very straightforward. Kaddressbook also integrates with Kmail so that you can type in your contact's name instead of email address when you are composing new mail.

Music

Although not as important as the other apps, this is something that people might be interested in. I suggest the program Amarok. This program open automatically if you click on an mp3 and can also be accessed through the K-Menu. It is most similar in functionality to Apple's iTunes, although it doesn't connect to any online music store. It also has a very handy feature to download the lyrics to any particular song you are listening to, including songs from various web radio stations.

Text Editor:

I suggest either Kate or Kwrite. Kwrite is simple and reminds me of a better version of MS Notepad. Kate is powerful and is recommended if you like lots of features including syntax highlighting for various programming languages (C++, Java, Octave, etc).


Console:

Every once in a while, you may want to use a console (aka: terminal). This is known to windows people as a “command prompt”, although that term is both stupid and antiquated. A terminal basically lets you do things that you would normally do using a GUI without using your mouse. Often times, it can be faster to use a terminal instead of a graphical interface (those that say using the terminal is a sign of a deficient operating system only say that because their operating system comes with a deficient terminal). KDE comes with a nice terminal program called Konsole. It should be in the Settings section of the K-Menu.


Scientific Applications:

Matlab is available for Linux. The Linux CD usually comes in the same box as the Windows CD. You should refer to Matlab's instruction manual and installing the program. The student version is something like $150 (I couldn't find out by reading their website). If you are interested in Matlab but not interested in paying for Matlab, you can try an open source program called Octave. Octave features a language very similar to Matlab's scripting language (it tries to be very compatible with it), but lacks a nice graphical user interface (you'll have to use Konsole to interact with it).

Mathematica is also available for Linux and works like the Windows and Mac versions. The student version costs $140. There is really no free equivalent to Mathematica.

For those that don't want to purchase Matlab and/or Mathematica, UNM hosts this software on their servers. For instance, to use Matlab, type in the following commands in Konsole:

    1. "ssh your_UNM_username@linux.unm.edu"
    2. When prompted, enter your UNM password.
    3. Terminal type? [xterm] Press <enter>.
    4. A new prompt will appear, showing that you are logged onto the server.
    5. Type"matlab".
    6. A new window will open with matlab (it can be kind of slow since you are running it remotely).

JMP is a very well developed statistics and graphing program available for Windows, OS X, and Linux. The only downside is that the student version costs $500.

For those that want something similar to the S-language, check out <http://www.r-project.org/>. It's basically a clone of S (language that S-Plus and SAS are based on). I also believe that SAS is available for Linux, although I'm not completely sure (their website is not very coherent).

Graphing Applications

The most popular graphing tool is called GnuPlot. It's powerful, but not very easy to use. You will be forced to use Konsole for this application. There are other open source applications currently in development that is trying to improve the graphing situation in Linux, but none of those options are very good right now.

Programming Tools

For those want/need to program, Linux comes with many tools and compilers. Be default, Linux ships with a C/C++ compiler. You can also obtain a Python, Ruby, Perl, and Java compilers/interpreters. Popular interfaces to these languages include the Eclipse editor <http://www.eclipse.org/> and Kdevelop.


Installing new Applications

K-Ubuntu comes with a very handy utility called “apt-get”. Basically it's a tool that lets you search for, download, and install free software. You'll want to take the following steps:

  1. Open up Konsole
  2. Type in "su" (this lets you switch to root user)
  3. Type in your root user's password
  4. Now type in "apt-get update" (this updates your database of free software)
  5. Now type in "apt-get install program_name" (this installs a program called program_name)

For instance, to install Firefox, you would type in "apt-get install mozilla-firefox". Now you are wondering, how do I know what the name of the program is? Well here's how...

  1. Assuming you already have Konsole open and you are already the root user
  2. Type in "apt-cache search description" where description can be something like “firefox”. This will give a list of programs that meet that description.
  3. To get more detail concerning a specific program you can type in "apt-cache show package_name"
  4. For practice, I suggest searching for “games” and then installing a game...

There are graphical tools (called package managers) that let you do the same thing as apt-get. One is called Synaptic. You can just apt-get Synaptic.

There are a few other programs you'll want to know about:

  • Gnumeric- a spreadsheet program with more advanced statistical capabilities than OpenOffice
  • Gimp- an image manipulation program (like an old version of Photoshop)
  • Inkscape – a vector drawing program.
  • Acrobat Reader - .pdf viewer is available for Linux and works well. KPDF is the default KDE viewer and it actually renders better than acroread for some files.
  • Digikam – application for storing and organizing digital photos. Automatically downloads images from a digital camera.
  • Scribus – digital layout tool, similar to Adobe Illustrator.