lamiral@mail.dotcom.fr
You can find the latest release of the
PLIP-Install-HOWTO, by Gilles Lamiral, located at:
http://www.linuxdoc.org/HOWTO/PLIP-Install-HOWTO.html
Writing a PLIP install HOWTO seems useless nowadays since Ethernet cards are cheap: NE2000 cards cost about the same as a Null-Modem cable. This is true for desktop computers, but not for laptop computers, in which the PCMCIA card costs more than 10 times as much the Null-Modem cable. Moreover, there is a parallel port on every computer, but not always a network card.
Of course, this howto can be used to install Linux on every personal computer without loss of generality.
This paper is just what I've done to install a Debian GNU/Linux distribution on a Toshiba Portégé 620CT laptop, from a NFS exported cdrom drive, via a Null-Modem cable.
A Null-Modem cable is also called a LapLink cable but this word is trademarked by Traveling Software under the number 75466713 since 1986, so I won't use it anymore.
This HOWTO will be obsolete when every Linux distribution include a PLIP install option. For example, the Debian installation only needs to add two commands to make this HOWTO obsolete (ifconfig + route). I hope one Debian maintainer will consider this point.
I would be happy to know if someone used the PLIP-Install-HOWTO to install other Linux distributions from other network protocols (ftp, http, nfs, samba, or even NT/Novell servers)
Feedback with typos, bad English, comments, money, job, joy, fears, cries are welcome and recommended (not all with the same eagerness).
I put this documentation under the OpenContent license. This means this document is given without any warranty. You can use it, redistribute it, or modify it, by respecting the following conditions: You have to clearly specify the nature and the content of the modifications, their date and keep the opencontent license in case of redistribution. If you sell it, you sell the medium, not the content. This is a summary, read the license to get more details.
For those who can't read the license online, I give a textual copy:
OpenContent License (OPL)
Version 1.0, July 14, 1998.
This document outlines the principles underlying the OpenContent
(OC) movement and may be redistributed provided it remains
unaltered. For legal purposes, this document is the license under
which OpenContent is made available for use.
The original version of this document may be found at
http://www.opencontent.org/opl.shtml
LICENSE
Terms and Conditions for Copying, Distributing, and Modifying
Items other than copying, distributing, and modifying the Content
with which this license was distributed (such as using, etc.) are
outside the scope of this license.
1. You may copy and distribute exact replicas of the OpenContent
(OC) as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any
warranty; and give any other recipients of the OC a copy of this
License along with the OC. You may at your option charge a fee for
the media and/or handling involved in creating a unique copy of the
OC for use off-line, you may at your option offer instructional
support for the OC in exchange for a fee, or you may at your option
offer warranty in exchange for a fee. You may not charge a fee for
the OC itself. You may not charge a fee for the sole service of
providing access to and/or use of the OC via a network (e.g. the
Internet), whether it be via the world wide web, FTP, or any other
method.
2. You may modify your copy or copies of the OpenContent or any
portion of it, thus forming works based on the Content, and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified content to carry prominent notices
stating that you changed it, the exact nature and content of the
changes, and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the OC or any part
thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License, unless otherwise permitted
under applicable Fair Use law.
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the OC, and
can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work
based on the OC, the distribution of the whole must be on the terms
of this License, whose permissions for other licensees extend to
the entire whole, and thus to each and every part regardless of who
wrote it. Exceptions are made to this requirement to release
modified works free of charge under this license only in compliance
with Fair Use law where applicable.
3. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to copy,
distribute or modify the OC. These actions are prohibited by law if
you do not accept this License. Therefore, by distributing or
translating the OC, or by deriving works herefrom, you indicate
your acceptance of this License to do so, and all its terms and
conditions for copying, distributing or translating the OC.
NO WARRANTY
4. BECAUSE THE OPENCONTENT (OC) IS LICENSED FREE OF CHARGE, THERE
IS NO WARRANTY FOR THE OC, TO THE EXTENT PERMITTED BY APPLICABLE
LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS
AND/OR OTHER PARTIES PROVIDE THE OC "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE. THE ENTIRE RISK OF USE OF THE OC IS WITH YOU.
SHOULD THE OC PROVE FAULTY, INACCURATE, OR OTHERWISE UNACCEPTABLE
YOU ASSUME THE COST OF ALL NECESSARY REPAIR OR CORRECTION.
5. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY
MIRROR AND/OR REDISTRIBUTE THE OC AS PERMITTED ABOVE, BE LIABLE TO
YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE
THE OC, EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
I wrote this paper during the installation process but since I encountered several problems at the same time, my notes were disparate and sometimes I forgot to write the good command lines because I was too fed up to reboot (kernel compilations) and edit this file each time.
When the installation went wrong (it did, I'm a beginner on laptops, plip, linux nfs, portmapper, Debian), I tried several things to fix the problems. When they remained too long, my brain was focused on solving, not writing.
So, when the installation process finally succeeded, I decided to restart the process from scratch by noting everything in order to save your time. It was the first time I had installed Linux twice on the same computer.
Then, in order to verify the document, I again restarted from scratch with a Slink Debian distribution (the next after the Hamm one). It was the first time I had installed Linux 3 times on the same computer. I hope it was the last time I have to do that.
Conclusion: If you do what is in this paper, it should work.
FIPS
.
I recommend these good readings in case you can't figure out how to solve a problem. I've read them. You should too if you're curious or conscientious.
Please, do not forget to consider the
LDP mirrors,
listed at:
http://www.linuxdoc.org/mirrors.html
Most HOWTOs are translated in
many languages. Just go to the bottom of a mirror page and
follow the translations/
link.
If you want to use Linux on a laptop, read the latest
Laptop-HOWTO,
by Werner Heuser, located at:
http://www.snafu.de/~wehe/index_li.html.
If you haven't installed any distribution yet, carefully read the
Installation-HOWTO, by Eric S. Raymond, located at:
http://www.linuxdoc.org/HOWTO/Installation-HOWTO.html. And
make more coffee :-)
If you need information about your cdrom drive, read the
CDROM-HOWTO, by Jeff Tranter, located at:
http://www.linuxdoc.org/HOWTO/CDROM-HOWTO.html.
If you haven't installed an nfs server yet, read the
NFS-HOWTO, by Nicolai Langfeldt, located at:
http://www.linuxdoc.org/HOWTO/NFS-HOWTO.html.
If you need to compile a new kernel on the source box, read
the
Kernel-HOWTO, by Brian Ward, located at:
http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html.
If you are new to PLIP, read the
PLIP MINI-HOWTO, by Andrea Controzzi, located at:
http://www.linuxdoc.org/HOWTO/mini/PLIP.html.
If you plan to make your Null-Modem cable yourself, a good reading
is the file
PLIP.txt, by Donald Becker, located at:
/usr/src/linux/Documentation/networking/PLIP.txt
on your source linux computer, Luke.
The file contents and line commands and install screen-shots are
always in typewriter
font, like this:
#!/bin/bash ############################################# #### This is the great file /bin/Windows #### ############################################# while [ "1" ]; do echo "I do my best because I'm the best" echo "Very soon, next Y2Kill (the 01/01/0000)" echo "A new marvelous 64 bit release !" echo "Please wait a little more" sleep 18446744073709551615 # 2^64-1 done
or this:
$ killall Windows Terminated
The file content lines should never begin with white space. You'll
have to remove them, if any. Sorry, I'm fed up with C-a
M-AltGr-\
(remember, I'm a French azerty writer). Tab-emacs
reflex is untamable (coders who use Emacs always press the tabular
key like a twitch).
Command input lines begin with a dollar $
(the prompt), you
don't have to type the dollar, just type the rest of the line; other
lines are the command output, you don't have to type them either.
Because all the configuration commands are important, you'll need to use a system administrator shell, like root, on the source and the target computers.
$ su Password: blabla #
graham says:
Why this "#"? Because this is for root's prompt. So, in the next paragraph, say that you will use the '$' for the remainder of this. See my comment below.
The prompt will be shown as "$
" in the remainder of this
documentation "$
", even if it should be "#
". This
is because "#
" often means comment, so it is ambiguous. I
don't like ambiguity in computer science.
We will make a plip point-to-point network with those IP configuration:
You should not already have those names in your name space:
$ ping source ping: unknown host source $ ping target ping: unknown host target
You should not already have those IP addresses in your network space:
$ ping 192.168.0.1 PING 192.168.0.1 (192.168.0.1): 56 data bytes ping: sendto: Network is unreachable ping: wrote 192.168.0.1 64 chars, ret=-1 --- 192.168.0.1 ping statistics --- 1 packets transmitted, 0 packets received, 100% packet loss $ ping 192.168.0.2 PING 192.168.0.2 (192.168.0.2): 56 data bytes ping: sendto: Network is unreachable ping: wrote 192.168.0.2 64 chars, ret=-1 --- 192.168.0.2 ping statistics --- 1 packets transmitted, 0 packets received, 100% packet loss
If those commands don't give you errors, change the names or the addresses.
You can choose other addresses, names or netmask (netmask must be the same on both sides). In the rest of this document, I'll suppose you choose these addresses and these names.
Add a line in /etc/exports
#### file /etc/exports #### ... /cdrom source(ro) target(ro) #### EOF ####
Because the portmaper tries to resolve IP addresses, add the IP
addresses and names in /etc/hosts
#### file /etc/hosts #### ... 192.168.0.1 target 192.168.0.2 source #### EOF ####
Verify you have the item files
for the
hosts
search list in the file
/etc/nsswitch.conf
#### file /etc/nsswitch.conf #### ... hosts: files nis dns ... #### EOF ####
This section describes how to set up the plip
interface in
the source server. If you run into trouble, I suggest that
you read the
PLIP MINI-HOWTO.
Check that your lp
device is not set. You should
not have this entry:
$ cat /proc/devices Character devices: ... 6 lp ...
If you do have it, kill the lpd
daemon and remove the
lp
module:
$ /etc/rc.d/init.d/lpd.init stop Shutting down lpd: lpd $ rmmod lp
If you can't remove the lp
module then you have to
recompile the kernel with lp
service as a module.
Now, the "6 lp
" line has disappeared from the
/proc/devices
file, which is a reflection of the kernel
capabilities.
You are not obliged to eliminate the lp device : the scheme may work with lp. Without guaranty (it works for me). Check it yourself.
Check that your parallel port is handled:
$ ls /proc/parport/ 0/ $ cat /proc/parport/0/hardware base: 0x378 irq: 7 dma: none modes: SPP,ECP,ECPEPP,ECPPS2
If you don't have any directory under /proc/parport/
then
you have to load the parport
and parport_pc
modules
:
$ insmod parport $ insmod parport_pc
You should see this new entry in
/var/log/messages
:
Oct 9 20:50:47 louloutte kernel: parport0: PC-style at 0x378 [SPP,ECP,ECPEPP,ECPPS2] Oct 9 20:50:47 louloutte kernel: parport0: detected irq 7; use procfs to enable interrupt-driven operation.
I repeat the message "detected irq 7
, use procfs to enable
interrupt-driven operation", so:
$ echo 7 > /proc/parport/0/irq
Check that plip
module is loaded:
$ lsmod |grep plip
If plip
module is not loaded, then load it:
$ insmod plip
You should see something like this in /var/log/messages
==> /var/log/messages <== Oct 8 16:34:12 louloutte kernel: NET3 PLIP version 2.3-parport gniibe@mri.co.jp Oct 8 16:34:12 louloutte kernel: plip0: Parallel port at 0x378, using IRQ 7
If you can't load the plip
module then you have to
recompile the kernel with plip
service as a
module.
The syslog message says the module is loaded on the plip0
interface. Configure the plip0
interface:
$ ifconfig plip0 source pointopoint target netmask 255.255.255.255 up
Check that everything is okay.
$ ifconfig plip0 plip0 Link encap:10Mbps Ethernet HWaddr FC:FC:C0:A8:00:02 inet addr:192.168.0.2 P-t-P:192.168.0.1 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 TX packets:0 errors:0 dropped:0 overruns:0 Interrupt:7 Base address:0x378
Now you can ping
locally the source server:
$ ping source PING source (192.168.0.2): 56 data bytes 64 bytes from 192.168.0.2: icmp_seq=0 ttl=255 time=0.3 ms 64 bytes from 192.168.0.2: icmp_seq=1 ttl=255 time=0.2 ms --- source ping statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max = 0.2/0.2/0.3 ms
Verify that the route to target exists:
$ route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface target * 255.255.255.255 UH 0 0 0 plip0
If the route doesn't exist, add it:
$ route add -host 192.168.0.1 dev plip0
When the target is configured you will be able to do a ping test:
$ ping target PING 192.168.0.1 (192.168.0.1): 56 data bytes 64 bytes from 192.168.0.1: icmp_seq=0 ttl=64 time=4.5 ms 64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=4.3 ms --- 192.168.0.1 ping statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max = 4.3/4.4/4.5 ms
But if you try it now you should have:
$ ping target PING target (192.168.0.1): 56 data bytes --- target ping statistics --- 5 packets transmitted, 0 packets received, 100% packet loss
Now, the server network is ready to work. Congratulations.
This section describes how to mount and export via NFS a cdrom drive.
Mount the cdrom. If you encounter a problem with your cdrom drive,
read the CDROM-HOWTO. I assume that the cdrom
device is /dev/hdd
but it could be /dev/sr0
or
/dev/hdb
etc. The mount point I choose is /cdrom
but you can choose the one you want:
$ mount -t iso9660 /dev/hdd /cdrom
You have to set up nfs services. If something goes wrong, read the NFS-HOWTO
Verify your kernel supports nfs:
$ cat /proc/filesystems ext2 nodev proc nodev nfs nodev ncpfs nodev devpts iso9660
Verify your portmapper can handle mountd and nfs client requests:
$ rpcinfo -p program vers proto port 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100005 1 udp 655 mountd 100005 1 tcp 657 mountd 100003 2 udp 2049 nfs 100003 2 tcp 2049 nfs
Lines with nfs
or portmapper
have to be there. NFS
on tcp ? progress have been made !
Then, rerun portmap
, mountd
, nfs
:
$ /etc/rc.d/init.d/portmap.init stop Stopping INET services: portmap $ /etc/rc.d/init.d/portmap.init start Starting portmapper: portmap $ /etc/rc.d/init.d/nfs stop Shutting down NFS services: rpc.mountd rpc.nfsd $ /etc/rc.d/init.d/nfs start Starting NFS services: rpc.mountd rpc.nfsd
/etc/rc.d/init.d/
is /sbin/init.d/
on SuSE Linux
systems. I had a dream last nigth: LSB was respected. (LDB: Linux
Standard Base)
Then, try to mount it "locally" (via nfs) on the source box and clean the test:
$ mkdir /tmp/nfstest $ mount -t nfs source:/cdrom /tmp/nfstest $ ls /tmp/nfstest/ README debian/ locatedb.3 tools/ TRANS.TBL ftp.netscape.com/ ls_lR.3 upgrade/ boot/ install/ realaudio/ $ echo great stuff ! $ umount /tmp/nfstest $ rmdir /tmp/nfstest
Bad luck ? Read the NFS-HOWTO and
/var/log/messages
.
Check the nfs server with those commands:
$ rpcinfo -p
Run portmap
with the -v
flag:
$ portmap -v
kill portmap
, mountd
, nfsd
and rerun them
in this order: portmap
, mountd
, nfsd
.
Take a rest, get more coffee. Read again the
NFS-HOWTO and restart.
Now, the exported cdrom drive nfs server is ready to work. Congratulations.
This section is for anybody who has only one primary FAT partition (DOS, Windows 3.xx, NT) and wants to keep it without loosing data. Make some backups because if you burn it, I won't be responsible - you will.
Journey to PARTED
Andrew Clausen (clausen@gnu.org), GNU Parted maintainer, wrote "You might want to mention GNU Parted in the PLIP-Install Howto." That is done. Since I didn't try it I can only give you the links to parted by http and parted ftp. Help yourself. Parted seems very good.
Andrew said: "GNU Parted is a *LOT* more powerful than FIPS (think Partition Magic). For example, it can convert FAT16 <=> FAT32, change the size of the FATs, doesn't require a defragger, etc. And it supports ext2, linux-swap..."
Back to FIPS.
Download FIPS. Don't forget the mirrors ftp.xx.debian.org where xx is your country abbreviation (fr, fi, us, uk, etc.).
At the time of this writing the archive file is called fips20.zip.
The fips program is already in the debian cdrom
distribution. I found it (yes, after downloading the
fips20.zip file) in /cdrom/debian/tools/fips15.zip
(It supposes your cdrom is mounted on /cdrom)
I guess you are on a Unix world but you're not compelled to do so. Go in a good working place on the source computer:
$ mkdir /tmp/fips-2.0/ $ cd /tmp/fips-2.0/ $ unzip -l /archive/fips/fips20.zip ... $ unzip /archive/fips/fips20.zip ... $ ls $ dos2unix fips.doc fips.faq readme.1st
Boot your target computer. Be in pure DOS (quit Windows).
Read again the file fips.doc
from the section
"5. Before you start".
Be aware of hidden files.
Graham comment: Hidden files will not be moved by DeFrag (as far as I know), so FIPS will reclaim less space for use by Linux. Use the ATTRIB command to remove the "hidden" attribute. Some things may require that files are hidden, so it will be necessary to hide the same files again later. I think that it would also be a good idea to run scandisk at this moment. Perhaps I do not trust DOS.
Be aware to eliminate the "virtual memory" file (swap for Win*) during the fips process. In Windows 3.11 (quite up to date, no?) this swap file is configured from Program-Manager->Control-Panel->Enhanced (a i386 chip icon).
Click, Click->Click on the chip and re-click on a button called "Virtual Memory".
Adjust the size to none, Click<-Click<-Click<-Click back plus Alt-F4 to close all your windows. Don't you think the Gates are too closed too?
Graham comment: I am not sure that this is a good idea. What happens if "386spart.par" is not hidden? I think that DEFRAG will move it, and Windows will complain next time it starts, then rebuild the file. Since we are clearly keeping DOS/Windows, the user will require a swap file again later. By not deleting it, the disc space is reserved for that time.
I don't what to say. I've just parroted FIPS manual because I succeeded with it.
So drink coffee, and pray.
Run SCANDISK
:
C:\> SCANDISK
Correct every cluster. You should have no dead cluster now.
Quit SCANDISK
Run DEFRAG
on C:
C:\> DEFRAG C:
All used clusters are at the beginning of the hard disk.
Quit DEFRAG
Make a bootable floppy disk:
C:\> FORMAT A: /S
Copy AUTOEXEC.BAT
and CONFIG.SYS
to the new floppy if you want to keep your local features (keyboard
keys etc.). Remove the line running SMARTDRIVE.EXE
in
AUTOEXEC.BAT
. Keep a minimal AUTOEXEC.BAT
On the source box: Copy the fips files restorrb.exe, fips.exe and errors.txt to this floppy disk.
$ mcopy errors.txt fips.exe restorrb.exe a:
Graham comment: Doesn't this assume that mtools are installed? If the floppy disc is mounted as type msdos, the standard "cp" command should do the job, and mtools would not be needed. I have never used mtools, but I have played with DOS files from Linux.
Yes, this assume that mtools are installed. mcopy is faster to type than mkdir, mount, cp, umount, rmdir.
Boot the target with the floppy. Run fips while reading the section "Using FIPS" in the file fips.doc
Do not forget to answer yes when fips ask for a rootboot saving.
When everything is ok, save your hard disk space:
$ cd $ rm -rf /tmp/fips-2.0/
Now you have a nice free space for a new operating system.
I'm not 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 Lin lover (and French too :-) it was time to fall in love.
Debian is well, clearly and internationally documented. Thanks to all those guys 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 details.
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 are 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 one installation routine because this new one needs a DOS partition that becomes superfluous when you definitively want to leave the dark side.
On the source side, mount the cdrom and go in the install directory
$ mount -t iso9660 /dev/hdd /cdrom $ cd /cdrom/debian/dists/stable/main/disks-i386/current/
Read the file install.html with a browser or install.txt with a cat, less or more (a dog).
Now, record the install (alias rescue) floppy. Write a
"resc1440.bin
" label on it:
$ dd if=resc1440.bin of=/dev/fd0H1440
Record the drivers floppy. Write a "drv1440.bin
" label on it:
$ dd if=drv1440.bin of=/dev/fd0H1440
Lock the writing on those floppies.
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 /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 do more partitions, leave some free space or extended partitions, you can. But read the documentation about Partitioning in the Installation-HOWTO.
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 mega bytes of ram. If you have 2 giga bytes 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 is 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 your 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 to initialize as a Linux "ext2" file-system.
Select /dev/hda3
(normals 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 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
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 ok, 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 formated
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 reboot. 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.
Shall I create a normal user account now? [Y/n]
Enter n
and press <ENTER>
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 now what to do.
I suggest you some work:
/etc/init.d/network
).
/etc/fstat
on the target to mount
simply the remote source cdrom via nfs.
source:/cdrom /cdrom nfs noauto,intr 1 2
This section is written by Florent SAUNIER.
sabetflo@freesurf.fr
I have performed a Slakware installation using PLIP very succesfully. I have also been able to install REDHAT and caldera Open linux using the very same method described below.
As previously specified by Gilles, a slakware installation requires everything specified in the chapter "What do you need" with time increased to 10 hours if you desire to install xfree(86) and some developpement tools.
Further on, you need to read first Gilles installation as I set up mine accordingly to his preset.
Finally, I have performed Slakware and Caldera installation on Twinhead 550C laptop, with 8Mb Ram, and 2Gbytes Hard drive.
To install slakware verion using ATAPI CDROM from your source you will need standard kernel image bareapm.i or bare.i. If you want to make an install from SCSI support take scsinet.i image.
Other image exists, such as net.i which sould include PLIP function but on my i486 laptop, Twinhead550C, the imagedoes not work. I have experienced that the standard image allways work on any laptop I have used.
From ms-dos create the boot disk by typing:
rawrite bareapm.ithen create the root disks:
rawrite color.gz.a (if you are using color screen)
On a dos format disk copy the following file :
Insert your boot disk in your Laptop and start computer. Follow the installtion procedure and wait till the system ask for the root disks. Insert it and wait for the prompt login: "Slakware login".
To start the Slakware installation you must log as root. Type then root at the prompt. Be aware that at that time of installation your keyboard is still qwerty.
Install your source computer according to Gille indication. From chapter 7 to 9.
Install PLIP on the target. To install PLIP module you need to launch program from your PLIP disk. Remember you did it no !!!
Access to your floppy disk by:
& mount /dev/fd0h1440 /floppy & cd /floppy & insmod parport 'it will install your parallel port & insmod parport_pc 'it will set it up & insmod plip 'it will install plip moduleIf during the PLIP installation you encounter an error. It means that your paralell port has not been correctly installed. you may type again the instruction above, it does work sometimes !!, or go to the parport directory and write appopriate setting.
& cd /proc/parport/0 & vi IRQ 'Verify that 7 is written in it if you are using 'that interruption'Look at chapter 8,"PLIP on the source side" to get the proper setting.
You should not bother too much as at 95% on the 5 laptop I have installed everyting went smoothly.
From that point I have choosed to use the creation of a NFS drive on the target computer. Then I will make an installation using the "From directory" option rather than from an nfs support.
Do not forget you are still in US keyboard. Of course you have set up your source accordingly to chapter 7, "Network parameters". You then did ping your source, but yet you cannot ping the target.
So the first step is to configure your PLIP connection: On the target type:
& ifconfig plip0 192.168.0.2 pointopoint 192.168.0.1 netmask 255.255.255.255 upTest your Plip configuration by pinging the target from the source
& ping targetthen create your nfs drive:
& cd / & mkdir nfsdrive mount -t nfs 192.168.0.2:/cdrom /nfstestYou have just configure a drive linked to your source directory /cdrom were you suppose to have slakware CDROM connected to, from your target directory call nfstest
Now everything is set up and you are ready to launch the Slakware installation program, by typing "setup".
note:if you do not have enough memory, below 8mb setup will not being launched then, you will have to make a swap space to allow the program to work. first Create you disk partition with your swap by typing & fdisk note your swap disk name eg /hda3 quit fdisk with 'w' Once its done type:
& mkswap -c /dev/hda3 & swapon /dev/ha3Your swap is now set up. You may then launch the "setup" program.
the setup programm shows various menu:
4b- Select your keyboard, for French take -Fr-latin1.map
4c- Select your swap partition if not already configured
4d- Select the target, default is '/'
4e- Select the source. Here is the tricky stuff choose Installing from a drive type the drive so : /nfsdrive/slakware '/slakware' because your drive must point to your slakware CDROM directory
4f- Select packages to install
4g- Wait, Wait, Wait and Wait........
I told you that Caldera work also with that install. In fact as Caldera launch automatically is Setup program, once you arrived at the menu were you suppose to choose your source disks type ALT F2 and go to another screen then log as root and make your nfs drive as described above in point 2 to 4. Then go back to the installtion screen with ALT F1, and type the famous nfsdrive as your source directory. Caldera will than install without problem.
If you are experiencing any trouble with that installation you may report it tome and I'll try to help as best as I can.
You can use this section if you already have a DOS partition on your target computer. I think it is a faster installation method.
Read the section 5.3.1 "Installing from a DOS partition" from install.txt. This section is also available on the Debian CD in the html file ch-install-methods.html.
I just going to help you to make the first point : "1. Get the following files from your nearest Debian" repository"
The transfer is easy with tomsrtbt.
Export the source cdrom drive via nfs.
Read the file tomsrtbt.FAQ
Create the floppy under DOS or Linux, you have the choice.
Linux installation: a) extract the .tar.gz archive b) Be root c) Be in the tomsrtbt-<version> directory d) Have a blank floppy with no bad sectors e) Do './install.s'
Boot the target with the floppy. Log in root.
$ insmod plip $ ifconfig plip1 192.168.0.1 pointopoint 192.168.0.2 \ netmask 255.255.255.255 up $ route add -host 192.168.0.2 dev plip1 $ mount -t nfs 192.168.0.2:/cdrom /cdrom $ mkdir /c $ mount -t msdos /dev/hda1 /c $ mkdir /c/debian $ cd /cdrom/dists/stable/main/disks-i386/current/ $ cp resc1440.bin drv1440.bin base2_1.tgz root.bin linux \ install.bat loadlin.exe /c/debian
The \
means the command line continues on the next line.
The cp
command takes some time. When finished, remove the
floppy and then :
$ reboot
Boot under DOS.
C:\> cd debian C:\DEBIAN> install
Here you go to install Debian from a DOS partition. You do not need plip nor floppy during the installation process. Everything deals with the hard drive. Read the Debian install documentation, it is a very good and clear one.
I use an old Linux RedHat 4.1 distribution. The location of the files can be different on other GNU/Linux distributions but the philosophy is the same (The Unix System V convention).
Create the file /etc/rc.d/init.d/plip
with this content:
#!/bin/sh ############################## # file /etc/rc.d/init.d/plip # ############################## # See how we were called. case "$1" in start) # Start daemons. /bin/echo "Starting plip interface: " /bin/echo "Doing /sbin/ifconfig plip0 source pointopoint target netmask 255.255.255.255 up" /sbin/ifconfig plip0 source pointopoint target netmask 255.255.255.255 up /bin/echo "Doing /bin/ping -q -c 4 target" /bin/ping -q -c 4 target /bin/echo "Starting plip interface: done" ;; stop) # Stop daemons. /bin/echo "Shutting down plip interface:" /bin/echo "Doing /sbin/ifconfig plip0 source pointopoint target netmask 255.255.255.255 down" /sbin/ifconfig plip0 source pointopoint target netmask 255.255.255.255 down /bin/echo "Doing /sbin/modprobe -r plip " /sbin/modprobe -r plip /bin/echo "Shutting down plip interface: done" ;; *) echo "Usage: $0 {start|stop}" exit 1 esac exit 0 # === End of File ===
Only the ifconfig lines are strictly necessary. Perhaps you will
need to add some modprobe
commands if you don't use
kerneld
nor the kmod
feature of new kernels 2.2.x
Create the symbolic links in the rc*.d
directories:
$ cd /etc/rc.d/rc0.d/ $ ln -s ../init.d/plip K97plip $ cd /etc/rc.d/rc1.d/ $ ln -s ../init.d/plip K92plip $ cd /etc/rc.d/rc3.d/ $ ln -s ../init.d/plip S11plip $ cd /etc/rc.d/rc5.d/ $ ln -s ../init.d/plip S11plip
You can choose other numbers. Be aware to place the K??plip files after the ones that shutdown services depending on plip. Be aware to place the S??plip files before the ones that start services depending on plip, nfs, nis, ftp, http etc.
Update the /etc/conf.modules
file:
# /etc/conf.modules ... alias parport_lowlevel parport_pc post-install parport_pc echo 7 > /proc/parport/0/irq ...
Choose the good irq number (7 is mine, not yours).
Test the plip shell:
$ /etc/rc.d/init.d/plip Usage: /etc/rc.d/init.d/plip {start|stop} $ /etc/rc.d/init.d/plip stop Shutting down plip interface: Doing /sbin/ifconfig plip0 source pointopoint target netmask 255.255.255.255 down Doing /sbin/modprobe -r plip Shutting down plip interface: done $ /etc/rc.d/init.d/plip start Starting plip interface: Doing /sbin/ifconfig plip0 source pointopoint target netmask 255.255.255.255 up Doing /bin/ping -q -c 4 target PING target (192.168.0.1): 56 data bytes --- target ping statistics --- 4 packets transmitted, 4 packets received, 0% packet loss round-trip min/avg/max = 4.4/8.3/14.0 ms Starting plip interface: done
Updating the start scripts is a good accasion to reboot a Unix system, to check the modifications. Do it:
$ init 6
Update the file /etc/init.d/network
:
#! /bin/sh ####################### # /etc/init.d/network # ####################### ifconfig lo 127.0.0.1 route add -net 127.0.0.0 ifconfig plip1 192.168.0.1 pointopoint 192.168.0.2 netmask 255.255.255.255 up route add -host 192.168.0.2 dev plip1
That's all because the parport features are directly in the kernel.
Updating the start scripts is a good occasion to reboot a Unix system, to check the modifications. Do it:
$ init 6
Several times during the source server configuration we mentioned that a kernel compilation on the source computer could be needed.
I list the things you need to change or set. If you have never compile a kernel, read the Kernel-HOWTO.
Loadable module support ---> [*] Enable loadable module support General setup ---> [*] Networking support <M> Parallel port support <M> PC-style hardware Networking options ---> [*] TCP/IP networking Network device support ---> [*] Network device support <*> Dummy net driver support <M> PLIP (parallel port) support < > or <M> PPP (point-to-point) support < > or <M> SLIP (serial line) support Character devices ---> <M> Parallel printer support Filesystems ---> [*] /proc filesystem support <*> or <M> ISO 9660 CDROM filesystem support Network File Systems ---> <*> or <M> NFS filesystem support
.config
file) with only the options I gave. Add the
missing ones if any.
Debian (done), Red Hat (done), Slackware (done), Caldera OpenLinux (done).
I thank all the people in this list of contributors or projects. If you think I forgot someone, do not hesitate to complain.
He said: "yesterday I had time enough to read your document. It's great and in the next issue of my HOWTO (probably 2. December) I will make a link to it."
He did.
The Linux Documentation Project accepted the PLIP-Install-HOWTO without any hesitation.
Simon had a problem with his pcmcia floppy drive. So he made me search a solution that is, in fact, simpler and faster.
Andrew suggested me to talk about parted http://www.gnu.org/software/parted
Florent wrote the section called "Installing Slackware/Caldera".
Graham corrected my bad english all over the document.
Tomas also corrected my bad english.