Thinkpads under linux, more ideas
After following this thread for a while, I've decided to share my experience
in that matter.
I have been fighting with the hibernation partition about a year ago, with
only partial success. My goal was to create a solution for Linux and NT.
At this time my T20-264781U didn't accept anything that lphdisk (hacked to
use any primary partition) created, so I came up with the idea of creating a
hidden boot partition with save2dsk.bin file. The idea was to isolate boot
manager and suspend2disk part of my system, maintain consitent drive naming
in Windows and not to waste too much FAT16 diks space with huge block size.
Currently I use Win 2K boot manager to boot: DOS(hda2), 2K(hda3), NT(hda5),
woody(hda7) and sid(hda6).
Creating this setup was a bit tricky though. All partitions have been created
under Linux. To install and set up Win I switched types on partitions hda1
and hda2, so the installers saw hda1 as FAT16 C: drive. Save2dsk.bin has been
created with phdiskwin (from T20 distribution CD) under NT.
After both Win have been installed, I reassigned current partition types to
hda2 and hda1, dumped* Linux partition boot sectors into files and plugged
them into boot.ini.
Here is my setup:
Device Boot Start End Blocks Id System
/dev/hda1 * 1 37 279688+ 84 OS/2 hidden C: drive
/dev/hda2 38 105 514080 6 FAT16
/dev/hda3 106 529 3205440 7 HPFS/NTFS
/dev/hda4 530 1559 7786800 5 Extended
/dev/hda5 530 929 3023968+ 7 HPFS/NTFS
/dev/hda6 930 1149 1663168+ 83 Linux
/dev/hda7 1150 1549 3023968+ 83 Linux
/dev/hda8 1550 1559 75568+ 82 Linux swap
# mount /dev/hda1 /mnt/tmp -t vfat
# ls -l /mnt/tmp
-r-xr-xr-x 1 root root 327 Nov 21 13:53 boot.ini
-rwxr-xr-x 1 root root 512 Nov 21 13:49 boothda1.win
-rwxr-xr-x 1 root root 512 Nov 21 10:52 boothda2.dos
-rwxr-xr-x 1 root root 512 Nov 21 18:01 boothda6.242
-rwxr-xr-x 1 root root 512 Nov 21 13:47 boothda7.229
-rwxr-xr-x 1 root root 34468 Dec 7 1999 ntdetect.com
-rwxr-xr-x 1 root root 214416 Dec 7 1999 ntldr
-r-xr-xr-x 1 root root 278836224 Nov 21 13:28 save2dsk.bin
Currently suspend to disk works from Linux and NT, when there is no pcmcia
card installed ( or after 'cardctl eject' ). I need to do ifdown, ifup to
make my miniPCI Intel EEPro100 see the world again after resume. I still
didn't quite figure out how to handle sound properly - the issue is that the
sound module cs46xx needs to be reloaded upon resume, but it's normally in
use by artsd, realplayer, kmix or something else. So far I didn't come up
with a script flexible enough to handle that automatically.
hope it might help