WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: [SOLVED] Slim extlinux to boot TC  (Read 2902 times)

Offline deetee

  • Newbie
  • *
  • Posts: 34
[SOLVED] Slim extlinux to boot TC
« on: April 19, 2013, 09:00:45 AM »
Hi,

I installed the newest extlinux (syslinux version 5.01) to boot TC (vmlinuz, core.gz) from my ext3-harddisk.

Unfortunately syslinux installed two ldlinux-files (ldlinux.c32 and ldlinux.sys) with a size of 55k resp. 116k.

I wonder if and how it is possible to boot with less and smaller loadlinux-file(s) - because I saw syslinux-bootloaders with one ~30k file only.
What did I do wrong while installing extlinux?

deetee
« Last Edit: April 23, 2013, 04:10:28 AM by deetee »

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14851
Re: Slim extlinux to boot TC
« Reply #1 on: April 19, 2013, 09:07:43 AM »
here's what I find:
Code: [Select]
$ ls -l /mnt/sdc1/boot/extlinux/extlinux.sys
-r--r--r--    1 root     root         14336 May 30  2009 /mnt/sdc1/boot/extlinux/extlinux.sys
$ ls -l /mnt/sdc1/boot/extlinux/ldlinux.sys
-r--r--r--    1 root     root         32768 Mar 29 20:10 /mnt/sdc1/boot/extlinux/ldlinux.sys

Where the first one is a previous syslinux extension and the second one is the current syslinux extension.

Offline deetee

  • Newbie
  • *
  • Posts: 34
Re: Slim extlinux to boot TC
« Reply #2 on: April 19, 2013, 09:26:09 AM »
Yes ... that's what I have seen (32k) - and that's what I want.

But to do it well I tried the latest syslinux: Downloaded the syslinux zip file, extracted it and executed the extlinux binary (<./extlinux -i /dev/sda1>).
To get a real slim TC I added core.gz, vmlinuz and a small extlinux.conf only.

It boots and works, but I wonder how to get a smaller 'extlinux footprint'.

deetee

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14851
Re: Slim extlinux to boot TC
« Reply #3 on: April 19, 2013, 09:29:30 AM »
You could try using the current syslinux extension and following the instructions in the info file?

Offline deetee

  • Newbie
  • *
  • Posts: 34
Re: Slim extlinux to boot TC
« Reply #4 on: April 19, 2013, 09:46:28 AM »
Good idea - thank you for the hint.

I loaded syslinux.tcz and executed extlinux (<sudo extlinux -i -s /mnt/sda1/boot/>)

ldlinux.sys was overwritten (32k instead of 55k)
then I deleted ldlinux.c32 (115k) and now it boots and works.

Thanks for the now 'real slim TC-booting'.

To be honest I have neither a TC-CD nor an USB-bootable PC.
I booted with an old recovery-CD (grml) and did the extlinux-install with the most recent version.
It seems that the newest syslinux produces a bigger footprint.

deetee


Offline tinypoodle

  • Hero Member
  • *****
  • Posts: 3857
Re: Slim extlinux to boot TC
« Reply #5 on: April 19, 2013, 09:02:28 PM »
I happened to wonder about same - though with syslinux instead of extlinux - lately, but a look at included 'news' would explain:

Code: [Select]
* core: Split non-core functionality into ldlinux.c32, which           
          is an ELF module loaded by the core that contains everything         
          the core doesn't require to boot the system, e.g. config             
          parser, command-line interface, etc.

Also, I think the resulting size of the 2 commands you posted could not directly compared, as only in one of them you used the "-s" option.
"Software gets slower faster than hardware gets faster." Niklaus Wirth - A Plea for Lean Software (1995)

Offline genec

  • Full Member
  • ***
  • Posts: 240
Re: Slim extlinux to boot TC
« Reply #6 on: April 20, 2013, 07:37:38 AM »
I wonder if and how it is possible to boot with less and smaller loadlinux-file(s) - because I saw syslinux-bootloaders with one ~30k file only.
What did I do wrong while installing extlinux?

As noted, absolutely nothing wrong.  This is a result of the new changes in the elflink (5.xx) branch.  Use Syslinux 4.06 if you want something smaller.  The precompiled installers 'extlinux' and 'syslinux' should work in TC as-is.  The only difference between these two installers is that 'syslinux' works on unmounted supported FAT* file systems while 'extlinux' works on any mounted supported file system.  EXTLINUX functionality has been merged into SYSLINUX as of 4.00 (please note case of Syslinux, extlinux and SYSLINUX; this convention should be in use in Syslinux docs/code since about 3.73).

However, in the context of an 8 MiB payload of TC, why does it really matter?
« Last Edit: April 20, 2013, 07:44:00 AM by genec »

Offline deetee

  • Newbie
  • *
  • Posts: 34
Re: Slim extlinux to boot TC
« Reply #7 on: April 20, 2013, 12:21:43 PM »
Thank you all for your help and information.

deetee
I love TC

Offline tinypoodle

  • Hero Member
  • *****
  • Posts: 3857
Re: Slim extlinux to boot TC
« Reply #8 on: April 20, 2013, 04:03:54 PM »
Here is a comprehensive list of module dependencies for Syslinux >=5.00

http://www.syslinux.org/wiki/index.php/Library_modules
"Software gets slower faster than hardware gets faster." Niklaus Wirth - A Plea for Lean Software (1995)