Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220

From ThinkWiki
Revision as of 17:56, 13 July 2011 by Jdthood (Talk | contribs) (Configuration)
Jump to: navigation, search

I installed Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220, model 42902GW.

Netboot

As a source of network installation files I made use of another GNU/Linux computer on my home LAN which is connected to the Internet through a familiar ADSL-modem/gateway/router/caching nameserver/DHCP server (call it "the gateway") at address 172.19.3.1. The gateway's DHCP server issues leases in the range 172.19.3.2 to 172.19.3.100.

First I set up the "source" machine, in my case one which already also had Ubuntu 11.04 installed. It has address 172.19.3.7 (assigned to it by the gateway's DHCP server). For the X220 to boot from it the machine needs to run a DHCP server and a TFTP server. The DHCP server serves only this special purpose since, as I mentioned, the gateway is the network's main DHCP server. The source's DHCP server must be so configured that it doesn't conflict with the existing DHCP server.

Install the isc-dhcp-server package and edit /etc/dhcp/dhcpd.conf using the following as a model. I am not sure that every line is needed, but this worked for me.

ddns-update-style none;
option domain-name-servers 172.19.3.1;  # This is the address of my gateway
option routers 172.19.3.1;              # This is the address of my gateway
option subnet-mask 255.255.0.0;         # This is the netmask of my home network
default-lease-time 600;
max-lease-time 7200;
allow booting;
allow bootp;

subnet 172.19.3.0 netmask 255.255.255.0 {
  range 172.19.3.220 172.19.3.229;      # This is a range separate from the one used by the gateway and includes the address below
}

group {
  next-server 172.19.3.7;               # This is the address of the "source"
  host trawsfynydd {                    # 'trawsfynydd' is the name I chose for my X220
    hardware ethernet f0:de:f1:6b:22:bf; # This is the Ethernet address of the X220
    fixed-address 172.19.3.220;         # This is an address in the range as defined above
    filename "/pxelinux.0";
  }
}

Now install the tftpd-hpa package, download the network installation tarball and untar it into the location whence tftpd serves files.

$ cd /tmp
$ wget http://archive.ubuntu.com/ubuntu/dists/natty/main/installer-amd64/current/images/netboot/netboot.tar.gz
$ cd /var/lib/tftpboot
$ sudo tar zxf /tmp/netboot.tar.gz

Second set up the X220 for PXE (Pre-boot eXecution Environment).

  • Switch on the X220 and press F1. ThinkPad Setup starts.
  • Set Config | Network | Ethernet LAN Option ROM to "Enabled".
  • Select Startup | Boot; select "PCI LAN IBA GE Slot..." and use the [+] key to move it to the top of the boot priority order
  • Press F10 to save and exit.

Voilà, the X220 boots the Ubuntu installer.

Install

I won't describe the Ubuntu installer. I'll just mention two little problems I had.

First, when it came time to resize the existing (ntfs) partition the partitioner asked what size I would like for "this partition". Did it mean the to-be-resized ntfs partition or the new ext4 partition? Turns out it meant the to-be-resized ntfs partition, so the suggested "max" selection was the opposite of what I wanted.

Second, when it came time to select "tasks" the installation reported failure. When I de-selected all "tasks" the installatino succeeded. Then I was able to reboot into Ubuntu.

Third, after reboot the screen came up black. I had to press CTRL-ALT-F1 to get the system console so I could log in.

Configuration

  • Having installed bare Ubuntu I had to run tasksel and select at least "Ubuntu Desktop".
  • In order to allow NetworkManager to manage eth0 I had to comment out the "eth0" stanza in /etc/network/interfaces
  • I used System Settings | Ubuntu Software Center to install ccsm ("Advanced Desktop Effects Settings") so I could enable Wobbly Windows and so I can initiate window resize with Super+Button3 (i.e., Windows-key+Right-click) which is easier than grabbing a window border or trying to press Alt and the scroll wheel while dragging.

Compared with this user's experience

  • I didn't have to do anything special to have the thinkpad-acpi module loaded or use special keys
  • X doesn't lock up (knock wood)