Installing Debian GNU/Linux on Libretto L2: Expert (aka DIY) mode

Shrinking the Original WinME partition

  1. Download 2.4.17 kernel and extract it under /usr/src/linux-2.4.17
  2. Get the kernel config file from http://memebeam.org/free-software/toshiba_misc/config_l1_boot-2.4.17 and save it as /usr/src/linux-2.4.17/.config
  3. Get the USB-boot-floppy patch from http://www.swiss.ai.mit.edu/projects/omnibook/patches/usb-root-floppy-2.4.15.diff and save it as /usr/src/linux-2.4.17/usb-root-floppy-2.4.15.diff
  4. Patch the kernel:
    1. cd /usr/src/linux-2.4.17
    2. patch -p1 < usb-root-floppy-2.4.15.diff
  5. Compile the kernel:
    - Get Debian's Rescue and Root floppy images from:
      http://ftp.us.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/rescue.bin
      http://ftp.us.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/root.bin
    - Using loopback device to mount rescue.bin:
      mkdir rescue; mount -o loop rescue.bin rescue 
    - cd rescue; cp /usr/src/linux-2.4.17/arch/i386/boot/bzImage linux.bin
    - ./rdev.sh
    - cd ..; umount rescue
    - Write rescue.bin and root.bin to floppies
    - Boot Libretto with rescue.bin:
      at boot prompt, type:
      linux.bin usb_root_floppy=/dev/sda
    

Appendix A

Create a Boot Floppy with parted

1. Get the boot floppy from parted FTP at
   ftp.gnu.org:/gnu/parted/bootdisk/partboot.img
2. run rdev -r partboot.img and convert the number to binary, and then
   convert the rightmost 11 bits back to decimal (SKIP_OFFSET)
3. dd if=partboot.img of=partroot.img bs=1k skip=SKIP_OFFSET
4. Compile a kernel with the usb root floppy patch, and rename it to
   mypartboot.img
5. Attach partroot.img to the end of mypartboot.img by
   dd if=partroot.img of=mypartboot.img bs=1k seek=SEEK_OFFSET
   where SEEK_OFFSET is calculated by
     ceiling(no. of bytes of mypartboot.img/1024) + 1
6. Set the boot device: rdev mypartboot.img /dev/sda
7. Set root to be loaded read/write: rdev -R mypartboot.img 0
8. Set the ramdisk word: rdev -r mypartboot.img WORD
   where WORD is SEEK_OFFSET+(2^14)+(2^15)

-- tmp Ignore "ioctl fdflush failed (not fatal): Invalid argument