Next Previous Contents

## 13. Debian installation

I'm a Debian proselyte since it is my first Debian installation. Debian lovers are the same kind of people as Macintosh lovers or Linux lovers in the operating systems space. Nothing else counts. Since I'm already a Mac and Linux lover (and French too :-) it was time to fall in love.

Debian is well, clearly and internationally documented. Thanks to all those people who bred this really open distribution.

I could leave you on your own during the installation process. But since we have to interact with a shell during it, the entire process will be described in detail.

I know the description is Debian specific. I prefer to give you a complete example than nothing except a ``run a shell at the right moment and type bla bla...''. I do like concrete examples.

Simon Forget <sforget@camelot.ca> told me he could not use this howto with his Toshiba Libretto 50CT because the kernel could not recognize the pcmcia floppy drive during the installation process. I don't know why but there is a solution using plip, if you already have a dos partition on the target computer.

This solution is simpler and faster because no floppy drive nor plip network is necessary during the installation process. If you are interested in this solution, go directly to the section Installing from a DOS partition. I'm keeping the old installation routine because this new one needs a DOS partition that becomes superfluous when you definitely want to leave the dark side.

## 13.1 Preparing the two floppies

On the source side, mount the cdrom and go to the install directory

          $ mount -t iso9660 /dev/hdd  /cdrom

The device for your CDROM may be /dev/hdb or /dev/hdc or another device (SCSI), depending on where is plugged your CDROM.

          $ cd /cdrom/debian/dists/stable/main/disks-i386/current/

Read the file install.html with a browser or install.txt with a more, a less, a cat (or a dog?).

Now, record the install (alias rescue) floppy. Write a "`resc1440.bin`" label on it:

          $ dd if=resc1440.bin of=/dev/fd0H1440

Write the drivers floppy. Write a "`drv1440.bin`" label on it:

          $ dd if=drv1440.bin of=/dev/fd0H1440

Then make sure that the floppies are write-protected.

Now you're ready to start the real installation process.

## 13.2 The real installation process

Insert the resc1440.bin floppy on target drive. Reboot your target box.

         Welcome to Debian GNU/Linux 2.x!
         ...

Read the text. The prompt is:

         boot:

Press `<ENTER>`

         Loading root.bin...........
         loading linux...
         ....

A new screen:

         Next: Select Color or Monochrome display

Choose yours with the arrow up/down keys and press `<ENTER>`

         Next: Continue with the installation

press `<ENTER>`

         Software in the Public Interest
                 presents
          *** Debian GNU/Linux 2.1 ***
         ...

Read the text Press `<ENTER>` (You see `<Continue>` on the screen)

         Next: Configure the Keyboard

press `<ENTER>` Select your country and press `<ENTER>`

         Next : Partition a Hard Disk

Press `<ENTER>`

         Select Disk Drive
         usually /dev/hda

If you have several disks choose the good one (where you want to install Linux) and press `<ENTER>`

You are now using the program `cfdisk`. Using `cfdisk` is safe until you decide to `[Write]` the partition on disk. Leaving `cfdisk` with `[Quit]` is safe.

We are going to make just two new primary partitions, a Swap one and a big Linux one. If you want to create more partitions, leave some free space or extended partitions, you can. But read the documentation about "Partitioning" in the Installation-HOWTO, especially if you have more than 1024 cylinders and an old version of LILO.

If you previously ran the `FIPS` program, you see the `hda1` partition (`DOSFAT16`). Switch to the next free partition with the up/down arrow keys.

Select `[New]` with the right/left arrow keys and press `<ENTER>`

Select `[Primary]` and press `<ENTER>`

Enter the size of your swap partition. Twice the RAM is usual if you have less than 128 megabytes of ram. If you have 2 gigabytes of RAM, it's because you don't want to swap. In that case, no swap partition is needed.

Select `[Beginning]` and press `<ENTER>`

Select `[Type]` and press `<ENTER>`. Type `82` (Linux Swap) and press `<ENTER>`.

Switch to the next free partition with the up/down arrow keys. Select `[New]` and press `<ENTER>`

Select `[Primary]` and press `<ENTER>`

Enter the size in MB (you can leave the default) and press `<ENTER>` Its type should be already Linux. If not, change to Linux (83) with `[Type]`

The partition table is defined now. Verify everything looks good. If you're not sure, read the documentation with `[Help]`. If doubts are still there, select `[Quit]` and leave the installation process. Go for a walk and restart from the beginning of this section.

I assume you are confident now.

Select `[Write]`

         Are you sure you want to write the partition table to disk?

Type "`yes`" and press `<ENTER>`

Select `[Quit]` and press `<ENTER>`

         Next: Initialize and Activate a Swap Partition

Press `<ENTER>`

         Please select the partition to initialize as a swap device

Select `/dev/hda2` (normally already selected). Press `<ENTER>`

         Scan for Bad Blocks?

select `<YES>` and press `<ENTER>`

         Are you Sure?

select `<YES>` and press `<ENTER>`

         Initializing swap partition
         ...

         Next: Initialize a Linux Partition

Press `<ENTER>`

         Select Partition. Please select the partition to initialize as a
         Linux "ext2" file-system.

Select `/dev/hda3` (normally already selected) and press `<ENTER>`.

         Scan for Bad Blocks?

Select `<YES>` and press `<ENTER>`

         Are you Sure?

Select `<YES>` and press `<ENTER>`

A new page full of numbers. You can take a rest because it takes some time (especially with a big hard disk).

         Next: Mount a Previously-Initialized Partition

Press `<ENTER>`

         Please select the partition to mount

Select `/dev/hda3` and press `<ENTER>`

         Mount the /dev/hda3 device as the Root FileSystem?

Select `<Yes<` and press `<ENTER>`

         Next: Install Operating System Kernel and Modules

Press `<ENTER>`

         Please select the medium you will use to install the system

Select `/dev/fd0` and press `<ENTER>`

         Please place the Rescue Floppy in the first floppy drive

The floppy is already there.
Select `<Continue>` and press `<ENTER>`

         Installing the Rescue Floppy ...
         Please place the Drivers Floppy in the first floppy drive

Eject the Rescue Floppy and insert the Drivers Floppy, the one I you labelled `drv1440.bin` (you did it, didn't you?).
Select `<Continue>` and press `<ENTER>`

         Installing the Drivers  Floppy ...

A new screen:

         Next: Configure Device Driver Modules

Press `<ENTER>`

         Select Category

Read the text.

         Please select the category of modules

Select `net` and press `<ENTER>`
Select `plip`.

         Module plip

Select "Install the module in the kernel" and press `<ENTER>`
No parameters are needed.
Select `<Ok>` and press `<ENTER>`

         Installation succeeded
         Please press ENTER when you are ready to continue.

Press `<ENTER>`

Select `Exit` ("Finished with these modules") and press `<ENTER>`
Then you see the same kind of screen again.
Select `Exit` ("Finished with these modules") and press `<ENTER>`

         Next: Configure the Network

Choose a name, you can use a different name than `debian` or `target`.
Press `<ENTER>`

         Is your system connect to a network?

Select `<No>` and press `<ENTER>`

STOP STOP STOP. You see now:

         Next: Install the base system

Now we need a shell.

Press `Alt F2` and `<ENTER>` You are in a root shell.

## 13.3 An installation break: PLIP on the target side

You are in a root shell.

Verify the plip module is loaded:

         $ lsmod
         Module    Pages    Used by
         plip          3          0

Find the exact name of the plip interface:

         $ dmesg
         ...
         NET3 PLIP version 2.2 gniibe@mri.co.jp
         plip1: Parallel port at 0x378, using assigned IRQ 7

You can find the same information with

         $ cat /proc/kmsg
         ...
         <4>NET3 PLIP version 2.2 gniibe@mri.co.jp
         <4>plip1: Parallel port at 0x378, using assigned IRQ 7
         ...

         Ctrl-c (or ^C if you prefer)

Configure the plip interface:

         $ ifconfig plip1 192.168.0.1  pointopoint  192.168.0.2 netmask 255.255.255.255 up

Verify everything is ok:

         $ ifconfig plip1
         plip0     Link encap:Ethernet  HWaddr FC:FC:C0:A8:00:01
              inet addr:192.168.0.1  P-t-P:192.168.0.2  Mask:255.255.255.255
              UP POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              Collisions:0
              Interrupt:7 Base address:0x378

Verify the route to source exists:

         $ route
         Kernel IP routing table
         Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
         127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo

If not, like in the previous example, add the route to 192.168.0.2, the source:

         $ route add -host 192.168.0.2 dev plip1

Now the route is installed:

         $ route
         Kernel IP routing table
         Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
         192.168.0.2     0.0.0.0         255.255.255.255 UH    0      0        0 plip1
         127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo

Now you can perform a successful `ping` from the source server (`ping` is not available on the Debian install process):

         $ ping target
         PING target (192.168.0.1): 56 data bytes
         64 bytes from 192.168.0.1: icmp_seq=0 ttl=64 time=14.0 ms
         64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=4.3 ms

         --- target ping statistics ---
         2 packets transmitted, 2 packets received, 0% packet loss
         round-trip min/avg/max = 4.3/9.1/14.0 ms

If it doesn't work, check the Null-Modem cable connection, rerun `dmesg`, `ifconfig`, `route`. Verify everything. Take a rest. Restart.

When the ping is okay, return to the normal installation process:

On the target: press `Alt F1`

## 13.4 Return to the normal install process

You are back to the normal installation process. You should still see:

         Next: Install the base system

Press `<ENTER>`

         Please select the medium you will use to install the system

Select `nfs` and press `<ENTER>`

         Please choose the NFS server and the mount path ...

Type: `192.168.0.2:/cdrom`
Press `<ENTER>`

         Please choose the path inside the mounted NFS filesystem

Type /debian (normally already there) and press `<ENTER>`

If no error message complains about the nfs mount then bravo. You can verify this mount by entering the shell again:

Press `Alt F2`

         $ mount
         ...
         192.168.0.2:/cdrom on /instmnt type nfs (rw, addr=192.168.0.2)

         $ ls /instmnt/debian
         README                 README.non-US          doc/
         README.CD-manufacture  README.pgp@            hamm/
         README.mirrors.html    TRANS.TBL              tools/
         README.mirrors.txt     dists/

Press `Alt F1`

You're back again to the normal installation process.

Now the plip nfs cdrom connection is done. Let's go on and finish our job.

         Please select the directory containing a file base2_0.tgz

Select `list` and press `<ENTER>`

         Please Wait
         The installation program is building a list of ...

A new screen:

         Select Archive Path
         Please select the directory that you will use to install the Base
         System from.

Only one long item, already selected. Press `<ENTER>`

         The Base System is being extracted from
         /instmnt/debian/dists/.....

Take a second rest, you deserve it

         Next: Configure the Base System

Press `<ENTER>`

         Select Timezone

Select your timezone and your directory and press `<ENTER>`

         Timezone Configuration

Read and press `<ENTER>`

         Timezone Configuration.

An other page. Read, select `<YES>` and press `<ENTER>`

         Next: Make Linux Bootable Directly From Hard Disk

Press `<ENTER>`

         Create Master Boot Record?

Read
Select `<Yes>` and press `<ENTER>`

         Make Linux the Default Boot Partition?

Read.
Select `<No>` and press `<ENTER>`

         Next: Make a boot Floppy

Press `<ENTER>`

         Change Disk
         Please place a blank floppy disk in the first floppy drive.

Do it and press `<ENTER>`
The floppy is being formatted

         Creating a filesystem on the floppy...
         Copying the operating system kernel...

A new screen:

         Next: Reboot the System

Press `<ENTER>`

         Reboot the system ?

Remove the floppy and press `<ENTER>`

The system reboots. Are you still with the dark side? I guess yes, so insert the boot floppy you've just made and reboot again with `Ctrl-Alt-Del`

See the boot messages.
Read the text.

         New password:

Enter a root password.

         Re-enter new password

Do it. And learn it.

         Shall I create a normal user account now? [Y/n]

Enter `n` and press `<ENTER>`. Unless you want to do it (it is safe and good, in fact).

         Shall I install shadow passwords? [Y/n]

Enter `y` and press `<ENTER>`

         Do you want to use a PPP connection to install

Enter `n` and press `<ENTER>`

         Now you may choose one of several selections ...
         Do you want to perform this step?

Enter `n` and press `<ENTER>`

         I'm going to start the 'dselect' program...

Press `<ENTER>`
Select `[Q]uit` and press `<ENTER>`

         You may now login as 'root' at the login: prompt...
         ...
         debian login:

Enter `root`.

         Password:

Enter the root password.

        ...
         debian:~#

The system is installed and working. CONGRATULATIONS!

My job stops here. Read the install documentation of your distribution and go on with the Unix system administration job.

When you reboot your system, the plip connection won't be in good shape. But now you know what to do.

I suggest you some work:

- Configure the plip interface for the normal boot process (in the file `/etc/init.d/network`).
- Configure `/etc/fstat` on the target to simply mount the remote source cdrom via nfs.

            source:/cdrom              /cdrom   nfs     noauto,intr 1 2

- Learn Lilo. Configure it for your DOS and Linux systems and install it on a floppy.
- When you master Lilo on the floppy, install it on your hard drive.
- Install and configure the X Window System.
- Have fun.
- Mail me some feedback.

Next Previous Contents