I am trying to get a few more useful years from a ThinkPad T-43 (x86 processor, model 1871-48U, BIOS 1.29, which, according to this appears to be the latest.) by installing Debian Buster i386. I want to put it on an SSD installed in the Ultra Bay, where the CD/DVD drive normally lives. I do not want or need dual-boot. I can install Buster, but can't get it to boot.
A few possibly relevant facts:
- The main drive bay of the T-43 is equipped for a PATA device.
- Windows 7 will boot from SSD in the Ultra Bay, with or without a drive in the main bay.
- Patience is the key to installing to a drive in the Ultra Bay when there is no drive present in the main bay. You just have to wait through the timeouts.
For reasons I don't understand, it seems impossible to install anything on a drive in the Ultra Bay without a drive present in the main (PATA) bay.I conjecture that has something to do with the internal PATA / SATA bridge making it "look like" there's a disk present, but that's just a guess.
- I can install Debian Buster (i386) on a magnetic disk PATA drive in the main drive bay. It boots as expected, with no error messages and no grub prompt.
So, with a copy of Buster installed on the main PATA drive, I did another install from USB with the target being the SSD in the Ultra Bay. I made the choice of "everything in one partition," so there's only a root partition and a swap partition. I manually selected the SSD at the point in the process where grub is installed in the MBR.
That install would not boot. I got a blank screen with flashing cursor and nothing else.
If I boot from the PATA drive, I can see the SSD as /dev/sdb. I can mount the root (only) partition and see that the expected files are there. It just won't boot.
Attempting to force a boot loader on the SSD I tried
sudo grub-install /dev/sdb --force --boot-directory=/mnt as suggested in this answer.
That got me a
grub> prompt after boot from the SSD. The response to
(hd0) (hd0,msdos5) (hd0,msdos1) (fd0). (There is no floppy drive, but there is a floppy connector, and it's enabled in the BIOS.)
I entered the following grub parameters:
grub> set root=(hd0,1) grub> linux /vmlinuz root=/dev/sda1 grub> initrd /initrd.img grub> boot
That actually got me to the Debian desktop after numerous errors of "ATA.1 device not ready" and "SRST failed errno -16." (I believe that ATA.1 is the main bay, which was empty at the time.)
Once I reached the desktop and opened a terminal, the
update-grub command (as root) appeared to work.
Sadly, a reboot brings me right back to the
grub-install /dev/sda --force --boot-directory=/ after rebooting and entering the grub parameters above. Rebooting still gets me a grub prompt.
I'm pretty sure at this point that I'm doing something wrong with grub. Help on what I've been doing wrong will be most appreciated.
Note: In case others read this, someone in a ThinkPad forum commented offhand that "older ThinkPads will not boot from USB 3 drives." I could have saved myself a lot of grief had I seen that a couple of days earlier. I'd give credit if I remembered who posted that, but I don't.