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.
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.
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.
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
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:
/etc/init.d/network
).
/etc/fstat
on the target to
simply mount the remote source cdrom via nfs.
source:/cdrom /cdrom nfs noauto,intr 1 2