Tiny Core Linux

Tiny Core Base => Corepure64 => Topic started by: andysendo on May 14, 2017, 08:59:42 PM

Title: faild logon desktop if boot tinycore iso by syslinux
Post by: andysendo on May 14, 2017, 08:59:42 PM
Boot tinycore iso with qemu as cdrom,  succese logon desktop.

Boot the iso file directly by syslinux (the storage media is usb drive), will only login the text mode but not desktop,  both qemu or real env. The tinycore iso default desktop boot option 1 & 2 is same result: no desktop.

the syslinux boot iso config is:
LABEL livecd
MENU LABEL tinycore livecd
kernel /syslinux/memdisk
append iso initrd=/livecd/TinyCorePure64-current.iso

many desktop live iso i can boot successful with the same config.

So is some bug with tinycore iso inside boot loader  or  need more syslinux configure?
 
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: Rich on May 14, 2017, 09:12:48 PM
Hi andysendo
You probably need to add a  waitusb=5  to the  append  line.
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: andysendo on May 15, 2017, 12:34:44 AM
syslinux config as:

kernel /syslinux/memdisk
append iso loglevel=3 cde waitusb=5 vga=791 initrd=/livecd/TinyCorePure64-current.iso

still boot into CLI. The desktop extensions load failed?
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: Juanito on May 15, 2017, 12:45:14 AM
some usb cd/dvd drives are really slow to start-up - maybe try "waitusb=20" just to be really sure..

Also check that there are no other connected storage devices (hd, usb stick, etc) with a /tce folder or the cd boot will try to use that instead.
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: andysendo on May 15, 2017, 01:43:11 AM
"waitusb=30" still boot into CLI.
syslinux boot iso image should sucecces, i can boot slitaz, debian live, puppy etc. into desktop with append iso initrd=xxx.iso.
Is there some logs that could be check desktop extensions loading status?
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: curaga on May 15, 2017, 01:47:53 AM
Syslinux memdisk only fools the bios. It does not fool linux. Once linux boots, there is no cd drive from which to load extensions from, it sees an usb stick with some isos on it. Either do a normal install on the usb stick, or see the iso bootcode.

Some other live cds do not access the cd from linux, but have everything in the initrd. Those can boot via chainloading like that.
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: Juanito on May 15, 2017, 01:48:37 AM
"tce-status -i" will show all loaded extensions.
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: andysendo on May 15, 2017, 02:27:14 AM
"tce-status -i" output nothing. Does it means no extensions loaded?

------------------
Syslinux memdisk only fools the bios. It does not fool linux. Once linux boots, there is no cd drive from which to load extensions from, it sees an usb stick with some isos on it. Either do a normal install on the usb stick, or see the iso bootcode.
-------------------
Does tinycore boot will force load extensions from cd drive (iso boot way)?  That is not good, because syslinux / grub4dos boot multi small live iso images from one usb trick for different purpose is very useful.
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: Juanito on May 15, 2017, 03:19:16 AM
"tce-status -i" output nothing. Does it means no extensions loaded?

Affirmative
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: Misalf on May 15, 2017, 04:58:23 AM
iso=/mnt/sda1/livecd/TinyCorePure64-current.iso
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: polikuo on May 15, 2017, 05:37:07 AM
If you're looking for an embedded TC installation.
You can try a different approach.
Extract the cde directory to your USB.

Your USB wiil look like this:
  USB_ROOT/path/to/syslinux.cfg
  USB_ROOT/path/to/memdisk
  USB_ROOT/path/to/TinyCorePure64-current.iso
  USB_ROOT/cde

However, I recommend doing a manual installation to suit your needs.  ;)
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: andysendo on May 15, 2017, 07:29:53 AM
kernel /syslinux/memdisk
append iso=/mnt/sda1/livecd/TinyCorePure64-current.iso loglevel=3 cde waitusb=5 vga=791 initrd=/livecd/TinyCorePure64-current.iso

boot failed load desktop.

-----------------------

KERNEL /tinycore/vmlinuz64
INITRD /tinycore/corepure64.gz
APPEND loglevel=3 cde vga=791 waitusb=5

extract & copy cde directory to USB root (and must be root folder), boot success load desktop.

------------------------

I suggest imprve the loading extensions script that auto search cde directly from iso image, then just need:
kernel /syslinux/memdisk
append iso initrd=/livecd/TinyCorePure64-current.iso

that is simpler, does it?
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: curaga on May 15, 2017, 10:32:56 AM
Quote
I suggest imprve the loading extensions script that auto search cde directly from iso image, then just need:
From where? From what iso?

Maybe you have 10 4TB drives attached. Searching them for isos might take hours. It might even find several Core isos.
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: andysendo on May 15, 2017, 04:52:01 PM
There is something useful:
http://www.syslinux.org/wiki/index.php?title=MEMDISK#ISOHYBRID_images

---------------------------------------
Linux distributions that only require kernel and initrd files will fully function via ISO emulation, as no other data needs access from the virtual CD/DVD drive once they have been loaded; the boot loader has read all necessary files to memory by using INT 13h, before booting the kernel.


Examples of Potential Solutions: There are ways to get around the problem of not finding the required files:

    #Kernel_parameters
    #memdiskfind_and_kernel_modules phram and mtdblock


Kernel parameters

Some distributions allow you to pass/append an extra parameter to the kernel (append) line, which tells the init scripts to look for an ISO file on a disk. Some distros require for the drive and partition number (where the ISO is stored) to be explicitly specified, while others will search each partition for the specified filename.

Such parameter is distro-specific, so look at the docs of your distro. Some popular ones:

    findiso=
    iso-scan/filename=


memdiskfind and kernel modules

There is also another solution, which requires the phram and mtdblock kernel modules and the memdiskfind utility of the Syslinux package ([bios/]utils/memdiskfind). memdiskfind will detect the MEMDISK-mapped image and will print the start and length of it in a format phram understands:

 modprobe phram phram=memdisk,$(memdiskfind)
 modprobe mtdblock

--------------------------------------

Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: curaga on May 16, 2017, 12:32:55 AM
Yes, that's what our iso= option does. I guess when you tried it, you gave the wrong device.
Title: Re: faild logon desktop if boot tinycore iso by syslinux
Post by: andysendo on May 16, 2017, 01:42:02 AM
I make a mistake about iso= option, it must be inner syslinux boot option of the iso file, not the syslinux config of the usb trick.
The inner syslinux boot option iso=sda1 or iso=/mnt/sda1/xxxx, or the command fromISOfile, both of them can load extensions from the iso file.

Thanks, guys.