I rm -rf the old grub directories,got "sudo su" and typed :
grub-install --target=i386-pc --boot-directory=/tce/boot /dev/sda5
Then I got this error : "grub-install: error: failed to get canonical path of "rootfs" "
So, I tried this :
grub-install --target=i386-pc --boot-directory=/mnt/sda5/tce/boot /dev/sda5
Then, I got :
Installing for i386-pc platform.
grub-install: warning: File system `ext2' doesn't support embedding.
grub-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged..
grub-install: error: will not proceed with blocklists.
But the grub folder was created in /mnt/sda5/tce/boot . So, I used the --force :
grub-install --target=i386-pc --boot-directory=/mnt/sda5/tce/boot --force /dev/sda5
Then I got :
Installing for i386-pc platform.
grub-install: warning: File system `ext2' doesn't support embedding.
grub-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged..
Installation finished. No error reported.
Then, I restored the old grub.cfg into the grub folder and then rebooted. Then, I got the GRUB v0.4.6a console.
I booted into TCL and then did the previous trick: Copying /mnt/sda5/tce/boot directory to /mnt/sda5. Then, the GRUB v2 booted with the menu.
I don't know if my TCL is 32 bit
for 32 bit....menu might show vmlinuz and core.gz
for 64 bit ....menu might show vmlinuz64 and corepure64.gz as per
http://tinycorelinux.net/11.x/x86_64/release/distribution_files/
BTW I am not trying to force you on onto 64 bit as generally speaking 32 bit packages are smaller than 64 bit. But if you have lots of RAM....well you decide
Then, I got 32 bit TCL now. How to change to 64 bit ? Is
replacing the vmlinuz and core.gz to vmlinuz64 and corepure64.gz enough ?