Installing Debian Etch on a ThinkPad Z60m

From ThinkWiki
Revision as of 12:37, 20 March 2007 by Samoht (Talk | contribs)

Jump to: navigation, search
This article is not finished yet!

Active Protection System

Preparing the kernel

To get the headdisk-parking working you have to build your own kernel with the hdaps_protect-patch applied:

Install the prerequisites that we need to compile the new kernel:

# apt-get install kernel-package ncurses-dev fakeroot wget bzip2

Get the recent debian-etch-kernel (2.6.18):

# apt-get install linux-tree-2.6.18

Go to the sources and unpack them:

# cd /usr/src # tar jxvf linux-source-2.6.18.tar.bz2

As etchs kernel is 2.6.18-4 its propably a good idea to get the hdaps_protect patch for 2.6.18-3:

# wget

Apply the patch:

# cd linux-source-2.6.18/ # patch -p1 < ../hdaps_protect-

Copy the default-config to the sourcetree:

# cp /boot/config-2.6.18-4-486 ./.config

Build the kernel & packages:

# make-kpkg clean # {{{1}}}

Install the new kernel. Grub-menu should be updated automatically.

# dpkg -i linux-image-2.6.18_thinkpad.1.0_i386.deb

Reboot and select the new kernel. Verify with 'uname -a'. If all things work you can set the new kernel default in /boot/grub/menu.lst with default $entry-number (0..1..2..)

Preparing userspace

Installing the daemon:

# apt-get install hdapsd

To set your harddrive, edit /etc/default/hdapsd:

# start hdapsd at boottime?
# the name of the disk device that hdapsd should monitor.
# usually this is 'hda' the primary master or 'sda'
# on SATA ThinkPads.
# other options to pass to hdapsd.
# the -d and -b options are always passed.

Restart hdapsd:

# /etc/init.d/hdapsd restart

You should get something like that in /var/log/syslog when throwing your thinkpad off the table: (No, seriously, shaking it carefully should be sufficient :-) )

Mar 20 12:25:37 localhost kernel: ata_scsi_issue_protect_fn(): unload support reported by drive..
Mar 20 12:25:37 localhost kernel: scsi_protect_queue(): head parked..
Mar 20 12:25:38 localhost kernel: scsi_unprotect_queue(): No pending I/O, re-enabling power management..
Mar 20 12:25:38 localhost hdapsd[12522]: Tue Mar 20 12:25:38 2007: un-parking