Tiny Core Linux
Tiny Core Extensions => TCE Tips & Tricks => Topic started by: Juanito on December 23, 2015, 08:02:13 AM
-
In case you need to boot tinycore from a usb stick on legacy bios and uefi machines.
Note that you will need to use corepure64 as most efi/uefi are 64-bit.
Format a usb stick using fdisk as follows: $ sudo fdisk /dev/sdc
...
Device Boot Start End Blocks Id System
/dev/sdc1 2 3670 29471242+ 83 Linux
/dev/sdc2 * 3671 3797 1020127+ ef EFI (FAT-12/16/32)
Note it is easier to partition on 1mb boundaries using fdisk from the util-linux extension
Format the partitions: $ tce-load -i dosfstools e2fsprogs
$ sudo mkfs.ext4 /dev/sdc1
$ sudo mkfs.vfat /dev/sdc2
Install grub: $ tce-load -i grub2-multi
$ sudo mount /dev/sdc1
$ sudo mount /dev/sdc2
$ sudo grub-install --target=x86_64-efi --boot-directory=/mnt/sdc2/EFI/BOOT --efi-directory=/mnt/sdc2 --removable
$ sudo grub-install --target=i386-pc --boot-directory=/mnt/sdc2/EFI/BOOT /dev/sdc
Copy the distribution files rootfs.gz, rootfs64.gz, modules.gz, modules64.gz, vmlinuz and vmlinuz64 to /mnt/sdc1/boot
..then create a grub.cfg in /mnt/sdc2/EFI/BOOT/grub that will be shared by legacy bios and uefi boot: $ cat /mnt/sdc2/EFI/BOOT/grub/grub.cfg
loadfont unicode
insmod all_video
set gfxmode=1366x768x32
set gfxpayload=keep
set gfxterm_font=unicode
terminal_output gfxterm
search --no-floppy --fs-uuid --set=root d4432cde-d21a-4d40-b44b-f097ce72cdba
menuentry "core" {
linux /boot/vmlinuz quiet text tce=UUID="d4432cde-d21a-4d40-b44b-f097ce72cdba" waitusb=10:UUID="d4432cde-d21a-4d40-b44b-f097ce72cdba"
initrd /boot/rootfs.gz /boot/modules.gz
}
menuentry "core64" {
linux /boot/vmlinuz64 quiet text tce=UUID="d4432cde-d21a-4d40-b44b-f097ce72cdba" waitusb=10:UUID="d4432cde-d21a-4d40-b44b-f097ce72cdba"
initrd /boot/rootfs.gz /boot/modules64.gz
}
menuentry "corepure64" {
linux /boot/vmlinuz64 quiet text tce=UUID="d4432cde-d21a-4d40-b44b-f097ce72cdba"/tce64 waitusb=10:UUID="d4432cde-d21a-4d40-b44b-f097ce72cdba"
initrd /boot/rootfs64.gz /boot/modules64.gz
}
menuentry "corepure64 base" {
linux /boot/vmlinuz64 quiet text tce=UUID="d4432cde-d21a-4d40-b44b-f097ce72cdba"/tce64 waitusb=10:UUID="d4432cde-d21a-4d40-b44b-f097ce72cdba" base norestore
initrd /boot/rootfs64.gz /boot/modules64.gz
}
..where "d4432cde-d21a-4d40-b44b-f097ce72cdba" is the uuid of /dev/sdc1, obtained with "blkid -s UUID /dev/sdc1"
Substitute your machine's native resolution for 1366x768x32 if required.
Note: the efi partition does not need to be set as bootable for this to work with uefi boot, but (on my machine at least) it does need to be set for legacy-bios boot.
Edit: slightly modified grub.cfg for clarity
Edit2: changed grub.cfg insmod efi_gop -> insmod all_video to allow legacy-bios fb at 1366x768
-
I suppose you'll install CorePure64 after this procedure into sdc1 partition, right?
Thx.
Vincent
-
Yes - as it says above, "Copy the distribution files rootfs.gz, rootfs64.gz, modules.gz, modules64.gz, vmlinuz and vmlinuz64 to /mnt/sdc1/boot" ;)
-
Thank you.
How can I chose default?
set default="0"
It doesn't work
-
default=menu_label, i.e. default=core in the example above
-
Hi, not sure what the necro-posting policy is here but given the relevance I decided to forgo it.
Upon loading "grub2-multi", the directories for x86 aren't actually there, only the i386 ones... I'm assuming they're not in a separate package because it probably would've been mentioned by now. Is something wrong with how I've gone about this or do I need to acquire it from somewhere else?
-
the i386 files are the equivalent of x86 ones, no?
-
Hi Arii,
I believe i386-pc is pretty much what you're looking for. As in i286, i386, i486, i586 ... = x86.
While this version of grub2 will boot on CPUs compatible with i386 and above, it won't on i286 and below, thus the strict naming.
-
I didn't realise that this thread which was started in 2015, could be continued
in 2019!
My [possibly wrong] understanding of the STRUCTURE of this project is:
* Works only once the <UEFI security-lock> is overcome.
* grub2-multi.tcz is installed.
Does `man grub2-multi` exist; or is it internal to TC only ?
* The 2015 example/documented <grub2-multi HOW2> lists 4 entries.
To reduce the confusion I want to analyse only the 1st: "core".
* The various versions of the <grub family>, list <global-vars / parameters>
at the listing-start: which apply to all of the following entries.
The grub2-multi that I'm trying to use: fails to responde to kybrd;
showing: <the good 3-line-logo> plus:
tc@box:~$
with an appropriately FLASHING CURSOR;
which to me, suggests that grub2-multi's kybrd-driver is bad.
------------
THIS laptop which runs TC64ver8, overcomes the UEFI/restiction problem by:
navigation to the "Aptio Setup Utility/boot"
and <disabling the UEFI-restriction>.
The Intel-Atom-based W10 which I'm trying to USBstik-boot TC from, has
a differnt/newer (2018) "Aptio Setup Utility/boot".
Examining the W10's settings NOW: I'll reorder:
"Boot Option Priorities" to
"Boot Option #1 [UEFI: SanDisk, Part...]"
!! Interestingly: it knows/shows that the USBstik has partn2 for booting;
and AFAIR it showed that my 32bitDebian7-stik used Partn-3.
So a lot of the system seems to be working ?
What test can I do to help find out why <tc@box:~$ & Flashing cursor>
doesn't respond to kybrd ?
-
The extension is called grub2-multi because it contains both i386-pc and x86_64-efi files.
Please post your grub.cfg so that we can try to help you.
-
> Please post your grub.cfg so that we can try to help you.
===================
=> move stik from dud W10 Laptop to W8.1 Laptop:
=> locate, mount & list Dir/S
=> locate & list grub.cfg
==> Some extra files, Dirs are omitted from the listings.
-> ls -l /mnt/sde2/EFI/BOOT/ ==
-rwxrwxrwx 1 root root 121344 May 16 15:59 BOOTX64.EFI
drwxrwxrwx 6 root root 4096 May 16 16:24 grub
-> ls -l /mnt/sde2/EFI/BOOT/grub/ ==
drwxrwxrwx 2 root root 4096 May 16 15:59 fonts
-rwxrwxrwx 1 root root 1048 May 24 16:12 grub.cfg
-rwxrwxrwx 1 root root 1288 May 16 16:26 grub.cfgBak
-rwxrwxrwx 1 root root 1024 May 16 15:59 grubenv
drwxrwxrwx 2 root root 20480 May 16 16:03 i386-pc
drwxrwxrwx 2 root root 4096 May 16 15:59 locale
drwxrwxrwx 2 root root 20480 May 16 15:59 x86_64-efi
-> cat /mnt/sde2/EFI/BOOT/grub/grub.cfg ==
loadfont unicode
insmod efi_gop
set gfxmode=800x600x32
set gfxpayload=keep
set gfxterm_font=unicode
terminal_output gfxterm
search --no-floppy --fs-uuid --set=root 5c4d3b5d-47c9-4e67-8403-4aa4eb9fb767
menuentry "core" {
linux /boot/vmlinuz quiet text tce=UUID="5c4d3b5d-47c9-4e67-8403-4aa4eb9fb767" waitusb=10:UUID="5c4d3b5d-47c9-4e67-8403-4aa4eb9fb767"
initrd /boot/rootfs.gz /boot/modules.gz
}
menuentry "core64" {
linux /boot/vmlinuz64 quiet text tce=UUID="5c4d3b5d-47c9-4e67-8403-4aa4eb9fb767" waitusb=10:UUID="5c4d3b5d-47c9-4e67-8403-4aa4eb9fb767"
initrd /boot/rootfs.gz /boot/modules64.gz
}
menuentry "corepure64" {
linux /boot/vmlinuz64 quiet text tce=UUID="5c4d3b5d-47c9-4e67-8403-4aa4eb9fb767"/tce64 waitusb=10:UUID="5c4d3b5d-47c9-4e67-8403-4aa4eb9fb767"
initrd /boot/rootfs64.gz /boot/modules64.gz
}
menuentry "corepure64 base" {
linux /boot/vmlinuz64 quiet text tce=UUID="5c4d3b5d-47c9-4e67-8403-4aa4eb9fb767"/tce64 waitusb=10:UUID="5c4d3b5d-47c9-4e67-8403-4aa4eb9fb767" base norestore
initrd /boot/rootfs64.gz /boot/modules64.gz
}
-------------------------
I don't know how this posting's line-len-overflow will work?
[EDIT]: Added code tags. Rich
-
Hey, it works! Thanks Juanito..
I used CFDISK for the formatter and had no problem.
Tip: after formatting with mkfs, I removed the stick so the system would properly recognize the new partitions. THEN I proceeded with mounting properly for the grub install. I think everyone knows this, but this tripped me up before. :)
I actually turned this into a Tinycore / 64 setup with some tips from coreplayer2 - thanks man.
So happy I scarfed an entire pizza. :)
-
=> /mnt/sda2/Tmp/Forum/CagedAces 2019 Aug 13
I'm used to acessing the whole file-tree, which includes ALL the
plugged devices in the USBhub, and the 4-partition Microsoft hardDrive
when running TC64ver7.2 from a USBstik via the <APTIO 2015> laptop.
Now I've managed to boot only the 2nd-listing-below of the 5 grub.cfg
entries. And install gpm & mc and get 1+11=12 VTs via `sudo openvt`
on the problematic <APTIO 2018> laptop.
Q: Why does `fdisk -l` & other tests NOT see the Microsoft hardDrive ?
root@box:/home/tc# ls /mnt
mmcblk0p1 sda1 sda2 <-sda=USBstik;mmcblk0p1=equipped SDcard
root@box:/home/tc# dmesg | grep sd
sees sda* PLUS:...
sd 1:0:0:0: [sdb] 0 512-byte logical blocks: (0 B/0 B)
sd 1:0:0:0: [sdb] 0-byte physical blocks
sd 1:0:0:0: [sdb] Test WP failed, assume Write Enabled
sd 1:0:0:0: [sdb] Asking for cache data failed
sd 1:0:0:0: [sdb] Assuming drive cache: write through
sd 1:0:0:0: [sdb] Attached SCSI disk
OK, maybe sdb is the Microsoft hardDrive. I didn't notice that previousy.
When I can afford to take the USBhub from the <APTIO 2015> laptop,
I'll test if this system CAN see other devices, than its own-booted.
We often must "put the research to WRITNG" to spot our mistakes?
Now I'll boot to Win10; to post this FAT text from partn2 of our
<how to boot UEFI via grub> USBstik. Q: does `halt -n` <autoUnmount> ?
---> listing PASTED via mc & gpm:-
/mnt/sda2/EFI/BOOT/grub/grub.cfg 1154/1200 96%loadfont unicode
insmod efi_gop
set gfxmode=800x600x32
set gfxpayload=keep
set gfxterm_font=unicode
terminal_output gfxterm
search --no-floppy --fs-uuid --set=root bfe6116c-473a-4ee9-bbac-3638039dc9ad
menuentry "core" {
linux /boot/vmlinuz quiet text tce=UUID="bfe6116c-473a-4ee9-bbac-3638039dc9ad" waitusb=10:UUID="bfe6116c-473a-4ee9-bbac-3638039dc9ad"
initrd /boot/rootfs.gz /boot/modules.gz
}
menuentry "coreB" { <-- ONLY THIS entry works OK
linux /boot/vmlinuz waitusb=10:UUID="bfe6116c-473a-4ee9-bbac-3638039dc9ad"
initrd /boot/rootfs.gz /boot/modules.gz
}
menuentry "core64" {
linux /boot/vmlinuz64v10 quiet text tce=UUID="bfe6116c-473a-4ee9-bbac-3638039dc9ad" waitusb=10:UUID="bfe6116c-473a-4ee9-bbac-3638039dc9ad"
initrd /boot/rootfs.gz /boot/modules64.gz
}
...
PS. I notice how the smart-arse web-based forum FALSELY wraps code-lines.
NNTP of 25 years ago is far superior. Too late to change now.
Whereas we wrote "27"; todays FB, twitter kiddie write "twenty seven".
[EDIT]: Added code tags and corrected Microsoft spelling. Rich
-
Hi labeas
Please refrain from your "clever" spelling of Microsoft. If you feel a need to bash them, take it elsewhere. I'm sure there are sites
out there that specialize in that.
... Q: Why does `fdisk -l` & other tests NOT see the Microsoft hardDrive ? ...
Since you didn't show the results of fdisk -l we don't know what it saw. If your disk has GPT partitions, you probably need gdisk.
PS. I notice how the smart-arse web-based forum FALSELY wraps code-lines.
If your line is longer than the display area it wraps at the last whitespace that still fits on the line. It will not wrap in the middle of a
word. If it encounters this and it's too long to still fit on the current line:
waitusb=10:UUID="5c4d3b5d-47c9-4e67-8403-4aa4eb9fb767"
it will wrap that to the next line because it contains no whitespace. If you use code tags, it will wrap in the editing window, but
when you click the Preview button, you'll see it in a code box with a horizontal scrollbar on the bottom.
-
This is the first & last time I use a FULL-BROWSER for the TCforum.
And now I see were the verbose/redundant:jsGenerated "Code: [Select]" comes from.
It seems absurd for TINYcore, which hasn't even got: awk, bash, X to want to ape
the WinTel/Bigboys? And we'd better solve this UEFI-booting, since there's a whole
flood of ChineseCheapo UEFI WinTel laptops coming.
---The following seems inconsistent with previous instructions:--
>installing manually is quite easy if you check off the following list items & notes below
>...
>* that Grub2 is installed from a 64bit operating system, with the following directory paths
>* sd(x)1/EFI/BOOT
?????????? On the USBstik which mostly works, nonTClinux sees:---
=> /mnt/sdg2/EFI/BOOT/grub/ =fonts/ grub.cfg grubenv i386-pc/ x86_64-efi/
Ie. -/EFI/BOOT is on the 2nd [FAT] partition, not the 1st [linux].
How can I continue fumbling in the dark; or has this instruction-error been corrected?
-
There are two parts to (u)efi boot:
1 - Choose the correct bootloader - 32-bit for old apple machines and 64-bit for almost everything else
2 - Create an appropriate grub.cfg or equivalent.
It is still unclear from your posts where the problem lies with your atom machine.
-
Hi labeas
This is the first & last time I use a FULL-BROWSER for the TCforum. ...
Then use a lightweight browser like dillo which is capable of properly displaying this forums content.
... And now I see were the verbose/redundant:jsGenerated "Code: [Select]" comes from. ...
The purpose of the [Select] link is to highlight all the text in the code box so you can copy it (Ctrl-C) into the paste buffer and
then paste it (Ctrl-V) elsewhere. Good news, if you use dillo you'll need to highlight text in the code box with your mouse since
dillo does not support Javascript.
... It seems absurd for TINYcore, which hasn't even got: awk, bash, X to want to ape ...
What are you talking about? awk and ash are supplied by busybox (first line after Currently defined functions:):
tc@E310:~$ busybox
BusyBox v1.29.3 (2018-12-19 15:29:37 UTC) multi-call binary.
BusyBox is copyrighted by many authors between 1998-2015.
Licensed under GPLv2. See source distribution for detailed
copyright notices.
Usage: busybox [function [arguments]...]
or: busybox --list[-full]
or: busybox --install [-s] [DIR]
or: function [arguments]...
BusyBox is a multi-call binary that combines many common Unix
utilities into a single executable. Most people will create a
link to busybox for each function they wish to use and BusyBox
will act like whatever it was invoked as.
Currently defined functions:
[, [[, addgroup, adduser, adjtimex, ar, arp, arping, ash, awk, basename, bunzip2, bzcat, bzip2, cal, cat, chgrp, chmod,
chown, chpasswd, chroot, chrt, chvt, cksum, clear, cmp, comm, cp, cpio, crond, cut, date, dc, dd, deallocvt, delgroup,
deluser, depmod, df, diff, dirname, dmesg, dnsdomainname, dos2unix, du, dumpkmap, dumpleases, echo, egrep, eject, env,
ether-wake, expr, false, fbset, fdflush, fdformat, fdisk, fgconsole, fgrep, find, flock, fold, free, freeramdisk, fsck,
ftpget, ftpput, fuser, getopt, getty, grep, gunzip, gzip, halt, hdparm, head, hexdump, hostid, hostname, hwclock, id,
ifconfig, inetd, init, insmod, install, ipcalc, ipcrm, ipcs, kill, killall, killall5, klogd, last, less, linux32, linux64,
ln, loadfont, loadkmap, logger, logname, logread, losetup, ls, lsmod, lsof, lzcat, lzma, md5sum, mesg, microcom, mkdir,
mkfifo, mknod, mkswap, mktemp, modinfo, modprobe, more, mv, nameif, nbd-client, nc, netstat, nice, nohup, nslookup, ntpd,
od, openvt, patch, pgrep, pidof, pivot_root, pkill, poweroff, printenv, printf, ps, pstree, pwd, rdate, readlink, realpath,
reboot, renice, reset, resize, rev, rm, rmdir, rmmod, route, rpm, rpm2cpio, script, sed, seq, setarch, setconsole,
setkeycodes, setsid, sh, sha1sum, sleep, sort, split, start-stop-daemon, strings, stty, sulogin, sum, swapoff, swapon,
switch_root, sync, sysctl, syslogd, tail, tar, taskset, tee, telnet, test, tftp, tftpd, time, timeout, top, touch, tr,
true, tty, udhcpc, udhcpd, udpsvd, uname, uncompress, uniq, unix2dos, unlink, unlzma, unxz, unzip, uptime, usleep, vconfig,
vi, watch, wc, wget, which, who, whoami, xargs, xz, xzcat, yes, zcat
tc@E310:~$
If you want GNU awk, install gawk.tcz. If you want bash, install bash.tcz. If you want X, there's Xvesa (X86 only), Xorg, or Xfbdev.
-
Re: Howto make a legacy bios/uefi dual boot usb stick with grub2
« Reply #15 on: November 28, 2019, 01:55:30 AM »
Quote
There are two parts to (u)efi boot:
1 - Choose the correct bootloader - 32-bit for old apple machines and 64-bit for almost everything else
2 - Create an appropriate grub.cfg or equivalent.
It is still unclear from your posts where the problem lies with your atom machine.
-------------------------------------end of pasted quote.
As an experiment I'm using W10 to read/write this.
What a DISASTER !!
My previous post [inteded to] told that <from possibly faulty human memory rather than
copy-pasted> the Wifi-firmware needed is RTL8723BS. <--- !!!
-
Labeas - I can confirm these instructions work on cheapo uefi-only hardware. I currently run on devices that are uefi-only that are made that way, OR when I have disabled all legacy stuff myself just to prove a point.
1) Wintel W8 Pro hockey puck. UEFI only with American Megtrends bios / Aptio . All you have to do is change your boot drive and leave the rest alone. No legacy at all.
2) Vnopn fanless mini-pc. Same deal, although it tries to be all things. I turned OFF any legacy options, and run uefi-only.
3) Intel NUC. Even turned off the old-school hybrid-iso booting hack. UEFI only.
4) Acer laptop emulating a cheap Chromebook. No legacy stuff there - running uefi only and just changed my boot order to boot from usb stick.
Kind of hard to keep track of all that you have done, although I'm wondering if maybe you aren't able to scroll the code Juanito supplies and might be missing the end of some lines?
I even went so far as to not even make the stick dual-boot, just basically corepure64 distribution files only. Works great every time, on every machine.
Maybe your build environment is so twisted that something is wrong? Have you tried using these instructions on a full-featured distribution like a live Debian Buster or equivalent which has all these tools?
Or maybe as a worst-case, resetting anything you've done to your Bios back to "default", and trying again?
Anyway, just wanted to give you hope that although for UEFI, *core isn't click-n-play, it is pretty easy and fast to create your own. Is it time to go clean-slate and try again?
-
PDP-8 wrote:-
> Anyway, just wanted to give you hope that although for UEFI, *core isn't
> click-n-play, it is pretty easy and fast to create your own. Is it
> time to go clean-slate and try again?
--
My only experience with TC has been 64PureVer7.2.
I put about 8 entries in the <grub2-UEFI> QuadAtom.
TC64 & core both boot; others fail.
Core which is running now on the QuadAtom:-
$ uname -a = ...4.19.10...i686
That's 32bit isn't it? The remaining problem is RTL8723BS driver.
$ sudo openvt (times 8: gives me 8 root Terminals).
# df | grep loop = Nul; shows that it's bare/no *.tcz installed yet.
An inconvenient quirk is that the native/Win10 disk is not seen,
so the TC-effort/bootStik is seen as /dev/sda.
It sees the sdCard, which has LinuxNativeOberon. Astounding!
Especially for anybody with PASCAL experience.
Full GUI with color...Multiple Frames per Screen, to be able to
see multiple aspects of complex problems, and even wipe/dab
texts to different colors/fonts to represent a further layer
of association. Eg. 6 Frames, showing 6 files, and RED, BLUE, GREEN,
YELLOW. marking of textS to Highlight the Price, Weight, Age,
Language aspects of the problem under consideration.
And it's running in TC:core with no X/GUI - via framebuffer.
This dating from the 90's compared to the lame-shit Win10 of today!
Yes LNO running under TCcore, now: a full GUI/OS.
nuf-sed....
-
The remaining problem is RTL8723BS driver
rtl8723bs-4.19.10-tinycore extension posted to the tc-10.x x86 repo.
You need to download the following:
http://tinycorelinux.net/10.x/x86/tcz/rtl8723bs-4.19.10-tinycore.tcz
http://tinycorelinux.net/10.x/x86/tcz/rtl8723bs-4.19.10-tinycore.tcz.dep
http://tinycorelinux.net/10.x/x86/tcz/rtl8723bs-4.19.10-tinycore.tcz.md5.txt
You also need to download the *tcz, *tcz.dep and *tcz.md5.txt files for each extension listed in the following url:
http://tinycorelinux.net/10.x/x86/tcz/rtl8723bs-4.19.10-tinycore.tcz.tree
..and repeat recursively for each of the extension tree files.
-
Hi Juanito
... http://tinycorelinux.net/10.x/x86/tcz/rtl8723bs-4.19.10-tinycore.tcz.tree
..and repeat recursively for each of the extension tree files.
Huh? Maybe I'm misunderstanding your wording, but the rtl8723bs-4.19.10-tinycore.tcz.tree file already lists all of the dependencies.
-
Ah - you’re correct - well spotted :)
-
Got: http://tinycorelinux.net/10.x/x86/tcz/rtl8723bs-4.19.10-tinycore.tcz
wget http://tinycorelinux.net/10.x/x86/tcz/rtl8723bs-4.19.10-tinycore.tcz.dep
= 61bytes : rtl8723bs-4.19.10-tinycore.tcz.dep ==
wireless-KERNEL.tcz
firmware-rtlwifi.tcz
firmware-rtl_bt.tcz
wget http://tinycorelinux.net/10.x/x86/tcz/wireless-KERNEL.tcz =wget: bad address...
wget http://tinycorelinux.net/10.x/x86/tcz/firmware-rtlwifi.tcz =750240 : firmware-rtlwifi.tcz
wget http://tinycorelinux.net/10.x/x86/tcz/firmware-rtl_bt.tcz =wget: bad address 'tinycorelinux.net'
wget http://tinycorelinux.net/10.x/x86/rtl8723bs-4.19.10-tinycore.tcz.tree
== wget: bad address 'tinycorelinux.net'
---- BTW I found the GOOD <TC wiki for wifi>.html
and would like to test/confirm the precedures,
on the minimalist: TC:core [uname -a =...686i...]
which seems to UEFI:boot without problems.
Various wiki-listed tests/confirms fail for the
TC64: rtl8723bs-4.19.10 install attempt.
Isn't there a script to fetch/install the dependencies
which haven't aleady been installed?
-
Hi labeas
... wget http://tinycorelinux.net/10.x/x86/tcz/wireless-KERNEL.tcz =wget: bad address... ...
You're supposed to replace KERNEL with your kernel version:
http://tinycorelinux.net/10.x/x86/tcz/wireless-4.19.10-tinycore.tcz
wget http://tinycorelinux.net/10.x/x86/tcz/firmware-rtl_bt.tcz =wget: bad address 'tinycorelinux.net'
That one's fine. I don't know why you have a problem with it.
wget http://tinycorelinux.net/10.x/x86/rtl8723bs-4.19.10-tinycore.tcz.tree
== wget: bad address 'tinycorelinux.net'
Of course it won't work if you mangle the address:
http://tinycorelinux.net/10.x/x86/tcz/rtl8723bs-4.19.10-tinycore.tcz.tree
-
Your superior visio-cognitive skills, compensates for using inferior tools.
-rw-r--r-- 1 root root 112 Dec 10 07:45 rtl8723bs-4.19.10-tinycore.tcz.tree
-rw-r--r-- 1 root root 3284992 Dec 18 2018 wireless-4.19.10-tinycore.tcz
Further possible errorS:
wireless-4.19.10-tinycore.tcz =3284992 <- for 32bit system?.
wireless-4.19.10-tinycore64.tcz =3481600
Recent advances in USBstik technology will boost the use of tinycore.
Assuming the USA also is still dominated by <SanDisk> ?
These plasticPlugged things *WEAR* each time they're moved.
For me, Toshiba metalPlugged stiks prevent disasterous loss due
to SanDisk becoming unuseable.
-
Hi labeas
... Further possible errorS:
wireless-4.19.10-tinycore.tcz =3284992 <- for 32bit system?.
wireless-4.19.10-tinycore64.tcz =3481600 ...
Yes, the first one is for 32 bit systems and the second one is for 64 bit systems.
No, they don't have to be the same size.
If you still feel there is a "possible error" you will have to be more specific.
-
Huh? Maybe I'm misunderstanding your wording, but the
rtl8723bs-4.19.10-tinycore.tcz.tree
file already lists all of the dependencies.
------------------------
Writing now from lame-Win10, would the following work from *nix:-
cat <wifi.tcz> <-lists wifi.tcz & all dependencies- possibly repeated.
cat <wifi.tcz> | uniq <- removes possible repeats.
wget `cat <wifi.tcz> | uniq`
Or: <functional notation> algorithms to install wifi.sh:-
cat wifi.tcz | uniq | <wget> | tce-load -i
That's probably what the App-GUI does?
Apparently it's difficult for full-facility-TCusers to realise
the difficulty of installing *.tcz using Win10 ?
-
The defective:web-based:Microsoft-inspired <search> seems to indicate that I had
not already posted the following: my actual latest <install script> which gave
the results/tests of the post-before-this-one:--
Install.sh ==
echo "the extensions need to be loaded in the following order:
1. firmware-rtl_bt"
cd /mnt/sda2/Core32/Wifi/tczS/FIRMWARE
tce-load -i firmware-rtl_bt.tcz
echo "2. firmware-rtlwifi"
tce-load -i firmware-rtlwifi.tcz
echo "3. wireless-4.19.10-tinycore
is seen to be a <LEAF> of 2 binaries;
so will show ALREADY INSTALLED for load-wifi"
cd /mnt/sda2/Core32/Wifi/tczS
tce-load -i wireless-4.19.10-tinycore
echo "4. rtl8723bs-4.19.10-tinycore
Apparently these above 4 have no deps ?"
cd /mnt/sda2/Core32/Wifi
tce-load -i rtl8723bs-4.19.10-tinycore.tcz
echo "After loading these extensions,
you can then load the wifi extension
and all of its deps.
Which number 9"
cd /mnt/sda2/Core32/Wifi/tczS
./InstallThese
echo "and run sudo wifi.sh"
sudo wifi.sh
[EDIT]: Removed MS slur. Rich
-
Hi labeas
Please refrain from your "clever" spelling of Microsoft. If you feel a need to bash them, take it elsewhere. I'm sure there are sites
out there that specialize in that. Politics have no place here.
-
Hi,
I followed your guide, the usb stick starts regularly on a pc with uefi and 64bit cpu.
I have a newbie question: does the usb also works with 32-bit PCs?
-
Hi, Dr.FrankenHouse!
In general answer is yes. Details depend on what boot entry You used on 64-bit PC. Have You booted "core64" or "corepure64"?
-
Hi jazzbiker,
I booted my laptop (uefi & cpu i7) without any problem with corepure64 entry.
I tried to boot my netbook (cpu atom 32bit) and it won't start, it didn't recognize the partition (bios recognize the usb stick and I set it like first boot).
I immediately thought that the problem was how I made the usb stick, but before I restarted all the procedure I would like to know if it will go or not.
It's not necessary that it run on 32bit, it's just a curiosity. Unfortunately I don't have another old pc here to test, I should have to go to my parents (200km from here).
-
Hi, Dr.FrankenHouse!
I am writing this post from the very old ASUS netbook with 32-bit Atom, Z520, booting from USB flash drive, cooked according to Juanito recipe. Here i load using "core" entry. And the same stick i boot 64-bit laptop in both modes - core64 and corepure64.
So Juanito's installation instructions are perfect and You can rely on them absolutely.
Maybe You missed, that on the 32-bit hardware You can select only "core" entry? Be carefull with UUID's defined.
Good luck!
-
Hi Dr.FrankenHouse
... I tried to boot my netbook (cpu atom 32bit) ...
Are you sure? Atoms came in both 32 and 64 bit. I have an old ASUS T100-CHI tablet that has a 64 bit Atom but 32 bit UEFI firmware.
I also found out this tablet would not boot a 32 bit kernel so I used vmLinuz64 with Core64 (not CorePure64) so I could still run
32 bit applications since this tablet only has 2 Gig of RAM.
-
Hi, Dr.FrankenHouse!
I am writing this post from the very old ASUS netbook with 32-bit Atom, Z520, booting from USB flash drive, cooked according to Juanito recipe. Here i load using "core" entry. And the same stick i boot 64-bit laptop in both modes - core64 and corepure64.
So Juanito's installation instructions are perfect and You can rely on them absolutely.
I never doubt about juanito's instructions. As I wrote, first thing I thought was "ok, I made a mistake".
Maybe You missed, that on the 32-bit hardware You can select only "core" entry? Be carefull with UUID's defined.
Good luck!
The problem is that boot menu doesn't came out,it starts directly the boot menu installed on ssd in the netbook.
It's like the pc doesn't recognize usb stick (but bios does).
Hi Dr.FrankenHouse
... I tried to boot my netbook (cpu atom 32bit) ...
Are you sure? Atoms came in both 32 and 64 bit. I have an old ASUS T100-CHI tablet that has a 64 bit Atom but 32 bit UEFI firmware.
I also found out this tablet would not boot a 32 bit kernel so I used vmLinuz64 with Core64 (not CorePure64) so I could still run
32 bit applications since this tablet only has 2 Gig of RAM.
Unfortunately I'm pretty sure, it's an Asus eeepc 1005ha with Atom N280
-
Hi Dr.FrankenHouse
... The problem is that boot menu doesn't came out,it starts directly the boot menu installed on ssd in the netbook.
It's like the pc doesn't recognize usb stick (but bios does). ...
I had that same issue with the tablet. I had to go into the BIOS and turn off secure boot and place grub as option #1 under
Boot Option Priorities.
-
Hi,
I performed a new installation on a new USB stick.
This time netbook recognize it!
But I have another problem when starts grub:
error: unknown filesystem
Entering rescue mode...
I tried on several computers (both with uefi and with legacy) and I did the installation of the USB stick several times.
In attachment a screenshot of fdisk
I don't know if the problem could be that I install it by running tc on virtualbox hosted by Windows
-
Hi, Dr.FrankenHouse!
You're right, it's better to make bootable media without the use of VM. There are a lot of issues on the forum about some software working slightly different if run under one of the various VMs.
If it is possible, try to make bootable media under the running "real" TinyCore. If it is not possible, use some other "real" Linux.
Good luck!
-
Hi Dr.FrankenHouse
This is the procedure that worked for me
http://forum.tinycorelinux.net/index.php/topic,22848.msg143377.html#msg143377
If memory serves, using a GPT partition was necessary in my case.
-
Hi, all Core explorers!
I want to propose the small workaround, which can be usefull for those, who uses the same 32-bit rootfs under 32-bit or 64-bit kernels, depending on the hardware being booted. In Juanito's perfectly working grub.cfg You need to choose manually among Core and Core64 entries. But grub2 shell implements "cpuid" builtin command, which can make this dirty job for You.
I've added to original Juanito's grub.cfg the next entry:
if cpuid -l
then
set KNAME="vmlinuz64"
set MNAME="modules64"
else
set KNAME="vmlinuz"
set MNAME="modules"
fi
menuentry "core auto" {
linux /boot/"$KNAME" quiet tce=UUID="<Your boot disk UUID>" waitusb=10:UUID="<Your boot disk UUID>"
initrd /boot/rootfs.gz /boot/"$MNAME".gz
}
Have a nice Core!
-
Let me make remarks here concerning avoiding of extraneous writes to flash, as it was not mentioned in this thread yet.
1. Making ext4 filesystem without journal. Proposed in the initial post
$ sudo mkfs.ext4 /dev/sdc1
can be modified adding option
$ sudo mkfs.ext4 -O ^has_journal /dev/sdc1
2. Remounting boot device with forbidden files' and directories' access time updates.
The next commands can be added to bootlocal.sh:
TCEDEV=$(readlink /etc/sysconfig/tcedir | sed 's_/mnt/\(.*\)tce.*_\1_')
mount -o noatime -o nodiratime -o remount /dev/"$TCEDEV"
3. Number of blocks written to Your device can be monitored with
cat /proc/diskstats | awk '/sdc1/{print $10}'
if Your flash partition is /dev/sdc1.
-
EDIT to privious post.
2. Remounting boot device with forbidden files' and directories' access time updates.
The next commands can be added to bootlocal.sh:
TCEDEV=$(readlink /etc/sysconfig/tcedir | sed 's_/mnt/\([^/]*\).*_\1_')
mount -o noatime -o nodiratime -o remount /dev/"$TCEDEV"
-
Hi, Core people!
One more post about grub2 and TinyCore. Using multiple TC versions, building custom rootfs-es, kernels, having need for different bootcodes' batches makes someone tired of constant editing (manual!) of grub,cfg according to the newly appeared environments. Trying to avoid grub.cfg manual editing I've made a universal grub.cfg, which, once stored in /EFI/BOOT/grub directory, don't need to be cared and make all the job of creating grub2 menu entries during boot process by itself lonely. Of course this assumes, that the structure and content of the boot device follows certain rules.
Boot device contains a directory tree with distribution files (vmlinuz, vmlinuz64, rootfs.gz, rootfs64.gz, modules.gz, modules64.gz) placed in various directories. Also boot device directory tree contains "bootcodes" files. The normal way to use "bootcodes" files is to place the single
BOOTCODES="<something>"
definition, which will be sourced to the grub2 shell while creating the corresponding menu entry.
Boot menu entries are created only for the terminal nodes - dirctories, which doesn't have subdirs. Each terminal node has unique path from the root directory. Distribution files are collected along this path exclusively, means if on the way from / to /10/4/6/7 more than one "vmlinuz" will be found, the latest (closest to the terminal node) will be used. "bootcodes" assignments are accumulated in BOOTCODES_FULL variable, which immediately is used for creating menu entry itself.
For every terminal node entries tried to be created depends on the set of distribution files collected along the path and CPU bitness.
Directory names, visible for script, can only be natural numbers (see NATURALS constant in the source code). Directories alternatively named don't influence on entries cretion process.
First subdir in BOOT_ROOT is considered to be the version number and all the down-level subdirs' created entries will share the same TCE<version> working directory. So distribution files of TC10.0 version, placed in /10/0 and TC10.1 files placed in /10/1 will share the same /TCE10 directory for roots and /TCE10-64 for rootfs64. Boot and TCE devices may be separate ones.
So final grub.cfg is "cat"-ed of the definition header (grub.cfg.def) and grub.cfg.template and is placed in /EFI/BOOT/grub/ on the EFI device, according to initial Juanito's post.
Additional tool for making menu entries understandable are "title" files. For example, if /10/1 contains 32-bit distributionn files, /10/1/2 contains "bootcodes" with
BOOTCODES="noswap nodhcp"
then corresponding boot menu entry will be named "core-10-1-2". But if You'll place in /10/1/2 the file "title", containing
TITLE="mysettings1"
then corresponding entry becomes named "core-10-1-mysettings1".
Important note: TITLE value string must not contain spaces.
This is brief description of the grub.cfg.template possibilities. Of course, it is not fully tested, so You can use it with care.
Have a nice Core!
-
Update: added protection against spaces in TITLE value definition. They will be replaced with '_' symbols.