geo_c wrote: ↑Fri Mar 11, 2022 2:36 amthe funny thing is I only booted SG2D because I ran into kernel panic on a regular USB frugal install -- a problem that I didn't experience when using the same approach with KLV.beta-1/2. However, I'm not, and haven't been using a fat32 partition, it's ext4, and I'm not sure what was different this last go-round. Since you're already at beta-5. I'm not going to try too hard to figure it out, though I might give beta-4 another try as a frugal-copy-the-files-and-run-grub4dos USB install. Just to see if I was doing something different. I think the thing that might have been different is that grub4dos wrote menu1st entries with UUIDs. And I'm not sure why exactly. I tried swapping in other boot commands, but with no luck. I believe when I ran grub4dos on beta-1, I didn't include any of the iso's boot files. On beta-4 I tried including them and also excluding them with no joy. So I might take another stab at it for my own educational purposes.
You should never assume that all is well just because developers are installing and saying all is fine. When you run into issues it is really best if you always publish what is going wrong in case it is an actual bug that could be fixed if we knew about it.
Here is a very related (not so funny) story:
I hardly ever boot from usb sticks, and hardly thus test WDL initrd is booting from usb okay. However, because I have been trying SG2D from usb stick I decided to try a normal frugal install on the same stick to check RAM0 mode could work with FAT format as well as Linux format partition.
Well... I made the frugal install and it crashed on boot.. Gave weird reason I couldn't figure out.
I took same usb stick to a newer computer I have and found it booted perfectly on that one...
So... I immediately thought (and who wouldn't?): must be usb driver maybe kernel related - doesn't work on the old machine. But I wanted to see where it failed.
So I spent HOURS trying and trying again on the old machine - uncompressing the initrd to put debug statements all over its init script. But the error message I was getting didn't actually make any sense at all to me (at the time - actually it makes perfect sense but I was being dumb). I was echoing back the mountfrom and w_bootfrom variable contents at various places in init and it was saying something like 7979-f9800-0808-08080/KLV-Airedale, where the first (unexpected) number I knew to be the UUID. Why is that number appearing in the variable I thought - that was breaking simple cd commands? I knew it all came down to function _fs_find, so I put a debug statement in there...
BUT... what the hell's going on????, the debug statement I put in the _find_fs function never gets reached despite the init code definitely saying to call function _find_fs!!! So... then all logic vanishes, and my brain tells me all the laws of Linux no longer apply cos something is breaking kernel working on this old machine... (that's what my daft brain told me at least).
Anyway, was going round in circles, so if kernel related, I thought, best to try a different kernel/modules combination... Oh, guess what, I temporarily installed fossapup64 on same FAT partition on usb stick and it booted perfectly fine!!!! But that's good I thought - I can try its kernel/modules in my KLV install and all should now be fine my perfect logic told me.
Nope - even with known to work fossapup kernel I still could not boot KLV-Airedale from my usb stick... tearing my hair out by this time - hours were passing.
Some of this happened last night when I was really tired, so got back to it this morning. Spent a further TWO hours getting nowhere this morning - this flipping old computer is USELESS I thought (worse thing is that its the machine I do most dev work on...). All, as I said, worked fine on newer laptop.
All sorts of daft thoughts going through my head by this stage. Oh my goodness, I'm imagining, this old machine is going to need me to write special new search routines to find the sub-directory KLV stuff is in - after all SG2D uses that and it boots fine on the old machine. Oh no, I thought, that will be tons of work changing the init with lots of new function code instead of busybox method I'm using... Or maybe I just give up on old machines - and tell the forum not guaranteed to work on old rusty laptops.
It just didn't really make logical sense, though, that a function wouldn't be entered when definitely called inside the script... Well... who knows, maybe some memory management madness I know nothing about!!! By this stage I believed anything and that normal Linux theory simply didn't apply to this special machine anymore.
But then, after that few hours the night before and a couple more hours today. Suddenly I took a deep breath and somehow my brain switched on...
The debug error message (given by pretty much all of my debug statements) was:
variable w_bootfrom (and usually also w_mountfrom) contains 7979-f9800-0808-08080/KLV-Airedale
At the end of the day, it was 'supposed to' contain something like: /mnt/sdb2/KLV-Airedale, and NOT that flipping number (the blkid UUID of the usb partition).
because: cd /mnt/sdb2/KLV-Airedale will work, but, cd 7979-f9800-0808-08080/KLV-Airedale will definitely NOT!!!!! aaaaaaagh!!!!!
I checked my menu.lst (on the old computer) and NOTICED it had this (extract):
w_bootfrom=C98F-1850=/KLV-Airedale
It SHOULD HAVE BEEN (I say swearing and with my hair now looking like Einstein's):
w_bootfrom=UUID=C98F-1850=/KLV-Airedale
Yeah... I had it correct on the newer laptop. NOTHING WRONG WITH KLV-AIREDALE!!!! Plenty wrong with my brain - not even understanding my simple debug error messages that were trying to tell me exactly what the error was, but I just didn't trust the old machine and the new kernel and was thus unable to see the obvious.
So the story has a happy ending. I fixed my menu.lst and all working fine booting from frugal install on my usb stick on this old WONDERFUL dev computer of mine. Back to some real dev work now.