Welcome!

Linux Authors: Michelle Drolet, Kevin Benedict, Pat Romanski, Elizabeth White, Paige Leidig

Related Topics: Linux, Open Source

Linux: Article

A Closer Look at Damn Small Linux

The take-along operating system

In this article you will learn how to turn a blank CD and an inexpensive USB keydrive into a powerful, portable, take-along operating system complete with modern applications like Firefox, a Web server, and multimedia tools. All this can be done using free Open Source Linux software.

We'll start with the latest version of a distribution called Damn Small Linux (hereafter referred to as DSL) and work through the steps of getting and "burning" an image, booting it, setting up networking and applications, and saving customizations and files to the USB media. You can do all of this even with an old PC from yesteryear, turning it into something snappy and new. One possible outcome is what you see in Figure 1.

The resulting bootable CD and USB keydrive storage work great without having to install, partition, reformat, or even modify the hard drive on the host system. This highly portable computer system based on DSL will enable you to walk up to almost any PC and boot into your very own familiar Linux desktop, get on the Internet, send e-mail, blog, play games, even listen to Internet radio, and save your work, shut it down, and take it all of it with you without leaving a trace. It will be lightweight, fast to boot, and can breath new life into almost any computer, old or new. You can even use this technique to create low-cost Internet kiosks and Web servers, as an alternative to carrying a laptop, or just to impress your friends and colleagues.

The DSL distribution of Linux has long set the standard for fitting maximum functionality into a small 50MB footprint. The discipline of keeping the entire distribution to this size has resulted in a compact and versatile Linux (derived from the venerable Knoppix, itself based on Debian Linux) that can run efficiently even on older PCs while recognizing a wide assortment of hardware. Through the innovative "MyDSL" subsystem, nearly unlimited customization and system expansion are possible.

There's a lot to look at inside this unusual little operating system, not all of it beautiful. This article will help you find the best of DSL and ignore the rest. Best of all, you'll discover how to shape and customize DSL into something useful and appealing, perhaps even something unique.

Getting Started: Obtain, Burn, Boot
Get the Latest DSL Image
Downloading the latest stable version of DSL is free and easy. If you have a high-speed Internet connection it can be done in minutes. Simply follow these instructions:
1)  Visit the URL www.damnsmalllinux.org/download.html
2)  Click on one of the mirror sites under "where to download"
3)  Look for a directory called "current" and click on that to see its contents
4)  Look past most of what you see and download the file "dsl-<version>.iso"

Where I've written <version> above you'll see something like "2.4" depending on when you read this article. The current stable version is 2.3. Save your download in a place where you can find it as you move to the next step.

Burn the ISO onto CD
The file you just downloaded has an "iso" extension after the ISO standard format used on CD-ROMs. Some operating systems - such as OS X - can mount an image file like this and show you its contents. We don't really have to do that but if you're curious go ahead and see if your computer can mount the disk. You'll need a writable CD-R disk and a CD burner for the next step. Use your favorite CD-burning software to create a disk from this image.

One important note here. The DSL disk image is much smaller than the CD's capacity and that's expected. At only 50MB you could fit about 15 copies of DSL on a standard CD-R. DSL was originally configured to fit on the smaller 50MB "business card" CDs that were briefly popular. This size constraint now offers great advantages for this little operating system. As you'll see, DSL is so small that the entire operating system can boot up into the memory on just about any PC without even accessing the hard drive.

When you burn your CD remember that you're dealing with a bootable ISO image. Rather than just burning a copy of this file onto a CD (which won't boot properly in the next step), you'll want to instruct your CD burner to recognize the ISO and burn a disk image.

Boot from CD (or Use a Helper Floppy)
This step could be as simple as putting your newly minted DSL CD into the drive on your computer and rebooting. You should try that first before reading any further. By the way, many people get nervous about doing anything experimental with a working computer and rightly so. In my experience I've seen no risk in booting a PC into DSL. This little operating system will detect much of the hardware attached to your computer including your network, but it will completely ignore your hard drive and data until you tell DSL to do differently. If you're still not sure, just dig out that old PC in the closet and try DSL on that first. An old machine running DSL may surprise you as it comes back to life. Now let's get back to the boot. If your PC recognizes the CD as bootable and begins a boot sequence, skip to the next section.

Most PCs can boot from a CD (the CD booting standard has been out for over 10 years), but they may not be configured to do so. To find out you'll have to get into the BIOS settings at boot time and check. As your machine starts up, look for a message that says something like "Press F-10 for BIOS Settings" and use whatever key you are instructed to press.

Next, while in the text-based BIOS menu system, look for a section on boot devices and boot order. Make sure that the CD-ROM is somewhere in the order of boot devices ahead of the hard drive (usually it goes in the order of floppy, CD, then hard drive). Find a way to put the CD-ROM in the boot sequence, save your changes then try a reboot.

At this point I should mention that one of the machines I used to prepare this article (and even write some of it) is a 10-year-old Pentium 150MHz with only 96MB memory. It can't boot from a CD so I used a helper floppy that can recognize and boot the CD. If you need such a thing, you can create one by following these steps:
1)  Download the boot floppy boot image file for DSL
Download: bootfloppy.img
From Site: ftp://ibiblio.org/pub/Linux/distributions/damnsmall/current
Save As: boot.img
2)  Create a boot floppy using a blank 1.44MB floppy disk
If running Windows
Download: rawrite.exe (or other suitable variant for your OS)
From Site: www.fdos.org/ripcord/rawrite/
Run Command: rawrite -f boot.img -d A
If already running a version of Linux:
Run Command: dd if=boot.img of=/dev/fd0 bs=1440k

Once your computer is booting from the CD (or a combination of floppy/CD) you're ready to begin exploring the world of DSL, customizing it to your liking, and creating a configuration that you can easily return to on your next boot.

Advanced Topic: Bootable USB Keydrive
(aka Pendrive, Flashdrive, Etc.)
You may have heard about bootable USB keydrives or know someone who has one. With DSL there are at least two ways to get your USB-capable computer to boot from a keydrive. The first works without having to reformat the keydrive. The second approach will dedicate the entire USB keydrive to running DSL by creating a boot partition and a data partition.

You can skip this section entirely or return to it later if you decide that booting from a keydrive is for you. Regardless of how you end up booting, the rest of this article will assume that you're simply booting from a read-only device and intend to use a keydrive for take-along storage. This way everyone can come along with or without a bootable USB drive.

Quick and Easy Install to Keydrive
(Requires Helper Floppy)
The simplest and least disruptive approach to booting from a keydrive is just to make the keydrive look like the CD you used to get started. I made this work by copying all of the files from the DSL CD (mounted as /mnt/cdrom) to the root directory of a keydrive (it will have to be mounted as /mnt/sda1, as shown below) already formatted with the MS-DOS file system. Of course you'll need at least a free 50MB on the USB keydrive before you copy the files.

If you don't know how to copy files in Linux, first bring up a terminal window by clicking on "ATerminal" on the DSL desktop. Next type the following:

$ sudo mount /dev/sda1
$ cp -r /mnt/cdrom/* /mnt/sda1

If you're allergic to the command line, these two steps can be carried out intuitively using the "Emelfm" file manager also available on the DSL desktop.

This approach to booting will preserve the data you already have on the keydrive. It won't make the drive into a genuine Linux boot disk (we'll do this in the next section), so you will need a helper floppy to get the machine booting from this USB keydrive. I made a USB boot floppy while running DSL itself. This is simpler than the manual approach described above but note that you'll need a different boot image (bootfloppy-usb.img) than we used before.


More Stories By Russ Ethington

Russ Ethington is an enterprise software architect and developer with 15 years of experience in numerous programming languages on Unix and other platforms. His technical interests include distributed computing, programming languages, and music synthesis.

Comments (4) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
manmathsahu 09/09/07 11:47:48 PM EDT

DSL is a good minimalist distro. If you are looking for a more usable distro you should try a lighter PCLinuxOS versionsuch as PCLinuxOS Junior or PCLinuxOS TinyMe.

charles 08/27/06 03:11:52 AM EDT

this is grait but what if you want to use a disk on chip?

Linux News Desk 07/11/06 03:01:15 PM EDT

In this article you will learn how to turn a blank CD and an inexpensive USB keydrive into a powerful, portable, take-along operating system complete with modern applications like Firefox, a Web server, and multimedia tools. All this can be done using free Open Source Linux software.

Linux News Desk 07/11/06 02:00:26 PM EDT

In this article you will learn how to turn a blank CD and an inexpensive USB keydrive into a powerful, portable, take-along operating system complete with modern applications like Firefox, a Web server, and multimedia tools. All this can be done using free Open Source Linux software.