Rescue and Recovery

From ThinkWiki
Revision as of 22:10, 28 June 2006 by Pebolle (Talk | contribs) (s/&/and/)
Jump to: navigation, search

Rescue and Recovery

Rescue and Recovery version 3.0 consists of a bootable partition containing various system recovery tools, including full recovery of the preinstalled Windows XP partition. It can be activated by pressing the ThinkPad, Access IBM or ThinkVantage Button during system boot. It contains a FAT filesystem (labeled "IBM_SERVICE"), and has partition type 0x12 ("Compaq diagnostics" in fdisk).

As opposed to a Hidden Protected Area Recovery partitions are ordinary partitions, accessible through the partition table. As they are ordinary partitions they are accessible by ordinary partitioning tools. They should be dealt carefully with.

Proper MBR

ATTENTION!
Only tinker with the MBR and the Rescue and Recovery partition if you know what you're doing. Mistakes can leave the system unbootable and can make it very difficult to retrieve the data on the harddisk.

Consideration 6 of the Readme states:

"The Master Boot Record (MBR) must be configured properly for the Rescue and Recovery application to function properly. When possible, the Rescue and Recovery application attempts to ensure the proper configuration of the MBR. This can only occur if the Rescue and Recovery application is installed after other applications that requires the MBR."

Apparently, the MBR is not "configured properly" if LILO or GRUB have written it. The following is the case:

  • the default bootloader seems to ignore the active bit and always boots the first partition instead
  • the default bootloader contains code to catch a press of the appropriate button during bootup and launch the Rescue and Recovery application in that case
  • before launching the Rescue and Recovery application at system boot, the default bootloader changes the partition type of the Rescue and Recovery partiton to 0x0b, otherwise it changes it to 0x12 (to hide it from Windows)
  • the Rescue and Recovery application assumes that the first partition contains Windows
  • the Rescue and Recovery partition needs to be of type 0x0b (FAT32) otherwise the default bootloader will not launch the Rescue and Recovery application

Since neither LILO nor GRUB catch the press of the button (an undocumented mechanism anyway) it is not possible to launch the Rescue and Recovery application by pressing the appropriate button during system boot, once LILO or GRUB have altered the MBR for their boot procedure.

IBM provides a program to manage the Rescue and Recovery bootloader. It is located in C:\Program Files\IBM ThinkVantage\Common\BMGR. It can select the partition to boot, and also allows for rewriting the MBR if it was written by another bootloader.

MBR written by GRUB

If the MBR was written by GRUB you can still use GRUB to launch the Rescue and Recovery application. However if you leave the type of the Rescue and Recovery partition to 0x12 (Compaq diagnostics), this will result in an error message "c000021a, Fatal System Error" if you try to launch it. To avoid that and to make sure the recovery partition always is of the right type, add a line to change the partition type to 0x0b to the Rescue and Recovery partition's entry in your /boot/grub/menu.lst. Assuming your Rescue and Recovery partition is the second partition, it could look like this:

 title           IBM Rescue and Recovery
 root            (hd0,1)
 parttype        (hd0,1) 0x0b
 unhide          (hd0,1)
 chainloader     +1

Also add an unhide line here because we are going to hide the Rescue and Recovery partition on every boot of Windows, so we need to unhide it, when the recovery partition is booted. This is because if we don't hide the partition when booting Windows, it would be visible and accessable there and that's not what we want. So, assuming that Windows is on the first partition, the Windows entry could now look like this:

 title           Windows
 root            (hd0,0)
 hide            (hd0,1)
 chainloader     +1

GRUB in a partitions boot sector

A way to have your Access IBM button still functional on bootup, is to create a separate /boot partition, install GRUB to that partition and make it active. This will leave the MBR untouched.

NOTE!
If the above finding is true that the MBR ignores the active bit, that partition has to be the first one. In most recent Linux distributions it is not easy to create /boot as first partition and shrink the Windows partition. In that case the Windows bootloader can be used to boot Windows and Linux, also preserving the Rescue and Recovery functionality. See below.
  • In the BIOS, set the IBM Predesktop Area to 'Secure'.
  • Boot your Linux distribution's installation CD.
  • Follow the instructions and go through the regular installation process.
  • Create a primary partition for /boot (the other stuff can go into the extended partitions) and when the time comes to install GRUB, make sure you install it into the boot sector of the boot partition.
  • Set this boot partition as active.

Using NTLDR to boot Linux

It is possible to configure the Windows bootloader to also boot Linux (installed on separate partition). This allows to preserve the Rescue and Recovery functionality at system boot (as MBR is not modified), Windows XP (booted via its native bootloader) and Linux (booted from its own partition by Windows XP bootloader). A quick and dirty howto, regarding applying this procedure to Ubuntu Dapper Drake installation can be found here.

Older versions of Rescue and Recovery

Some Thinkpads (e.g., T23 and T30) do not come with a Recovery CD, but also do not support the Hidden Protected Area. These ThinkPads have an older version of Rescue and Recovery preloaded on the hard disk to implement the factory recovery function. Most of the comments above also apply to the older versions, with the following differences:

  • The recovery partition type is 0x1c, hidden FAT32, LBA-mapped (or 0xc when unhidden).
  • The boot manager program is in C:\IBMTOOLS\RECOVERY and only runs in a 16-bit DOS environment
  • The IBM Predesktop area runs atop of Windows 98 (command-line) instead of WinPE

External Sources

Models featuring this technology