Toward The New Bootdisk Howto, part 1

It was some other free software time when I started to make a boot disk in 2001. Knoppix didn’t exist (according to the Freshmeat Knoppix project page, the first realize of Knoppix was at May 25th, 2002), GRUB was not stable (even Red Hat didn’t ship it). Bootdisk Howto was updated last time at January 2002. Even in this time it was partially outdated.

I think that such documents are great educational material and because of that I am starting a long drive of making a new document.

Goals of this drive are:

  • To make the New Bootdisk Howto document which would be up to date. When document becomes useful, it will be released on Wikibooks.
  • To make an extensive educational material for learning Unix-like operating systems. When courses become stable, they will be released on Wikiversity.
  • To make a small Swiss Army Knife distribution which would be able to be used on different architectures and using different storage mediums. Target kernels are Linux and maybe NetBSD and OpenSolaris. When GNU Hurd becomes useful, I would try to use it, too. Distribution will be available on my SourceForge project page, as a package strelka.

Before you start

Note that this is not a completed document, but my drive toward making it. This means that you should read this document and others from this series only if you are interested in researching. If you want to learn how to make your own distribution, it is better to try with the Linux From Scratch documentation. If you want to use instantly some GNU/Linux Live CD to repair your system, read the document LiveDistro on Wikipedia and try to find some usable. Of course, you may take Knoppix for example.

If you want just to use GNU/Linux, start with Ubuntu and when you learn how to use GNU/Linux switch to Debian 🙂

Documents

If you are not introduced in GNU/Linux (or Unix-like operating systems), or even in computers and Internet at all, you should read the next documents firstly:

Of course, if you like to research, you may find a lot of useful documents on Wikipedia and Internet in general.

Dependences

You should have at least some Unix-like operating system on your computer. If you have some contemporary default desktop distribution, it is possible that you would have all necessary tools. In this moment I didn’t check all dependences, but the list of the software from Linux From Scratch list should be enough, except that you should have a working Python installed on your computer (howerver, if you have some contemporary default desktop distribution, you should have Python, too) and QEMU if you want to be able to test what is going on and not to reboot your computer often.

Drive course

The first goal is to make a small GNU/Linux distribution which would be able to do things like cp, ls, rm, tar, gzip and so on. The list of the requirements are:

  • The first distribution should be small, but not floppy disk size because it is masochistic for the beginning 🙂 Later, I want to make a floppy disk distribution, too. So, something like up to 10MB should be find (maybe 8 for small flashes)
  • It should be based on the Linux kernel. Making distribution for other kernels will be left for the later stages.
  • It should be based on the IA-32 architecture, which should work on the most of 32-bit computers. I’ll try to keep compatible distribution with i386 architecture. Of course, it should work on x86-64 architecture, too. Making distribution for other architectures will be left for the later stages.
  • The simplest way for working is to put such distribution on CD. So, the initial goal is to make a distribution which would be able to boot from CD. However, very soon it should be able to be booted from other medium, too (memory sticks are the first goal).

Software

Even it seems too easy, our first mini distribution needs only three softwares: GNU GRUB (to tell to computer that medium has something which it may run) Linux kernel (to make programs running) and BusyBox (to run something).

Getting started

This will be the last section of the first part of our travel.

We need software to be downloaded and we need that automatically. The first version of our distribution called “strelka” is 0.5.1. The name and the version is a legacy from my first distribution made in the minimalist manner.

While tar’ed and gzip’ed strelka has 1,2K, while uncompressed 2,9K — if you start the program, it will use 400MB! Because it downloads three software packages and unpacks them.

As I said, it downloads GNU GRUB, Linux kernel and BusyBox. It is written in Python and you may play with configuration file called “predefined.eval.py”.

In this moment, you should onlu start the program “getsoftware-stable.py” and it will download mentioned software packages.

End notes

Further reading

Software

Important sites


Collaboration

You may join the discussion group (which is still not active), as well as you may contact me (millosh@gmail.com).


Contents:

  1. Toward The New Bootdisk Howto, part 1 (The Beginning of The Road)
  2. Toward The New Bootdisk Howto, part 2 (A Scratch for The Road, part 1)
  3. Toward The New Bootdisk Howto, part 3 (A Scratch for The Road, part 2)
  4. Toward The New Bootdisk Howto, part 4 (A Scratch for The Road, part 3: kernels 1)
  5. Toward The New Bootdisk Howto, part 5 (A Scratch for The Road, part 4: kernels 2)
  6. Toward The New Bootdisk Howto, part 6 (Making a GRUB rescue disk)

Advertisements

~ by millosh on August 27, 2007.

5 Responses to “Toward The New Bootdisk Howto, part 1”

  1. […] Toward The New Bootdisk Howto (The Beginning of The Road) (A Scratch for The Road, part 1)It is hardly to say that it is easy to find the exact way for the goals of this trip. There are a lot of interesting approaches for making a bootdisk. And all of them are giving some interesting points with a lot of literature needed to read. I’ll try now to make a scratch for the road, but it will give only the main contours, not the exact step-by-step way to the goal. […]

  2. […] of death In the process of making the new part of the document Toward The New Bootdisk Howto (part 1 and part 2 are done), I am somewhere between the first and the second stage boot loaders. (Of […]

  3. […] Toward The New Bootdisk Howto, part 1 (The Beginning of The Road) […]

  4. […] Toward The New Bootdisk Howto, part 1 (The Beginning of The Road) […]

  5. […] Toward The New Bootdisk Howto, part 1 (The Beginning of The Road) […]

Comments are closed.

 
%d bloggers like this: