WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: Installing TC to Slave hard drive, Ext4, Grub2. HOW?  (Read 22578 times)

Offline KingBongo

  • Newbie
  • *
  • Posts: 47
Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« on: March 08, 2011, 08:15:17 AM »
Hi. As some of you know I had some serious problems connecting to network with TinyCore, http://forum.tinycorelinux.net/index.php?topic=8893.0. The issue is now resolved so it is time to move on with an installation to hard drive. Of course I am having some issues already :)

Hard drive setup -
hda : Appr. 1.3Gb, 5400rpm
hdb : Appr. 30Gb, 7200rpm

I would like to do the following -
1. Install TinyCore 3.5 to hdb instead of hda - Faster
2. Use Ext4 instead of Ext3 - Faster (I believe)
3. Grub2 - Might be able to circumvent BIOS limitations. Not absolutely necessary.

The problem is that BIOS doesn't seem to accept hard drives bigger than 1.3Gb as boot drives. Believe me, I tried! A lot! I have tried 16Gb and 30Gb drives. And yes, I tried placing the bigger disks as master on the bus and setting the jumpers correctly. I tried playing around with the settings in BIOS a.s.o. The BIOS doesn't like them no matter what!

In Puppy and Debian/Ubuntu have been able to find working solutions to the booting problem just mentioned,

Puppy - Grub on MBR of hda, small partition on hda (hda1) with "grub files", the rest on hdb (hdb1: Puppy, MAXIMUM 1.3Gb size (else error), hdb2: data, hdb3: swap)

Debian/Ubuntu - Grub on MBR of hda, small partition on hda (hda1) with /boot, the rest on hdb (hdb1: /boot, ARBITRARY size, hdb2: /home, hdb3: swap)

Tricking the BIOS to boot into hda and then redirecting to hdb actually improves boot times and more importantly makes the system notably snappier when running. I would like to do the same with TinyCore. I would also like to use Ext4 because I believe I have read that it is faster than Ext2/Ext3 on average, which can only do good on a Pentium 1. Finally, I do not know if it will help any or not, but I have read that Grub2 has some drivers built in which might be good when having an old and buggy BIOS. So it might be a good idea to install Grub2 as well.

This is what I have done so far. I have been following the instructions here, http://www.tinycorelinux.com/install.html, which is nothing complicated at all. Yes, it works. The problem is that it doesn't do what I want it to do. I know for you guys the instructions are pretty easy to modify to your likings, but I haven't been successful so far. The biggest problem (I believe) is how to handle the grub files and how to set up grub.

The partitioning scheme I intend to use is,

hda1 : 50Mb,  boot partition for TinyCore. I believe it is needed.
hda2 : Rest, not used / data

hdb1 : 200Mb, system partition for TinyCore
hdb2 : Rest, data
hdb3 : 500Mb, swap

Can anybody help me out here? This is not a very hard problem for a lot of you guys.
« Last Edit: March 08, 2011, 08:22:57 AM by KingBongo »

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 11049
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #1 on: March 08, 2011, 09:29:01 AM »
I wouldn't place the kernel and tinycore.gz on the second HD, as bootloaders use the bios calls to read files. Ie, install as normal to hda1, placing all of grub and TC there, but specify hdb2 as your tce drive (+ other persistency options if you like).
The only barriers that can stop you are the ones you create yourself.

Offline KingBongo

  • Newbie
  • *
  • Posts: 47
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #2 on: March 08, 2011, 10:53:03 AM »
curaga:
Ok. I guess that TinyCore is a bit more "contracted" than other distros, so the same tricks cannot be applied to it.

Sorry, have to go. I will write more in a couple of hours.

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 11049
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #3 on: March 08, 2011, 11:33:36 AM »
Not really, you could do that setting too, but it would be gambling IMHO. Whether the bios allows you to read your boot files.
The only barriers that can stop you are the ones you create yourself.

Offline KingBongo

  • Newbie
  • *
  • Posts: 47
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #4 on: March 08, 2011, 04:46:50 PM »
curaga:
Hahaha. Ok, that might explain why my Puppy installations sometimes refused to boot from the second disk :) They would just randomly quit doing it. Each time I had to do random combinations of switching the computer on and off, booting any CD of choice, and cursing like SOB before it worked again :P Stupid old computers, stupid old BIOSes. Did I mention that the BIOS doesn't let me boot from CDs although it should? No? I have to kickstart each CD with PLoP Boot Manager. Talk about buggy. I still don't understand why it shouldn't always work to just have a small set of files on hda, just the bare minimum to trick the BIOS and then continue booting into hdb, but I accept what you are saying.

I really would like to speed this computer up as much as possible though, one important part of it seems to direct as much activity as possible to the 7200rpm hard drive. But how does TC work? Does it load every application that is active into RAM, even for a frugal install? If that is the case, it doesn't matter much where all files are placed. At least I think so.

I understand (I think) that "TCE" is the extra stuff you install additionally to the base install, music players and such, but what do you mean by "other persistency options"?

Offline Guy

  • Hero Member
  • *****
  • Posts: 1089
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #5 on: March 08, 2011, 05:46:21 PM »
You could try the plop boot manager.

You could install it on hda, to boot operating systems on hdb.

I have not done this myself, but it is worth looking into.

http://www.plop.at/en/bootmanager.html
Many people see what is. Some people see what can be, and make a difference.

Offline floppy

  • Hero Member
  • *****
  • Posts: 577
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #6 on: March 09, 2011, 02:44:25 AM »
Stupid old computers, stupid old BIOSes.
I have such a computer. Year 1999. Originally my BIOS was from year 1999. I found a newer BIOS on the www.dfi.com internet page  (year 2001) solving different issues (DFI = my MoBo manufacturer). Then, I had a look at http://www.biosflash.com. My BIOS-Chip was not listed there. I contacted them by e-mail with the chip reference and with sending the BIOS file: they had such a chip, even this was not listed in the internet page. I got an offer by mail for approx 6 Euros ( if I remember ) for a new reprogrammed chip (I dont wanted to reprogramm it by myself).
I got the chip 2 week later.
So, perhaps you could try to find a new BIOS (+chip?). Nothing is too old. In year 2011, I made an update of my PC with a BIOS year 2001. And I am proud of it .. :P
AMD K6-IIIATZ 550MHz MB DFI K6xv3/+66
P4 HP DC7100 3GB 3GHz
Samsung NC10 boot from SD card port (via USB reader)
.. all TinyCore proofed

Offline KingBongo

  • Newbie
  • *
  • Posts: 47
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #7 on: March 09, 2011, 05:16:34 AM »
Guy:
You might have missed it, but I just wrote that I am using PLoP all the time :) I did not try installing it to hard drive though. BUT I am very skeptical, because I tried booting stuff I already installed to hard drive using a PLoP floppy. And guess what, it FAILS most of the time! It has been successful a few times though, but no consistent behavior. So, to conclude, PLoP doesn't seem to solve anything. The most consistent behavior has been to install everything to hda, exactly as curaga suggests. I cannot remember that it has ever failed then. That guy seems to know what he is talking about :) 

floppy:
I have actually been trying to hunt down a newer or even a hacked BIOS version for this motherboard, with some help from a great guy in the Puppy forums, but with no success. I looked at Wim's BIOS page and sites like that. I have even been emailing a few guys. One actually seemed to have had one once, but he answered me in a non-polite way. I guess he was tired of BIOS questions, lol. I have since then given up. I have the newest official BIOS version. I will just try to circumvent the bugs, and that's that.

And by the way, why are you using such new computers, lol? 1999, that should be an i686 architecture and as such most everything can be installed onto it :)

Offline floppy

  • Hero Member
  • *****
  • Posts: 577
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #8 on: March 09, 2011, 06:50:53 AM »
why are you using such new computers, lol? 1999, that should be an i686 architecture and as such most everything can be installed onto it
the asus with athlon xCore yGHz zBoost and 3GB ram + 320 GB HDD is for my wife.
I stay married with my old pc, too. ;-)
And: if you cannot install puppy and TCL on the same drive... I already tried puppy on my old pc. Not so good (fat). So, I deleted it and installed TCL. This was a good choice (still some improvements to be made: running skype and recover the mess done to "links" by install of Xorg7-5, quicker HDD access with hdparm, pdf printer install.. but it is already running productively).
AMD K6-IIIATZ 550MHz MB DFI K6xv3/+66
P4 HP DC7100 3GB 3GHz
Samsung NC10 boot from SD card port (via USB reader)
.. all TinyCore proofed

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 11049
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #9 on: March 09, 2011, 07:16:39 AM »
Quote
I really would like to speed this computer up as much as possible though, one important part of it seems to direct as much activity as possible to the 7200rpm hard drive. But how does TC work? Does it load every application that is active into RAM, even for a frugal install? If that is the case, it doesn't matter much where all files are placed. At least I think so.

If you place the 10mb base of TC to the slower drive, it will only be active on boot, after that everything else would be on the faster one.

Apps are mounted by default, but you can select which to load to ram (or all). It's a decision between boot time, ram use, and app speed.


By other persistency options I meant things like home= that you might also want to use (on the faster drive).
The only barriers that can stop you are the ones you create yourself.

Offline KingBongo

  • Newbie
  • *
  • Posts: 47
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #10 on: March 09, 2011, 08:19:57 AM »
floppy:
I never tried to install two distros at once on this computer, so that is a non-issue :)

curaga:
I know it is all obvious to you, but I don't know exactly how to alter the paths and stuff so it'll work in the end :( I tried a few things, only to end up with something non-working or something neglecting the paths I thought I had set :P

Not that it does matter anyway, since the only thing I will install on this computer is Audacious, and I will load it into RAM directly (OnBoot) so I decided it would not make much of a difference running it all on the slow drive. Am I off here? I am also wondering how much I will lose performance-wise by using ext3 instead of ext4 as a partition scheme? Finally, is it possible that booting from hard drive is slower than booting from CD? It feels that way.

I need help with the following:

1a. set xvesa resolution to 800x600x24 during boot
1b. set mouse to serial mouse COM1, 2Button, during boot
2. mount hdb1 automatically during boot
3. set up sound (ALSA) automatically during boot

In order to resolve 1a and 1b I have now a line in menu.lst like "kernel /boot/bzImage quiet tinycore xsetup" which forces me to setup the screen resolution and mouse each and every time. Annoying. 2 is also annoying, since I have to mount it manually all the time (I have the music files on that disk). 3 is as annoying as can be :P I have to run "alsaconf" every time before I can use Audacious.

If possible, I would also like to do the following during boot,

4. Setting swedish keyboard, i.e. SE
5. Start Audacious, not just load/mount it
6. LEFT-BUTTON MOUSE ;)

PS. Just got a kernel panic when trying to boot. Something is not good with this computer :P

EDIT: Ok, I don't know, but it seems there is something wrong with TinyCore. After playing music for a while, Tiny Core completely freezes. Then, after hard-resetting the computer, there is a kernel panic when trying to boot. It takes a hell lot of effort getting it to boot again. You know, turning the computer on and off, booting any CD, screaming words that shouldn't be spoken :P, a.s.o.

EDIT 2: The freezing problem mentioned above in "EDIT" seems to be related to Audacious or any/some of its dependencies. Playing music with XMMS works like a charm. 
« Last Edit: March 09, 2011, 09:05:44 AM by KingBongo »

Offline tinypoodle

  • Hero Member
  • *****
  • Posts: 3857
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #11 on: March 09, 2011, 08:56:04 AM »
Another approach would be to install FreeDOS on hda and use a DOS based Linux loader.
This should work, if the FreeDOS kernel is able to access a FAT* partition on hdb.
In the same way FreeDOS on a floppy instead of hda could work.
"Software gets slower faster than hardware gets faster." Niklaus Wirth - A Plea for Lean Software (1995)

Offline KingBongo

  • Newbie
  • *
  • Posts: 47
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #12 on: March 09, 2011, 09:32:07 AM »
tinypoodle:
Thank you, but that seems like more of the same :P I am getting tired. I have been trying sooooo many things on this Pentium Devil you wouldn't believe.

What I would like to know right now is if the complete base system is always loaded into RAM, as well as the OnBoot applications (and OnDemand if they are launched). If that is the case, it seems to me that the only thing that will be affected when using a slow hard drive is the boot time. I can live with that :)

Offline tinypoodle

  • Hero Member
  • *****
  • Posts: 3857
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #13 on: March 09, 2011, 10:30:10 AM »
Base is loaded to tmpfs (shared memory).

In order to mount extensions from tmpfs you could boot with 'base' and then copy extensions to /tmp/tce/optional.
Of course you could use cp2fs but that sounds like a waste of memory on an older PC.
« Last Edit: March 09, 2011, 03:45:40 PM by tinypoodle »
"Software gets slower faster than hardware gets faster." Niklaus Wirth - A Plea for Lean Software (1995)

Offline KingBongo

  • Newbie
  • *
  • Posts: 47
Re: Installing TC to Slave hard drive, Ext4, Grub2. HOW?
« Reply #14 on: March 09, 2011, 10:53:21 AM »
tinypoodle:
Ok. I hope you guys understand that you are waaaaaay ahead of me and possibly a lot of others :) I am trying to keep up, but it is not easy.

Ok. I understand that base (the "system") is loaded to tmpfs. I even read briefly what shared memory actually is :) Now, what is the difference in having the extensions in, for example, /mnt/hda1/tce/optional (those are the extensions, right?) and copying them to /tmp/etc/optional ? Or am I way off here?
« Last Edit: March 09, 2011, 11:12:11 AM by KingBongo »