old-www/LDP/LG/issue21/notebook.html

282 lines
9.4 KiB
HTML

<!--startcut ==========================================================-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<title>Installing Linux on an IBM ThinkPad 365XD Notebook Issue 21</title>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#0020F0"
ALINK="#FF0000">
<!--endcut ============================================================-->
<H4>
&quot;Linux Gazette...<I>making Linux just a little more fun!</I>&quot;
</H4>
<P> <HR> <P>
<!--===================================================================-->
<center>
<H2>Installing Linux on an IBM ThinkPad 365XD Notebook</H2>
<H4>By Sam Trenholme, <a href="mailto:set@reality.samiam.org">set@reality.samiam.org</a></H4>
</center>
<P><HR><P>
<p>My latest roadstop in the quest for the perfect affordable portable
computer stops with the IBM ThinkPad 365XD notebook. Hawked from Egghead
for only $1000, and with successful reports of sticking X on this thing
form the 'net, I proceeded to install Linux on this beast. The install
was one of the more difficult Linux installs I have had, with a number of
problems:
<h2>First problem:</h2>
<p>*Booting directly in to the RedHat install from the CD-ROM, the install
could not see the CD-ROM.
<p>The CD-ROM in a ThinkPad 365xd is a standard IDE CD-ROM. For unknown
reasons this CD-ROM was invisible when I booted into the install directly
from the CD-ROM. Making a RedHat install boot disk and booting from that
resolved the concern. The CD-ROM was visible, and I was able to install
normally.
<h2>Second problem 2:</h2>
<p>* RedHat crashed in the middle of the install.
<p>RedHat seems to do that sometimes, for very mysterious reasons. On the
first install, RedHat crashed. I had to go back to square one and
completely reinstalled. The second install of RedHat 4.2 went without
incident, resulting in a functional RedHat system.
<h2>Third problem:</h2>
<p>* After installing LILO, the ThinkPad refuses to boot from the
hard disk.
<p>After mutch futzing, I discovered that the BIOS refused to boot from the
hard disk if it saw more than one primary partition. I configured fdisk
thusly:
<p>I made one primary partition the Linux partition, then made the swap
partition the extended partition. I did this as follows:
<ul>
<li>I deleted all pre-existing partitions
<li>I added the main partition, making sure enough space was set aside for
swap. I used 'n' to create the new partition, and 'p' to indicate that
it was a primary partition.
<li>I then added an extended partition, having the extended partition take
up the rest of the hard disk--my swap space.
<li>I then added a logical partition, which was the swap space.
<li>I marked the primary partition as a Linux Native partition, and the
extended partition as an extended partition.
<li>I made the primary Linux partition bootable with the 'a' option.
<li>Finally, I wrote the partition table to disk.
</ul>
<p>My fdisk session went like this:
<pre>Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-789): 1
Last cylinder or +size or +sizeM or +sizeK ([1]-789): 741
Command (m for help): n
Command action
e extended
p primary partition (1-4)
e
Partition number (1-4): 2
First cylinder (742-789): 742
Last cylinder or +size or +sizeM or +sizeK ([742]-789): 789
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (742-789): 742
Last cylinder or +size or +sizeM or +sizeK ([742]-789): 789
Command (m for help): t
Partition number (1-5): 1
Hex code (type L to list codes): 83
Command (m for help): t
Partition number (1-5): 5
Hex code (type L to list codes): 82
Changed system type of partition 5 to 82 (Linux swap)
Command (m for help): a
Partition number (1-5): 1
Command (m for help): p
Disk /dev/hda: 32 heads, 63 sectors, 789 cylinders
Units = cylinders of 2016 * 512 bytes
Device Boot Begin Start End Blocks Id System
/dev/hda1 * 1 1 741 746896+ 83 Linux native
/dev/hda2 742 742 789 48384 5 Extended
/dev/hda5 742 742 789 48352+ 82 Linux swap
Command (m for help): w</pre>
<p>[It wrote the information to the hard disk, then exited.]
<p>When I installed LILO, I placed LILO on the boot sector of the first
(bootable) partition (/dev/hda1) instead of the master boot record
(/dev/hda).
<h2>Fourth Problem:</h2>
<p>* After installing X, as per the XF86 configurations on the Linux
ThinkPad survey, I was unable to start X. X would just cause the screen
to become blank.
<p>X has to be "Kicked in", so to speak, by hand. After X starts, hit Fn+F7
(the Fn and the F7 keys at te same time) to get the X display to function.
<h2>Fifth Problem:</h2>
<p>* After starting X, one can not exit X and return to a normal text
display.
<p>One can not leave X after entering it on the ThinkPad. The best
workaround this problem is to edit /etc/inittab to make the default
runlevel 5. This enables a mode where you can log in and log out without
leaving X, using a program known as xdm.
<p>In order to make the default runlevel 5, look for a line like this in
/etc/inittab:
<pre>id:3:initdefault:</pre>
<p>Change the line to look like this:
<pre>id:5:initdefault:</pre>
<p>Note the number 5 instead of 3.
<p>You may also wish to disable most of the virtual terminals in runlevel 5,
since you won't be using them [1]. There are a series of lines that look
like this in /etc/inittab:
<pre>
1:12345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6
</pre>
<p>Change the lines to look like this:
<pre>1:12345:respawn:/sbin/mingetty tty1
2:234:respawn:/sbin/mingetty tty2
3:234:respawn:/sbin/mingetty tty3
4:234:respawn:/sbin/mingetty tty4
5:234:respawn:/sbin/mingetty tty5
6:234:respawn:/sbin/mingetty tty6
</pre>
<p>Note that most of the above lines no longer have a '5' in them. For
various reasons, it's a good idea to have an emergency virtual terminal.
Linux does (or, at least, used to do) funny things without at least one
virtual terminal.
<h2>Sixth problem:</h2>
<p>* I was unable to have the kernel see a parallel port zip drive
<p>The I/O base of the parallel port is at 0x3bc instead of 0x378. To have
Linux see a parallel zip drive on the ThinkPad 365xd:
<pre>insmod ppa.o ppa_base=0x3bc</pre>
<p>instead of simply:
<pre>insmod ppa.o</pre>
<p>Note that the I/O base of the parallel port was determined with the MSD
program on a MS-DOS boot disk.
<h2>Seventh problem:</h2>
<p>* After entering 'suspend mode' on the ThinkPad (Fn+F4), the system would
crash when I tired to exit from suspend mode.
<p>The kernel needs to be recompiled with APM support on the ThinkPad 365xd.
To do this, make sure the kernel source is installed on your system.
<p>You can install the kernel source from the RedHat CD, as in the following
example Linux session:
<pre>
[root@localhost /]# mount /mnt/cdrom
[root@localhost /]# cd /mnt/cdrom/RedHat/RPMS/
[root@localhost RPMS]# rpm --install kernel-source-2.0.30-2.i386.rpm
</pre>
<p>If you do not have a RedHat CD, do the procedure most appropriate for your
RedHat system to install the above RPM package.
<p>I then went to the directory /usr/src/linux, ran 'make menuconfig' and
went to 'Character Devices --->', then enabled 'Advanced Power
Management BIOS support' without enabling any of the other features
('Ignore USER SUSPEND', etc.).
<p>I then made a kernel image with 'make zImage' (and waited a while, hitting
the space bar every 5-10 minutes so the machine would not crash), and
copied the kernel image (located in the directory
'/usr/src/linux-2.0.30/arch/i386/boot' as the file 'zImage') over to
/boot.
<p>I then edited my /etc/lilo.conf so that the boot line which looked like
this:
<tt>image=/boot/vmlinuz</tt>
looked like this:
<tt>image=/boot/zImage</tt>
and re-ran Lilo thusly:
<tt>/sbin/lilo</tt>
<p>** Be very careful with changing Lilo. Doing things incrrectly can make
it difficult to re-enter Linux**
<p>Once I did all this, I had a functional Linux system on my ThinkPad 365xd,
which I am currently using to type this in (on the streets of Santa Cruz,
no less)
<p>Speaking of being on the streets, I find the DTSN display almost
unreadable in direct sunlight, and only somewhat readable in the shade on
a sunny day (fortunatly, the Pacific coast fog is strong tonight). I hear
that TFT displays are a lot better in this regard.
[1] The virtual terminals is something you can use to multitask in
text mode with Linux. To change virtual terminals, simply hit alt
and a function key between F1 and F6.
<!--===================================================================-->
<P> <hr> <P>
<center><H5>Copyright &copy; 1997, Sam Trenholme<BR>
Published in Issue 21 of the Linux Gazette, September 1997</H5></center>
<!--===================================================================-->
<P> <hr> <P>
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
ALT="[ TABLE OF CONTENTS ]"></A>
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
ALT="[ FRONT PAGE ]"></A>
<A HREF="./impress.html"><IMG SRC="../gx/back2.gif"
ALT=" Back "></A>
<A HREF="./ppp.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
<P> <hr> <P>
<!--startcut ==========================================================-->
</BODY>
</HTML>
<!--endcut ============================================================-->