Installing Ubuntu 5.04 on a ThinkPad T43 (1875)
I installed Ubuntu 5.04 "Hoary Hedgehog" on a IBM T43 1875-E5U.
Before starting the installation, make a copy of the IBM system restore CD's. You can do this in Windows by going to the Access IBM Start Menu option, and clicking on Create Rescue Cd's. This is extremely important!!! In case you erase your IBM system rescue partition, or remove the BootLoader, these CD's are the only way you can restore your machine to Factory settings. You'll need six blank CD's, or one blank CD and one blank DVD, if you have a DVD-Writer.
Once this is done, install as usual. The only gotcha is the installation of the Boot-loader. There is a method by which you can save your current MBR, so that you don't lose the Access IBM button's functionaltiy, but I don't know it. Please update this page if you know (Note: See below)
I installed grub in the MBR of my hard disk. After rebooting, the Access IBM button was not working anymore. My rescue partition would not boot. After the text based installation ended, Ubuntu said that it starting X. Then I got a blank screen.
My machine has the Intel Graphics Media Accelerator 900 installed. To get X working, I had to edit the x.org file. I did this in the following manner:
- Press CtrlAltF2 to get a Virtual Terminal
- Login as the user you made while installing
{{{2}}} sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
(keep a backup){{{2}}} sudo vi /etc/X11/xorg.conf
- scroll down to this section
Section "Device" Identifier "Intel Corporation Intel Default Card " Driver "i810" BusID "PCI:0:2:0" EndSection
- Change Driver "i810" to Driver "vesa"
- save and exit
After this, I used CtrlAltF7 to come back to the X terminal, then CtrlALtBackspace to restart it. X started successfully.
The next thing to do was use the excellent Unofficial Ubuntu Guide to set up various things.
After hunting around on the net, I came across two excellent guides. These are Edward Mendelson's guide to Ubuntu on a T42 and aaltonen.us Ubuntu Guide
I have reproduced sections from these two guides. The authors have been notified of this.
Contents
- 1 Install a kernel for your Pentium 4 CPU
- 2 Enable sleep and hibernation
- 3 Install on-screen confirmation of the ThinkPad buttons
- 4 Enable TrackPoint middle-button scrolling
- 5 Don't slow down boot-up by synchronizing with network time
- 6 Don't slow down boot-up when no Ethernet cable is attached
- 7 Getting Access IBM to work 1
- 8 Conclusion
Install a kernel for your Pentium 4 CPU
Use the Gnome menu System | Administration | Synaptic Package Manager, and search and install the two packages linux-686 and (while you are here) build-essential. The first of these installs the version of the kernel that specifically supports Pentium 4; the second provides essential files for “building†other programs if necessary. Reboot. The 686 kernel should be at the top of the list of boot options. Boot into it.
Enable sleep and hibernation
Open a terminal and enter these commands:
sudo cp /etc/default/acpi-support /etc/default/acpi-support-backup sudo gedit /etc/default/acpi-support
Edit the file by removing the # character at the beginning of the line that will look like this when the character is removed:
ACPI_SLEEP=true
Save the file. Next, in the terminal, enter:
sudo cp /boot/grub/menu.lst /boot/grub/menu.lst-backup2 sudo gedit /boot/grub/menu.lst
and go to the line starting #kopt. Add the following at the end of the existing line (replace /dev/hda5 with your swap partition, which you can identify by entering the command fdisk -l in the terminal
resume=/dev/hda5 vga=0x318
The vga=0x318 string forces the text-mode display during boot-up and shutdown to display in 50-line mode instead of the ugly 25-line mode. This string is perfect for a 1024x768 screen, but you might want something different. You might want to consult this full list of VGA modes for Linux. The #kopt line should look something like this (if you do not find the strings pci=noacpi and acpi_sleep=s3_bios then add them also)
# kopt=root=/dev/hda1 ro pci=noacpi acpi_sleep=s3_bios resume=/dev/hda5 vga=0x318
If you intend to run the command sudo update-grub after you save the file, then save the file now. If you do not intend to run that command, then add these strings by hand to the kernel line that launches Ubuntu and reboot.
To suspend to RAM (sleep), press the ThinkPad’s sleep button (Fn+F4); to wake up the system, press the Fn key, wait a few seconds, and press Ctrl-Alt-Backspace to restart the Xwindow graphic system.
To suspend to disk (hibernate), press the ThinkPad's hibernate button (Fn+F12), or use the option to hibernate the computer on the logout menu. Press the power button to wake the system; the desktop should reappear automatically.
Install on-screen confirmation of the ThinkPad buttons
The program tpb (ThinkPad Buttons) makes all the ThinkPad-specific buttons and Fn-key combinations work as expected (some buttons, such as the ones that control screen brightness, are hardware-controlled and work under any operating system). As explained by Michael R Head in his post in this thread , the Ubuntu Hoary version of tpb does not support on-screen display (OSD) of the results of your actions. To correct this, download the latest Debian version of the program from the Debian.org site (scroll down to the box under the heading "Download tpb").
Open a terminal, use the cd command to navigate to the directory in which you downloaded the package and enter:
sudo dpkg -i tpb*
On the Gnome menu, use System | Preferences | Sessions | Startup Programs and use the Add button to add the following command:
tpb -d
If you want the Access IBM button to start your screensaver, open a terminal and enter these commands:
sudo cp /etc/tpbrc /etc/tpbrc-backup sudo gedit /etc/tpbrc
Edit the file by adding this line below the line that begins #THINKPAD /usr/bin, etc.:
THINKPAD /usr/bin/xscreensaver-command -activate
Save the file. In the terminal, run man tpb to learn about other ways to use the Access IBM button.
I believe some of the following steps may have performed automagically during installation (I simply don't remember whether they were or not), but you should perform all the steps anyway to make certain that everything is set up correctly.
First, in a terminal, enter the commands (replacing [username] with your username):
echo nvram | sudo tee -a /etc/modules sudo addgroup nvram sudo adduser [username] nvram
I don't pretend to understand exactly what this does, but the first line adds the string "nvram" at the end of the file /etc/modules; the next two lines create a group called nvram and add yourself to the group. Next, enter these commands in the terminal:
cd /etc/udev/permissions.d sudo cp udev.permissions udev.permissions-backup sudo gedit udev.permissions
Edit the file to make sure these lines are present (add them if necessary, perhaps to the top of the second set of lines under the heading # character devices:
misc/nvram:root:nvram:660 nvram:root:nvram:660
Save the file and reboot.
Note: the tpb program does not provide visual confirmation for the Fn+F5 button that toggles the wireless radio, but the button does toggle the radio on and off, exactly as it does in Windows. The indicator light works as well.
Enable TrackPoint middle-button scrolling
To use the blue middle TrackPoint button as a scroll wheel, do the following. In a terminal, enter these commands:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf-backup sudo gedit /etc/X11/xorg.conf
In the editor, find the section headed Section “InputDevice†/ Identifier “Configured Mouse†and the following lines above the “EndSection†line:
Option "EmulateWheel" "true" Option "EmulateWheelButton" "2"
Save the file. Logout, restart X with Ctrl-Alt-Backspace, and log in again.
Don't slow down boot-up by synchronizing with network time
Ubuntu pauses during boot-up while attempting to synchronize the system clock with a remote time server, but you probably aren't connected to the internet when you boot with a ThinkPad, so this attempt accomplishes nothing. . Eliminate this delay by opening a terminal and entering:
sudo chmod -x /etc/init.d/ntpdate
Don't slow down boot-up when no Ethernet cable is attached
In Synaptic find and install the ifplugd package. After installing it, open a terminal and run this command
sudo gedit /etc/default/ifplugd
Edit the file by modify the lines INTERFACES="" and HOTPLUG_INTERFACES="" if no interfaces are listed or if the wrong interfaces are listed. You probably only want to test the hotplug status of the wired Ethernet connection, so the lines should read:
INTERFACES="eth0" HOTPLUG_INTERFACES="eth0"
I don't pretend to understand these options fully, so please post corrections if I'm wrong. I've also modified the ARGS= line to add the string -b which silences the otherwise excessive beeping when you plug or unplug the cable. Save the file and reboot.
Getting Access IBM to work 1
Partitioning
The great thing about the Ubuntu installer is that it is able to resize NTFS partitions. Just choose the manual partitioning option, select the XP partition and change it's size. The partition should not be fragmented as this may cause problems during resizing. Doesn't hurt to run the XP drive defragmentation tool before shrinking the partition this way.
The 80GB disk of my T42 had two partitions on it: -Windows XP taking up around 75 GB -5GB IBM Rescue system you can boot into by pressing the blue Access IBM key during startup. Interesting thing, seems to contain a complete OS including Opera browser, somehow looks like Win 3.11 or 95.
As the disk is large enough, I decided to keep both systems. I changed the size of the windows partition to around 20 GB and created my new partitions in the now free space between xp and ibm rescue partition:
Disk /dev/hda: 80.0 GB, 80026361856 bytes 16 heads, 63 sectors/track, 155061 cylinders Units = cylinders of 1008 * 512 = 516096 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 38760 19535008+ 7 HPFS/NTFS /dev/hda2 145411 155055 4861080 12 Compaq diagnostics /dev/hda3 38761 43127 2200905 82 Linux swap / Solaris /dev/hda4 43127 145398 51544552+ 5 Extended /dev/hda5 43127 81887 19535008+ 83 Linux /dev/hda6 81887 145398 32009481 83 Linux
hda5 will become the root fs, hda6 my /home partition.
Grub installation
I told the Ubuntu installer to install Grub into the MBR. The following entries in /boot/grub/menu.lst allow to boot Windows and the IBM rescue system:
# IBM rescue partition on /dev/hda2 title IBM Rescue root (hd0,1) # savedefault makeactive chainloader +1 # Win XP on /dev/hda1 title Microsoft Windows XP Professional root (hd0,0) savedefault makeactive chainloader +1
I don't remember if the installer added those automatically, or if I did so, anymore. Just make sure they are there. Check if everything works
You should now be able to boot into all three systems without problems.
FOOTNOTES [Δ] |
- The above excerpt has been taken from jkraemer.net which describes installing Ubuntu on an IBM T42. The same steps should be applicable to the T43 as well.
Conclusion
In the end, Ubuntu turned out to be a beautiful distro to install. Most of it "just worked", and with a little tweaking, I have reached a level of functionality that eluded me with Suse.
Here's a quick summary.
Worked out of the Box: Sound, Networking (wired and wireless), Power Management, Hibernate, ThinkPad Buttons (without OSD)
Worked after little tweaking: Sleep, Middle button scrolling, ThinkPad Buttons OSD.
Did not Work: IBM Rescue and Recovery Partition. Don't forget to make the Rescue CD's