Tiny Core Linux

Tiny Core Base => Corepure64 => Topic started by: hamak on January 02, 2019, 01:08:34 PM

Title: TinyCorePure64 and UEFI boot
Post by: hamak on January 02, 2019, 01:08:34 PM
Hello there
I am very very new to linux and Tiny Core

I am trying to make TinyCorePure64 v9.0 boot with UEFI and I have followed this tutorial on partition the USB Drive: http://forum.tinycorelinux.net/index.php/topic,20939.msg130829.html#msg130829 (http://forum.tinycorelinux.net/index.php/topic,20939.msg130829.html#msg130829)

I get the usb boot menu up as USB HDD: AI  MASS STORAGE
I have disabled secure boot but I cannot disable UEFI or change it

I am trying to be able to boot with both legacy MBR BIOS and UEFI so I can use tinycore on allmost all computers

My laptop is Acer Aspire ES 11, ES1-132-C3TU with eMMC 32GB Drive

I have added images of folders and files on usb drive and settings from BIOS on laptop

Hope there is a way to get this to work  :)
Title: Re: TinyCorePure64 and UEFI boot
Post by: polikuo on January 03, 2019, 12:44:43 AM
Hi, I can see you have your F12 Boot Menu Enabled.
You should try pressing F12 right after you power up your laptop.
The USB should appear on the pop up list.
I suggest trying this method before hacking your motherboard setting.

My laptop is Acer Aspire ES 11, ES1-132-C3TU with eMMC 32GB Drive

To hack your motherboard, please refer to this How to Boot from USB (https://www.youtube.com/watch?v=0lg95_w8bpU) vedio.
Although it's a tutorial on installing M$, it tells you how to disable UEFI.
It uses another similar laptop model "ACER ASPIRE ES 15".
You could give it a shot and see if the it works on your PC.
Title: Re: TinyCorePure64 and UEFI boot
Post by: hamak on January 03, 2019, 02:40:54 AM
Thank you for quick reply
 I already use f12 to get the boot menu but when I try to boot from usb it only starts windows.
 I think it is not finding tiny core.
Do I need to install tinycore after everything in the tutorial is done or is corepure64.gz the tinycore os?

Thank you
Title: Re: TinyCorePure64 and UEFI boot
Post by: polikuo on January 03, 2019, 08:11:22 AM
I already use f12 to get the boot menu but when I try to boot from usb it only starts windows.

It's good to hear that your laptop recognizes an USB bootable media
I've seen tablet PCs that just won't boot from an USB drive

Are you booting in legacy mode or UEFI mode ?
If you are running in legacy mode, please check if the partition is marked active
It's an essential step for your PC to find the system files

corepure64.gz is 64bit for TC
The minimum requirements are 2 files
vmlinuz64 is the kernel
corepure64.gz is the initial ram disk
If you set up your bootloader properly, you should be able to boot
Title: Re: TinyCorePure64 and UEFI boot
Post by: hamak on January 03, 2019, 12:08:10 PM
I only have UEFI on this laptop and I cannot change it to legacy but I have disabled secure boot

I think the problem is the bootloader and I have followed the tutorial on this page:
http://forum.tinycorelinux.net/index.php/topic,20939.msg130829.html#msg130829 (http://forum.tinycorelinux.net/index.php/topic,20939.msg130829.html#msg130829)

Maybe I cannot use syslinux? I know there is mentioned extlinux but here is my syslinux.cfg config:

Code: [Select]
UI vesamenu.c32
DEFAULT tc

LABEL tc
MENU LABEL Tiny Core
KERNEL /vmlinuz64
INITRD /corepure64.gz
APPEND root=UUID="1B5B-059C" rw
Title: Re: TinyCorePure64 and UEFI boot
Post by: hamak on January 03, 2019, 02:33:04 PM
I looks like my laptop Acer Aspire ES11  ES1-132 only can boot with microsoft bootloader.
Maybe Acer only want me to use windows 10? that was installed on it?
I dont know if tinycore can boot with windows bootloader

It looks like the paths on my laptop is hardcoded as mentioned here:
Code: [Select]
Recently I installed LinuxMint in this laptop, and this is the link helped me to install...

I have found a way to boot Ubuntu on a russian linux forum, where the reason for this problem is explained.
The reason for it is that someone naughty has hardcoded all possible paths you can use to boot your system ('thanks a lot'). The paths are:

\EFI\Linux\BOOTX64.efi (Linux)
\EFI\Microsoft\Boot\bootmgfw.efi (Windows Boot Manager)
\EFI\ubuntu\shim.efi (ubuntu SECURE)
\EFI\ubuntu\shim$cpu$.efi (ubuntu SECURE)
\EFI\ubuntu\grub.efi (ubuntu NORMAL)
\EFI\fedora\shim.efi (Fedora)
\EFI\android\bootx64.efi (Android)
\EFI\opensuse\grubx64.efi (topenSUSE)
\EFI\redhat\grub.efi (Red Hat Linux)
\EFI\SuSE\elilo.efi (SuSE Linux)
\EFI\ubuntu\grub$cpu$.efi (ubuntu NORMAL)


http://community.acer.com/t5/E-F-V-and-M-Series-Laptops/ES1-132-cannot-install-other-OS-than-Windows-10-BIOS-options/td-p/476726/page/2
 (http://community.acer.com/t5/E-F-V-and-M-Series-Laptops/ES1-132-cannot-install-other-OS-than-Windows-10-BIOS-options/td-p/476726/page/2)

I will look more into this tomorrow and see if it works
Title: Re: TinyCorePure64 and UEFI boot
Post by: Rich on January 03, 2019, 06:10:10 PM
Hi hamak
Quote
I looks like my laptop Acer Aspire ES11  ES1-132 only can boot with microsoft bootloader.
Maybe Acer only want me to use windows 10? that was installed on it?
If I've read things correctly it sounds like Acer just restricted the boot paths it will recognize. It sounds like if you create the path:
Code: [Select]
\EFI\Linux\It should show up as another boot option. Now replace  /EFI/BOOT  with  \EFI\Linux  at this tutorial you linked to:
http://forum.tinycorelinux.net/index.php/topic,20939.0.html
Title: Re: TinyCorePure64 and UEFI boot
Post by: polikuo on January 03, 2019, 06:54:47 PM
here is my syslinux.cfg config
Code: [Select]
APPEND root=UUID="1B5B-059C" rw

Can you boot into syslinux menu ?
If you can then a quick fix should do:
TC does not use root=...
Instead, we use tce=...

BTW, I don't think "rw" is required
I would go with
Code: [Select]
APPEND quiet tce=UUID="1B5B-059C" lang="zh_TW.utf8"
Title: Re: TinyCorePure64 and UEFI boot
Post by: hamak on January 04, 2019, 03:30:44 PM
Thank you very much for replying but it sadly does not work  :(

Does anyone actually have an UEFI Tinycore ISO image that works by following the tutorial on the page I have posted or are people just giving up and skipping the UEFI problem?

I am talking about this version of TinyCorePure64:
https://distro.ibiblio.org/tinycorelinux/9.x/x86_64/release/TinyCorePure64-9.0.iso (https://distro.ibiblio.org/tinycorelinux/9.x/x86_64/release/TinyCorePure64-9.0.iso)

I must say that I get it to work on the old computers without using UEFI but I really want to be able to use one usb drive that can handle both UEFI and Legacy BIOS. My friend was over today and he was not able to boot any of the many many ways be tried to build the UEFI. we even tried to use YUMI UEFI but had no luck there either.

I am still googling for tutorials on how to make UEFI work with syslinux or extlinux because that is what I really want to learn and use.

To go back to the basic what is the minimum of partitions. Here is what I have so far.

Gparted one partition with GPT +550M, ef00 and make it hybrid MBR and set bootflag on it and formatted with mkfs.vfat

tomorrow I will make a short screen recording of what I do if anyone wants to see if I do it right

Thank you and have a good night   :)
Title: Re: TinyCorePure64 and UEFI boot
Post by: coreplayer2 on January 04, 2019, 07:05:34 PM

Does anyone actually have an UEFI Tinycore ISO image that works by following the tutorial on the page I have posted or are people just giving up and skipping the UEFI problem?
...
we even tried to use YUMI UEFI but had no luck there either.
what do you mean by image?

Sure, I create USB thumb drives that boot via UEFI or Legacy Bios mode.   However I use Grub2-multi from the corepure64 repo, to multi boot Corepure64 and TinyCore32 in all TC versions 8.x, 9.x and now 10.x alpha from the same USB thumb drive.

For UEFI you should use x86_64 version of grub2, just follow the instructions in the grub2-multi.tcz.info file 

Having said that about grub2, there’s no reason why you can’t get extlinux to boot in either mode.

I use Fat32 for the small boot partition containing grub2, linux, tinycore and module files.  Then ext2 partition for Home, OPT and TC version & architecture specific tce directories.

It’s very important to get the paths right as UEFI expects to find required files at certain paths, then booting grub2 or extlinux should be straight forward.  booting Tinycore is simply a matter of telling the boot loader where the files are..   use config files for that

My ASUS notebook will boot either UEFI or Legacy BIOS mode, but UEFI mode is marginally quicker otherwise you can't tell the difference.

Good luck


Sent from my iPhone using Tapatalk
Title: Re: TinyCorePure64 and UEFI boot
Post by: hamak on January 05, 2019, 07:05:56 AM
I mean ISO image when I say image. I just want to know if I am using the correct image that supports UEFI x64 OS

Can someone give me a tree output of the file structure of a working UEFI USB Drive?

Here is my non working configuration step by step and as someone helped me figure out before is that I had to change from /EFI/BOOT to /EFI/Linux because that is only where my cheap laptop searches for.

Everything is done from Virtualbox with bootable TinyCorePure64.iso
Code: [Select]
tce-load -wil gdisk dosfstools syslinux mtools glibc_gconv tree nano

sudo gdisk /dev/sdc
x      # expert command
z      # wipe out gpt
yes
yes   # blank out MBR
sudo gdisk /dev/sdc
o      #delete all partitions and create new protective MBR
yes
n       # add a new partition
enter    # partition number 1 default
enter    # first sector 2048 default
+550M  # last sector
ef00     # efi system
x          # expert command
a          # set attribute
2          # legacy BIOS bootable
enter
enter
w          # Write new GUID partition table
yes
enter
sudo mkfs.vfat /dev/sdc/

mounted drive /dev/sdc1 to /mnt/sdc1

sudo mkdir /mnt/sdc1/EFI
sudo mkdir /mnt/sdc1/EFI/Linux

sudo extlinux -i /mnt/sdc1/EFI/Linux

sudo cp /usr/local/share/syslinux/efi64/syslinux.efi /mnt/sdc1/EFI/Linux/BOOTX64.EFI

sudo dd if=/usr/local/share/syslinux/gptmbr.bin of=/dev/sdc bs=440 count=1

sudo cp /usr/local/share/syslinux/efi64/libutil.c32 /mnt/sdc1/EFI/Linux
sudo cp /usr/local/share/syslinux/efi64/libcom32.c32 /mnt/sdc1/EFI/Linux
sudo cp /usr/local/share/syslinux/efi64/vesamenu.c32 /mnt/sdc1/EFI/Linux
sudo cp /usr/local/share/syslinux/libutil.c32 /mnt/sdc1
sudo cp /usr/local/share/syslinux/libcom32.c32 /mnt/sdc1
sudo cp /usr/local/share/syslinux/vesamenu.c32 /mnt/sdc1
sudo cp /mnt/sr0/boot/corepure64.gz /mnt/sdc1
sudo cp /mnt/sr0/boot/vmlinuz64 /mnt/sdc1

blkid -s UUID /dev/sdc1          # Gives me the UUID for the boot partition

sudo nano /mnt/sdc1/syslinux.cfg

UI vesamenu.c32
DEFAULT tc
LABEL tc
MENU LABEL Tiny Core
KERNEL /vmlinuz64
INITRD /corepure64.gz
APPEND quiet waitusb=5:tce=UUID="58D6-C6F7"

sudo cp /mnt/sdc1/syslinux.cfg /mnt/sdc1/EFI/Linux

NOW I first UnMount /mnt/sdc1 and then run tc-install and choose
Frugal
Excisting Partition
sdc1
I DeSelect both "Mark Partition Active" and "Install boot loader"
Under Formatting Options I choose: No formatting, use existing.

When done I mount the /dev/sdc1 to /mnt/sdc1 and the tree looks like this

/mnt/sdc1
|-- EFI
|    `-- Linux
|        |-- BOOTX64.EFI
|        |-- libcom32.c32
|        |-- libutil.c32
|        |-- syslinux.cfg
|        |-- vesamenu.c32
|-- corepure64.z
|-- libcom32.c32
|-- libutil.c32
|-- syslinux.cfg
|-- tce
|    |-- boot
|    |     |-- corepure64.gz   
|    |     |-- extlinux
|    |     `-- vmlinuz64
|    |-- mydata.tgz
|    |-- onboot.lst
|    `-- optional
|          |--HERE IS ALOT OF FILES
|-- vesamenu.c32
`-- vmlinuz64


As you see I only have one partition that is 550MB with EFI so I guess this should be easy or...  ::)  not  :(
Title: Re: TinyCorePure64 and UEFI boot
Post by: coreplayer2 on January 05, 2019, 07:06:47 PM
Can someone give me a tree output of the file structure of a working UEFI USB Drive?

Sure, but I remind you this is Grub2.  Sorry this USB example which is a little complex..

"FAT32 Boot Partition" from my currently working USB thumb drive booted using UEFI via grub2
Code: [Select]
/mnt/sdb1 $ tree * 
EFI
`-- BOOT
    |-- BOOTX64.EFI
    `-- grub
        |-- fonts
        |   `-- unicode.pf2
        |-- grub.cfg
        |-- grub.cfg.bak
        |-- grubenv
        |-- locale
        `-- x86_64-efi
            `-- "Grub UEFI modules"
boot
|-- grub
|   |-- fonts
|   |   `-- unicode.pf2
|   |-- grubenv
|   |-- i386-pc
|   |   |-- "Grub Legacy modules"
|   `-- locale
|-- modules-41410.gz
|-- modules-41910.gz
|-- modules-4817.gz
|-- modules64-41410.gz
|-- modules64-41910.gz
|-- modules64-4817.gz
|-- rootfs-10.gz
|-- rootfs-10A2.gz
|-- rootfs-821.gz
|-- rootfs-90.gz
|-- rootfs64-10.gz
|-- rootfs64-10A2.gz
|-- rootfs64-821.gz
|-- rootfs64-90.gz
|-- vmlinuz-41410
|-- vmlinuz-41910
|-- vmlinuz-4817
|-- vmlinuz64-41410
|-- vmlinuz64-41910
`-- vmlinuz64-4817

Note the naming convention which is the UEFI standard (and is expected AFAIK)
Code: [Select]
EFI
`-- BOOT
    |-- BOOTX64.EFI


Current persistent storage partition (which needs to be ext2/4)
Code: [Select]
/mnt/sdb3 $ tree -L 2
.
|-- home
|   `-- tc
|-- opt
|   |-- alsa
|   |-- backgrounds
|   |-- bootlocal.sh
|   |-- bootlocal.sh.bak
|   |-- bootsync.sh
|   |-- bootsync.sh.bak
|   |-- eth0.sh
|   |-- passwd
|   |-- shadow
|   |-- shadow.bak
|   |-- shutdown.sh
|   |-- tcemirror
|   `-- wlan0.sh
|-- tc10-x86
|   |-- firstrun
|   |-- getOnboot.sh
|   |-- onboot.lst
|   |-- ondemand
|   |-- optional
|   |-- provides.db
|   `-- xwbar.lst
|-- tc10-x86_64
|   |-- OnbootPure64Def.lst
|   |-- firstrun
|   |-- onboot.lst
|   |-- ondemand
|   |-- optional
|   |-- provides.db
|   `-- xwbar.lst
|-- tc8-x86
|   |-- defonboot.lst
|   |-- defonboot.lst.bak
|   |-- firstrun
|   |-- mydata_tc7x86.Vesa.tgz
|   |-- mydata_tc7x86.Xorg.tgz
|   |-- mydata_tc8x86.Vesa.tgz
|   |-- onboot.lst
|   |-- onboot_Core64.lst
|   |-- onboot_Core64.lst.bak
|   |-- onboot_Core64.lst~
|   |-- onboot_x86_NvidiaCompile.lst
|   |-- onboot_x86_Xorg.lst
|   |-- onboot_x86_Xorg.lst.bak
|   |-- onboot_x86_Xvesa.lst
|   |-- ondemand
|   |-- optional
|   |-- provides.db
|   |-- submit
|   `-- xwbar.lst
|-- tc8-x86_64
|   |-- OnbootPure64Def.lst
|   |-- firstrun
|   |-- mydataCorePure64.tgz
|   |-- mydataCorePure64_bak.tgz
|   |-- onboot.lst
|   |-- onboot_CorePure64.lst
|   |-- onboot_CorePure64.lst.bak
|   |-- ondemand
|   |-- optional
|   |-- provides.db
|   |-- submitqc
|   |-- testOnboot64.lst
|   |-- xbase.lst
|   `-- xwbar.lst
|-- tc9-x86
|   |-- copy2fs.lst
|   |-- defonboot.lst
|   |-- defonboot.lst.bak
|   |-- firstrun
|   |-- mydata_tc7x86.Vesa.tgz
|   |-- mydata_tc7x86.Xorg.tgz
|   |-- mydata_tc8x86.Vesa.tgz
|   |-- mydata_tc9x86.Nvidia.tgz
|   |-- onboot.lst
|   |-- onboot_Core64.lst
|   |-- onboot_Core64.lst.bak
|   |-- onboot_Core64.lst~
|   |-- onboot_Core64_Xfbdev.lst
|   |-- onboot_x86_ISO_Style.lst
|   |-- onboot_x86_Nvidia.lst
|   |-- onboot_x86_Nvidia.lst.bak
|   |-- onboot_x86_NvidiaCompile.lst
|   |-- onboot_x86_NvidiaMinimal.lst
|   |-- onboot_x86_NvidiaMinimal.lst.bak
|   |-- onboot_x86_Xorg.lst
|   |-- onboot_x86_Xorg.lst.bak
|   |-- onboot_x86_Xvesa.lst
|   |-- ondemand
|   |-- optional
|   |-- provides.db
|   |-- submit
|   `-- xwbar.lst
|-- tc9-x86_64
|   |-- OnbootPure64Def.lst
|   |-- firstrun
|   |-- mydata.tgz
|   |-- mydataCorePure64
|   |-- mydataCorePure64.tgz
|   |-- mydataCorePure64_bak.tgz
|   |-- mydata_tc7x86.Xorg.tgz
|   |-- onboot.lst
|   |-- onboot_CorePure64.lst.bak
|   |-- onboot_CorePure64_Nvidia.lst
|   |-- onboot_CorePure64_Xfbdev.lst
|   |-- onboot_x86_64_NvidiaCompile.lst
|   |-- onboot_x86_64_NvidiaCompile.lst.bak
|   |-- onboot_x86_64_NvidiaLoadTest.lst
|   |-- ondemand
|   |-- optional
|   |-- optionalXfbdev.tcz
|   |-- provides.db
|   |-- submit
|   |-- submitqc
|   |-- testOnboot64.lst
|   |-- xbase.lst
|   `-- xwbar.lst


And even more sorry for this complex config file...
Code: [Select]
insmod part_msdos
insmod fat
insmod ext2
loadfont unicode
insmod efi_gop
insmod efi_uga
insmod font
insmod gfxterm
set gfxmode=auto
set gfxterm_font=unicode
set gfxpayload=keep
terminal_output gfxterm

#Timeout for menu
set default=5
set timeout=5


menuentry "*** TC-8-x86 (Xorg on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz-4817 vmalloc=256MB tz=GMT noswap loglevel=3 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc8-x86 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_x86_Xorg.lst mydata=mydata_tc7x86.Xorg
initrd /boot/rootfs-821.gz /boot/modules-4817.gz
}

menuentry "*** TC-8-Core64 (on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz64-4817 tz=GMT loglevel=3 noswap waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc8-x86 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_Core64.lst
initrd /boot/rootfs-821.gz /boot/modules64-4817.gz
}

menuentry "*** TC-8-Corepure64 (on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz64-4817 noswap tz=GMT loglevel=3 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc8-x86_64 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_CorePure64.lst mydata=mydataCorePure64
initrd /boot/rootfs64-821.gz /boot/modules64-4817.gz
}

menuentry "*** TC-8-x86 (Test on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz-4817 tz=GMT vmalloc=256MB noswap loglevel=3 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc8-x86 home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=defonboot.lst norestore
initrd /boot/rootfs-821.gz /boot/modules-4817.gz
}

menuentry "*** TC-9-x86 (Xvesa on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz-41410 tz=GMT loglevel=3 noswap waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc9-x86 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_x86_Xvesa.lst
initrd /boot/rootfs-90.gz /boot/modules-41410.gz
}

menuentry "*** TC-9-x86 (Nvidia on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz-41410 vmalloc=384MB tz=GMT noswap loglevel=3 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc9-x86 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_x86_Nvidia.lst mydata=mydata_tc9x86.Nvidia
initrd /boot/rootfs-90.gz /boot/modules-41410.gz
}

menuentry "*** TC-9-x86 (NvidiaMinimal on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz-41410 vmalloc=384MB tz=GMT noswap loglevel=3 syslog waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc9-x86 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_x86_NvidiaMinimal.lst mydata=mydata_tc9x86.Nvidia
initrd /boot/rootfs-90.gz /boot/modules-41410.gz
}

menuentry "*** TC-9-x86 (Xorg on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz-41410 vmalloc=384MB tz=GMT noswap loglevel=3 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc9-x86 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_x86_Xorg.lst
initrd /boot/rootfs-90.gz /boot/modules-41410.gz
}

menuentry "*** TC-9-Core64 (Xfbdev on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz64-41410 noswap tz=GMT loglevel=3 vga=891 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc9-x86 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_Core64_Xfbdev.lst
initrd /boot/rootfs-90.gz /boot/modules64-41410.gz
}

menuentry "*** TC-9-Corepure64 (Nvidia on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz64-41410 noswap tz=GMT loglevel=3 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc9-x86_64 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_CorePure64_Nvidia.lst
initrd /boot/rootfs64-90.gz /boot/modules64-41410.gz
}

menuentry "*** TC-9-Corepure64 (Xfbdev on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz64-41410 noswap tz=GMT loglevel=3 vga=891 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc9-x86_64 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_CorePure64_Xfbdev.lst
initrd /boot/rootfs64-90.gz /boot/modules64-41410.gz
}

menuentry " TC-10-x86 Alpha(on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz-41910 vmalloc=384MB tz=GMT noswap loglevel=3 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc10-x86 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"
initrd /boot/rootfs-10A2.gz /boot/modules-41910.gz
}

menuentry " TC-10-Corepure64 Alpha(on USB)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz64-41910 noswap tz=GMT loglevel=3 vga=891 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc10-x86_64 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"
initrd /boot/rootfs64-10A2.gz /boot/modules64-41910.gz
}

menuentry "*** TC-9-x86 (NvidiaCompile)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz-41410 vmalloc=384MB tz=GMT loglevel=3 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc9-x86 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_x86_NvidiaCompile.lst
initrd /boot/rootfs-90.gz /boot/modules-41410.gz
}

menuentry "*** TC-9-x86_64 (NvidiaCompile)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz64-41410 tz=GMT loglevel=3 waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc9-x86_64 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" lst=onboot_x86_64_NvidiaCompile.lst
initrd /boot/corepure64-90.gz
}

menuentry "*** TC-9-x86_64 (NvidiaLoadTest)" {
search --no-floppy --fs-uuid --set=root B854-8FE0
linux /boot/vmlinuz64-41410 tz=GMT loglevel=3 base waitusb=5:UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" tce=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"/tc9-x86_64 opt=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311" home=UUID="b313c2c4-fedf-4c44-bf42-6a6fca54b311"
initrd /boot/corepure64-90.gz
}

menuentry "System restart" {
echo "System rebooting..."
reboot
}
Title: Re: TinyCorePure64 and UEFI boot
Post by: hamak on January 06, 2019, 05:53:33 AM
Thank you very much and it looks like I got something...

It booted with this text now

Code: [Select]
GNU GRUB version 2.02
Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists possibe device or filecompletions

grub>

I will try some more later and see if it will work   :)
I think this means that is has booted from UEFI and into grub and stopped
Title: TinyCorePure64 and UEFI boot
Post by: coreplayer2 on January 06, 2019, 06:17:18 AM
Thank you very much and it looks like I got something...

It booted with this text now

Code: [Select]
GNU GRUB version 2.02
Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists possibe device or filecompletions

grub>

I will try some more later and see if it will work   :)
I think this means that is has booted from UEFI and into grub and stopped
Exactly, either Grub can not find the config file or the config file provided information is not correct.  When this happens grub reverts to its command line to allow manual configuration. 




Sent from my iPhone using Tapatalk
Title: Re: TinyCorePure64 and UEFI boot
Post by: hamak on January 06, 2019, 10:28:42 AM
Thank you very much coreplayer2 !!!

It now successfully booted grub and TinyCore x64 and the error was that I have repartitioned multiple times and reinstalled grub multiple times and the UUID had changed and

The tree was exacly what I needed because I got the whole picture of the file structure.

Now I must try to make this work with syslinux  :)
Title: Re: TinyCorePure64 and UEFI boot
Post by: Rich on January 06, 2019, 10:38:46 AM
Hi hamak
So which path did you have to use to make it work on that laptop,  /EFI/BOOT  or  \EFI\Linux ?
Title: Re: TinyCorePure64 and UEFI boot
Post by: hamak on January 06, 2019, 11:39:00 AM
/EFI/Linux worked with grub but on the other PC both /EFI/Linux and /EFI/BOOT worked
I am still testing but I think the tutorial on syslinux is not correct. it does not work even when I use /EFI/Linux and it does not work on the other PC either
Title: Re: TinyCorePure64 and UEFI boot
Post by: polikuo on January 08, 2019, 12:29:41 AM
Hi hamak

My apology, I failed to notice that there's one missing file required.  :-[
Code: [Select]
cp /usr/local/share/syslinux/efi*/ldlinux.e64 /mnt/usb/EFI/BOOTI've already asked the admin to fix the post

Here is my working USB tree that I just created
Quote
/mnt/sdc1
|-- EFI
|   `-- BOOT
|       |-- BOOTX64.EFI
|       |-- ldlinux.e64
|       |-- libcom32.c32
|       |-- libutil.c32
|       |-- syslinux.cfg
|       `-- vesamenu.c32
|-- corepure64.gz
|-- ldlinux.c32
|-- ldlinux.sys
|-- libcom32.c32
|-- libutil.c32
|-- syslinux.cfg
|-- vesamenu.c32
`-- vmlinuz64

FYI, my /mnt/sdc1/EFI/BOOT/syslinux.cfg
Quote
UI vesamenu.c32
MENU TITLE UEFI Bootloader
DEFAULT tc

LABEL tc
MENU LABEL Tiny Core
KERNEL /vmlinuz64
INITRD /corepure64.gz
APPEND quiet lang="zh_TW.utf8" blacklist=pcspkr multivt waitusb=5:UUID="0bcc1165-cf7a-41bd-80af-3156c4f26ec6" tce=UUID="0bcc1165-cf7a-41bd-80af-3156c4f26ec6"

The differences between the two syslinux.cfg
By adding a menu title, it would be easier to see how a usb boot.
Quote
--- /mnt/sdc1/syslinux.cfg
+++ /mnt/sdc1/EFI/BOOT/syslinux.cfg
@@ -1,5 +1,5 @@
 UI vesamenu.c32
-MENU TITLE Legacy BIOS Bootloader
+MENU TITLE UEFI Bootloader
 DEFAULT tc

Hope that helps
Title: Re: TinyCorePure64 and UEFI boot
Post by: hamak on January 08, 2019, 02:41:33 PM
Thank you very much polikuo!
Today I got syslinux to work for the first time and syslinux or extlinux are what I really want to use but it is a high learning curve it looks like.
I will create a simple tutorial with bash script and post it in here as solved this week.
Thank you very much again
Title: Re: TinyCorePure64 and UEFI boot
Post by: hamak on January 09, 2019, 05:37:15 AM
SOLVED!

Thanks to Coreplayer2 and polikuo I got both GRUB and Syslinux to work

Thank you very much!
Title: Re: TinyCorePure64 and UEFI boot
Post by: Crunch3D on November 07, 2020, 07:48:11 AM
Thank you hamak,

Your step by ste guide worked mostly out of the box.
Got UEFI boot with syslinux on the first try.

To others:
Dont forget to copy all the necesarry files from polikuo
Title: Re: TinyCorePure64 and UEFI boot
Post by: PDP-8 on November 12, 2021, 02:49:19 AM
Sorry to necromance this old thread, but wanted to save someone from tearing their hair out with the comment about YUMI and the TinyCorePure64 iso..


My friend was over today and he was not able to boot any of the many many ways be tried to build the UEFI. we even tried to use YUMI UEFI but had no luck there either.

Yumi-Uefi *used* to work just fine with TCPure64 iso.  Yes, for me it was a convenient crutch to use as the bootloader front end replacement for the iso on very strict UEFI only machines.

Later version of yumi-uefi seemed to stop working with TC64, but that was due to an error of using duplicate pathnames in the rewritten tinycore grub.cfg.  If you didn't know about it, and since it looked almost exactly like the original, that duplicate path could be hard to spot.  I spotted it, and since the the filesystem was no longer a read-only iso9660, it was easy to edit out that mistake.

The most recent versions seems to have dropped TC support altogether as it no longer appears in the dropdown list of supported distributions, nor does the "try unlisted distro" appear to work.

One which performs similarly to yumi-uefi, and has been recently tested by myself is multibootusb v 9.2.  Albeit I don't use it to multiboot.

Again sorry - but just wanted to save someone the time and trouble trying to use a 3rd party bootloader that has dropped support for TC.
Title: Re: TinyCorePure64 and UEFI boot
Post by: PDP-8 on November 13, 2021, 10:03:19 PM
Update:  It appears that Yumi-uefi as of V 0.0.4.2 is working with TC64 again as an unlisted iso option.
Title: Re: TinyCorePure64 and UEFI boot
Post by: bosch68 on December 17, 2021, 06:17:35 AM
Hi guys having a problem, I have been using tinycore for quiet a few years now as a thin client using putty , BUT now the new motherboards i get do not support legacy at all and cannot even boot a cd disk unless it is setup for uefi boot.
I have read this post on tinycore64 and UEFI boot and cannot make heads or tails out of it, there is no proper explanation on how get the files on the hard drive to boot uefi. any help will be greatly appreciated,
thanks
Title: Re: TinyCorePure64 and UEFI boot
Post by: Juanito on December 17, 2021, 06:39:03 AM
Have you seen these:

http://forum.tinycorelinux.net/index.php/topic,19364.0.html

http://forum.tinycorelinux.net/index.php/topic,20939
Title: Re: TinyCorePure64 and UEFI boot
Post by: bosch68 on January 02, 2022, 01:27:34 PM
Hi Juanito
Yes been through both links and more i just end up with the grub prompt
looking for a step by step guide to see what files i need to put in the UEFI folder and what in the boot folder
or if someone can link a .img files that is already setup would greatly help.
Any help would be greatly appreciated