Linux FAQ's & Manuals
- Linux Scripts
- Debian Install
- Bash For Beginners
- Bugzilla
- Consultants Guide
- GCC Manual
- Linux Command Line Tools
- Gnu Pascal Coding Standards
- Linux Installation Disk
- Labolatorium Linux(PL)
- Budowa systemu Linux(PL)
- Linux Dictionary
- Network Administrators
- Rescue Disk for Linux
- Red Hat Installation
- Red Hat Customization
- Red Hat Getting Started
- Red Hat Security
- Secure & Optimize
- Slackware Manual
- Suse Support
- Suse FAQ
Lately, I've found myself troubled with the changes taking place with Xandros. As many of you probably know by now, Xandros has gone through a reorganization that meant that they had to layoff roughly five employees...
The Coloradoan: Terra Soft Launches Linux OS
Something interesting in this interview with Kai Staats: "Yellow Dog Linux is not preinstalled on the Playstation--there are a few steps to arrive at the installer--but anybody who knows how to use a keyboard, a mouse, and a Web browser can do it..."
vnunet.com: Novell Opens Legal Books to GPL Pundits
Novell has partnered with the Software Freedom Law Center (SFLC) to ensure that its partnership with Microsoft does not violate any terms of the General Public Licence...
Linux-Watch: Novell is Not SCO
Novell is not SCO. Novell is not the great anti-GPL. Get over it. I'm getting a little tired of the constant Novell-bashing. Do I think that Novell made a smart long term move by partnering up with Microsoft? No, I don't...
Free Software Magazine: Flying High with FlightGear
FlightGear is a top notch and highly accurate free software flight simulator. The software has no kill or be killed situations...
next: building uclibc up: making linux installation disks previous: introduction contents
first preparation
first create a directory where we will build the whole project. i chose the name myboot. make an environment variable with the name myboot, that contains the name of this directory. it is advised that you assign this variable from a script. i will use this variable throughout the document. type the following commands in your home directory (assuming you use the bash shell):
mkdir myboot export myboot=~/myboot
obtain the following source packages and collect them into the directory myboot:
- the linux kernel. in our example we take version 2.4.21, which was the latest version at the time of writing. it may be desirable to use a kernel from the 2.2 series instead as it requires less memory. even a kernel from the 2.0 series may do the job, it's still maintained, but don't ask me for how long. download it from the main kernel site.
- the small c library uclibc. this can also be downloaded from the main kernel site, the kernel archive, the libs subdirectory.
- the shell and utilities busybox.
- the utility programs in util-linux. these can be found at the main kernel site in the kernel archive, the utils subdirectory.
- the package e2fsprogs with programs to create and repair file systems.
- the ncurses library.
- the dialog utility.
- the keyboard utilities in the kbd package. these can be found at the main kernel site in the kernel archive, the utils subdirectory. this is essential if you live in a country (such as belgium or germany) where they don't use the one true qwerty layout.
- the grub boot loader.
some of these packages may already be present in your linux distribution (in source form). for all packages except uclibc and busybox this is very likely. but of course there may exist more recent versions.
after you have downloaded all the sources, your myboot directory may look like this. of course you may have different (more recent) versions of all programs:
total 38572 -rw-r--r-- 1 lennartb users 626209 2003-06-08 12:58 busybox-0.60.5.tar.bz2 -rw-r--r-- 1 lennartb users 215806 2003-05-29 19:03 dialog_0.9b-20030308.o rig.tar.gz -rw-r--r-- 1 lennartb users 2959524 2003-04-22 01:40 e2fsprogs-1.33.tar.gz -rw-r--r-- 1 lennartb users 877112 2003-03-24 17:14 grub-0.92.tar.gz -rw-r--r-- 1 lennartb users 819924 2003-06-08 12:36 kbd-1.08.tar.gz -rw-r--r-- 1 lennartb users 28533733 2003-07-06 13:16 linux-2.4.21.tar.bz2 -rw-r--r-- 1 lennartb users 2067718 2003-03-24 17:24 ncurses-5.3.tar.gz -rw-r--r-- 1 lennartb users 1501374 2003-07-13 13:17 uclibc-0.9.20.tar.bz2 -rw-r--r-- 1 lennartb users 1839967 2003-06-08 12:52 util-linux-2.11z.tar.gz
so let's unpack what we've got. type the following commands when inside the myboot directory:
bunzip2 -c busybox-0.60.5.tar.bz2 |tar xvf - gunzip -c dialog_0.9b-20030308.orig.tar.gz |tar xvf - gunzip -c e2fsprogs-1.33.tar.gz |tar xvf - gunzip -c grub-0.92.tar.gz |tar xvf - gunzip -c kbd-1.08.tar.gz |tar xvf - bunzip2 -c linux-2.4.21.tar.bz2b |tar xvf - gunzip -c ncurses-5.3.tar.gz |tar xvf - bunzip2 -c uclibc-0.9.20.tar.bz2 |tar xvf - gunzip -c util-linux-2.11z.tar.gz |tar xvf -after this you should have the sources of the nine packages, each in its own subdirectory.
note: the $myboot shell variable must point to the myboot directory.
note: in this document you see many sequences of shell commands. of course you can put them into shell scripts, so you need not retype them when you try to build a modified boot disk.
next: building uclibc up: making linux installation disks previous: introduction contents lennart benschop 2003-07-16