[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: second-stage bootloader for Thecus N2100?



(PS: Obviously I meant "the 1st one" in my original mail and the followup-incorrection).

On Sat, 31 Jan 2009, Loïc Minier wrote:

There are many solutions to the first part, perhaps our preferred is when the bootloader is clever enough to e.g. boot from USB or SD card first, or even clever enough to offer you a list of kernels from a partition on your SATA disk!

Yeah, shouldn't be /too/ hard to do. A little shell or AWK script could do the job (for a prototype).

explored building an env from kboot and petitboot.

Interesting, I'll look those up.

With kboot/petitboot, you're bloating the initramfs size, probably would still fit in the case of the Thecus N2100 though (in our case, even a standard initramfs wouldn't fit).

The n2100 has a decent amount of flash, so that shouldn't be a huge problem.

Also, this is no silver bullet: you still want to be able to recover from breakage in the flash's kernel/initramfs, or upgrade them (even if less regularly), and it will require starting two kernels, hence making boot times longer.

Once the linux-bootloader works, changing it should be rare, indeed.

You also face a prompting problem on the Thecus N2100 which doesn't
have a display/console by default (you can of course solder it in, but
that's less user friendly  ;-) and going the telnet/ssh route might
make it a) insecure b) slower to boot c) tricky to actually log in
during the open window.

I was thinking you could:

- syslog the results of the boot env (so you could at least know if
  you'd broken a config file - you can always access the disk by
  booting the debian netinst)

- have a fallback option (though, this would require modifying some
  state shared between loader and booted environment which, ideally,
  would be in NVRAM - is that possible with redboot?)

https://lists.ubuntu.com/archives/ubuntu-devel/2009-January/027229.html
https://wiki.ubuntu.com/Specs/ARMSoftbootLoader

Why build a new environment? Why not use the standard Debian initram? What modifications are needed other than to go down a 'read and offer boot menu and kexec' path instead of flipping to the root dev?

Least, that's what I was thinking of using as a starting point. Just curious what reasons there are for going another way.

Thanks!

regards,
--
Paul Jakma	paul@clubi.ie	paul@jakma.org	Key ID: 64A2FF6A
Fortune:
An expert is a person who avoids the small errors as he sweeps on to the
grand fallacy.
		-- Benjamin Stolberg

Reply to: