Instant GNU/Linux time machine

Instant GNU/Linux time machine


You never forget your first.

Whether it's your first car, or your first significant other, or your first day of college, they say you never forget your first. That's not always true, of course, but I do remember my first: Softlanding Linux Systems, one of the earliest GNU/Linux distributions, and progenitor of the Slackware distribution. It came on a few dozen floppy images, and took forever to install.

Jump into the Astonishing GNU/Linux Time Machine, and via the magic of qemu and iBiblio, you too can experience the earliest days of GNU/Linux. It'll only take an hour. I'll have you back by supper.

Before we go, inspect your equipment

Everything I do here assumes you have installed qemu in the canonical fashion for your distribution. I also assume you are relatively comfortable using a terminal. So, launch a terminal, and see if you have qemu installed by issuing this command:

~$ which qemu
/usr/bin/qemu
~$

Keep in mind the '~$' (dollar sign) is my terminal's prompt. Your prompt may be different. You only type the 'which qemu' part. If qemu exists, you will get back the path to qemu, as in the example. If you don't get back a path, that means qemu is probably not installed, and you must install it before proceeding.

That's it. Once you are sure qemu is available, we can continue. Please watch your step as you board the time machine. After we depart, there may be some turbulence, or you may experience disorientation. This is completely normal.

Choose your destination

SLS was originally released in September of 1992. Version 1.02 was released in April 1993. This is the version I first downloaded and used, and learned how to love computers again. Based on the 0.99p6 Linux kernel, it came with 1 boot floppy image, and 29 directories that were sized to be copied to floppy disks. A DOS utility called "rawrite" was used to create the boot floppy.

Fortunately, thanks to the wonders of modern technology, we don't have to sit through the grueling floppy shuffle. Please don't be disappointed.

One of the great GNU/Linux sites back in the day was Sunsite, at ftp.sunsite.unc.edu. Much later, it was renamed "iBiblio." That site still contains a wealth of historical information. For instance, it stores a bunch of historic GNU/Linux distributions for your enjoyment.

So let's enjoy ourselves.

Although there is an SLS 1.03 directory on iBiblio, the a4 disk seems to be incomplete. That leaves us with the 1.05 distribution, released in April 1994, which ran on a Linux 1.0 kernel. However, even though it's not quite as entertaining as running the 0.99 series, it's still quite a step back in time. So, let's create a work directory, and download a slice of history.

~$ mkdir history
~$ cd history
~/history$ wget -rc -nH --cut-dirs=5 -P install  \
              ftp://ibiblio.org/pub/historic-linux/distributions/sls/1.05

My prompt specifies I'm in the history directory. Again, you will probably have a different prompt. Also, note the '\' backslash at the end of the line. That's a signal that the line doesn't really end. For posting purposes, I broke the line in two. You could quite easily write the entire line as, "wget -rc -nH --cut-dirs=5 -P install ftp://ibiblio.org/pub/historic-linux/distributions/sls/1.05" and it'd work just fine.

If this step is successful, you'll see a lot of stuff go by as wget downloads the entire contents of the SLS 1.05 directory. The contents will end up in the ~/history/install directory, which is just where we want it. The download will take about 15 minutes on a fast connection, and much longer on a 2400 baud modem.

Once the download is complete, copy the boot image to a safe place. We need to do this, as the SLS installer will overwrite our boot floppy, which just happens to be the install boot image. So, issue this command:

~/history$ cp install/a1.3 sls-boot

This creates a copy of the boot image into the current directory. If you peek inside the 'install' directory, you'll notice another file named a1.5. This is exactly like the a1.3 image, only it's for a 5-1/4" floppy. The a1.3 is for a 3.5" floppy. We will, of course, work with the cutting-edge 3.5" technology.

We have one last step before engaging the time machine. We need a fake hard drive as an install target. We create the image thusly:

~/history$ qemu-img create sls-1.05.img 200M

Journey with me into the past

Assuming everything went as expected, you now have the install sources, and the install target. Now you can finally fire up the time machine:

~/history$ qemu -hda sls-1.05.img -hdb fat:. -fda sls-boot -boot a

There you have it! GNU/Linux in all it's 1.0 kernel goodness. Welcome to spring of 1994. Inhale deeply. Do you smell the hope, the promise, the possibility?

Now it's time to install the system on your fake hard drive. We have started qemu with a blank drive image as hda, the current directory (which contains the SLS install files) as hdb, and our copy of the SLS boot image as the floppy disk. Our first task is to partition hda.

At the prompt, login as "root" and run this command:

softland:/# fdisk /dev/hda

You'll want to create a primary partition and make it bootable. At the prompt, enter "n" (without the quotes) for a new partition. It'll be a primary partition, so enter "p" when it asks. We want partition number 1. The first cylinder is 1; the last cylinder is the maximum number allowed (mine was 406). Once back to the "Command (m for help):" prompt, type "a" to make the new partition active. Remember, the partition number was 1. Finally, enter the "w" command to write the partition table to disk.

Figure 1: an fdisk sessionFigure 1: an fdisk session

Once back at the root prompt, type "exit" to leave the root shell. You'll be asked to log in again. This time, log in as "install".

From the menu, choose option 2, "Install from Hard Disk." You are installing from /dev/hdb1, of type "msdos." When it asks for the subdirectory name, just hit the enter key.

Now it's time to specify the install partition. Select the "Setup Linux Partitions" option, number 1. Specify the /dev/hda1 partition for use as root. The install program will warn you that all data will be lost. Hit the enter key to proceed. The install program will create an e2fs filesystem.

Figure 2: the SLS install menuFigure 2: the SLS install menu

Now (finally!) it's time to install. Select the "Done" option, number 7. Tell it you want to install the entire distribution, option 4. Then, sit back and be amazed at how quickly an entire GNU/Linux distribution installs itself in 1994.

You still have to answer some questions. Do so to the best of your ability. Don't worry: at this point, there's little that can happen that isn't easily recovered.

One last thing: once your SLS installation reboots, you'll want to login as root (no password required), and re-install lilo, like this:

1:sls:/$ liloconfig

Choose option "2" to install lilo with GNU/Linux as the only operating system.

That is the SLS 1.05 installation process, in a nutshell. Now that the system is installed on your disk image, you can boot directly into SLS like this:

~/history$ qemu sls-1.05.img

Welcome back to 2007

That's it for our quick excursion back to 1994. If you're feeling adventurous, there are other old GNU/Linux distributions waiting to come back to life. Download Yggdrasil or MCC, or even pre-historic versions of Red Hat or Debian.

I hope you've enjoyed this little tour into the past. Perhaps you've learned something of where it all started, perhaps become a little more understanding of us cantankerous old-timers. You'd be bitter too, if you had to create and swap out 30 3.5" floppies just to install an operating system.

You youngsters today, you don't know how good you've got it.

Category: 

Comments

Anonymous visitor's picture
Submitted by Anonymous visitor (not verified) on

I have my first linux install *CD* --Slackware3.0 CD --with the platypus on the front (there was no Tux back then). It came with the 1.2.13 kernel and as much software as they could pack onto 2 CD's. You still had to make boot floppies. It was harder then. The booklet that explained everything LInux came with it --a slim 30 pages. I had to do quite a bit of research to figure out how to build a new kernel, and add command line paramaters to the install floppy to get the install cd to actually load (interrupt in unexpected places caused more problems back then), and I had to hack the kernel to tell it that my cd's interrupt was somewhere non-standard. So my first taste of Linux had to include hacking and building a kernel (which I had never done before either). Great fun that! Beside the old disk, I have a copy of ubuntu edgy eft (11 years separates them)! The old stuff worked though, even X windows (FVWM).

Anonymous visitor's picture
Submitted by Anonymous visitor (not verified) on

I downloaded the files and created the disk image, but when I issue:
$ qemu -hda sls-1.05.img -hdb fat:. -fda sls-boot -boot a

Qemu complaints and sends next message:
$ qemu: could not open hard disk image 'fat:.'

I'm running Debian 3.1 with a 2.6 kernel

Anonymous visitor's picture
Submitted by Anonymous visitor (not verified) on

"I'm running Debian 3.1"

Well, in that case, you're already running an ancient operating system.

Anonymous visitor's picture
Submitted by Anonymous visitor (not verified) on

FWLIW, I made an SLS Bochs image and included the installation boot disks with it, in 2002, IIRC. It's SLS 1.X, running Linux 0.99pl???

It's available on Sourceforge, in the Bochs disk images. qemu-hdd should turn it into a qemu disk image.

Share and Enjoy!

Wesley Parish

Anonymous visitor's picture
Submitted by Anonymous visitor (not verified) on

i have a number of iso's that i can install to img files with qemu, and then run them from qemu, following this page's example. so far i only did the freedos install, following some other example from the web. i wanted to boot it straight from grub, for faster performance. so i tried to use partimg and dd naively to install the img to a hdd partition, but this was not booting from grub, and made the partition table unreadable from a variety of programs. so i had to repartition the hdd and start all over. i don't know much about the internals of partitions.

this is just to avoid the complications of burning the isos to cdrom, installing directly through qemu instead.

mattflaschen's picture

I got a working system, including e.g. gcc. I couldn't get X working, or change the password. However, it's great in general to look back like this for some perspective. Thanks.

Anthony Taylor's picture

To get X11 running, you'll have to edit the XF86Config file. There are still web pages devoted to that.

The chipset emulated by qemu is the Cirrus Logic dg5446. Unfortunately, the version of X11 shipped with sls 1.05 doesn't support that chipset. So, you have to use the VGA driver, not the SVGA driver.

The password issue is interesting. I just tried to change my password in the emulator, and it refused to authenticate root after that. So: I don't know the answer.

Author information

Anthony Taylor's picture

Biography

Tony Taylor was born, causing his mother great discomfort, and has lived his life ever since. He expects to die some day. Until that day, he hopes to continue writing, and living out his childhood dream of being a geek.

Most forwarded

Interview with Dave Mohyla, of DTIDATA

Dave Mohyla is the president and founder of dtidata.com, a hard drive recovery facility based in Tampa, Florida.

TM: Where are you based? What does your company do?
DTI Data recovery is based in South Pasadena, Florida which is a suburb of Tampa. We have been here for over 10 years. We operate a bio-metrically secured class 100 clean room where we perform hard drive recovery on all types of hard disks, from laptop hard drives to multi drive RAID systems.

Anybody up to writing good directory software?

Since the very beginning, directories (of any kind) have had a very central role in the internet. (I have recently grown fond of Free Web Directory. Even Slashdot can be considered a directory: a collection of great news and invaluable user-generated comments. As far as software is concerned, doing a quick search on Google about software directories will return the free (as in freedom) software directories like Savannah, SourceForge, Freshmeat and so on, followed by shareware and freeware sites such as FileBuzz, PCWin Download Center and All Freeware (great if you're looking for shareware and freeware, but definitely less comprehensive than their free-as-in-freedom counterparts).

Interview with Mark Shuttleworth

Mark Shuttleworth is the founder of Thawte, the first Certification Authority to sell public SSL certificates. After selling Thawte to Verisign, Mark moved on to training as an astronaut in Russia and visiting space. Once he got back he founded Ubuntu, the leading GNU/Linux distribution. He agreed on releasing a quick interview to Free Software Magazine.

Is better education the key to finding better software?

I read David Jonathon's article Anybody Up To Writing Good Directory Software? the other day, which got me thinking about software directories in general. As David mentioned, many of the software directories one finds when doing a quick google search are free as in beer, not as in freedom. But what interests me is the software directories that already exist, providing a combination of both free as in beer software, and open source software. Sites such as Freeware Downloads and Shareware Download don't advertise themselves as providing free as in liberty software, but each of them have a good selection of open source software available... if you know where to look.

Most emailed

Free Open Document label templates

If you’ve ever spent hours at work doing mailings, cursed your printer for printing outside the lines on your labels, or moaned “There has got to be a better way to do this,” here’s the solution you’ve been looking for. Working smarter, not harder! Worldlabel.com, a manufacture of labels offers Open Office / Libre Office labels templates for downloading in ODF format which will save you time, effort, and (if you want) make really cool-looking labels

Creating a user-centric site in Drupal

A little while ago, while talking in the #drupal mailing list, I showed my latest creation to one of the core developers there. His reaction was "Wow, I am always surprised what people use Drupal for". His surprise is somehow justified: I did create a site for a bunch of entertainers in Perth, a company set to use Drupal to take over the world with Entertainers.Biz.

Update: since writing this article, I have updated the system so that the whole booking process happens online. I will update the article accordingly!

So, why, why do people and companies develop free software?

More and more people are discovering free software. Many people only do so after weeks, or even months, of using it. I wonder, for example, how many Firefox users actually know how free Firefox really is—many of them realise that you can get it for free, but find it hard to believe that anybody can modify it and even redistribute it legally.

When the discovery is made, the first instinct is to ask: why do they do it? Programming is hard work. Even though most (if not all) programmers are driven by their higher-than-normal IQs and their amazing passion for solving problems, it’s still hard to understand why so many of them would donate so much of their time to creating something that they can’t really show off to anybody but their colleagues or geek friends.

Sure, anybody can buy laptops, and just program. No need to get a full-on lab or spend thousands of dollars in equipment. But... is that the full story?

Fun articles

Santa Claus - the most successful open source project

It dawned on me the other day, as I was shopping for the dozens of gifts it seems I have to buy every December, that Santa Claus is the most successful open source project in history. (Bridget @ Illiterarty would agree with that). Santa Claus is essentially a marketing development that is embodied by everyone who stuffs a sock, gives a gift, hosts a dinner or wishes Merry Christmas over the holiday season.

Most emailed

Editorial

When I first started thinking about Free Software Magazine, I was feeling enthusiastic about the dream. I had Dave, Gianluca, and Alan willing to help me, I had established members of the free software community willing to help me out, I had writers volunteering their time and energy for free, and I had a generous offer from OpenHosting for servers, all before I'd proved myself. There was a sense of excitement in the air, and I thought maybe, just maybe, I could make this work.

Free Software Magazine uses Apollo project management software and CRM for its everyday activities!