plopKexec ignoring grub2 entries

Started by aclef, July 22, 2019, 18:57:17 PM

Previous topic - Next topic

aclef

Machine: Dell XPS13 9343
I want to boot from SD card with linux installed, I tried older version of plopKexec but it doesn't recognize my internal card reader.
I noticed there's a new version and tried it out, it does recognize the mmcblk device, as I saw in the log, plopKexec is scanning mmcblk0p1 for linux. But the grub entry for the linux installed in the card is ignored(unsupported).
I tried Manjaro KDE/Gnome, Linuxmint Cinnamon, all encountered the same issue. What do I need to do to make it work?

Thank you for your time, I'm struggling with this problem for years, will appreciate any help.

Elmar

Hello,

the Grub 2 config file is not well supported. The easiest is to create a simple plopkexec config file with the kernel and initrd settings and store it on the sd card.

Best regards
Elmar

aclef

Thank you so much! It worked!
Now I can run manjaro smoothly with a SD card, thanks for your work sir!

aclef

Quote from: Elmar on July 23, 2019, 09:41:17 AM
Hello,

the Grub 2 config file is not well supported. The easiest is to create a simple plopkexec config file with the kernel and initrd settings and store it on the sd card.

Best regards
Elmar
I'm really happy now I can run Manjaro on a SD card, it's surprisingly smooth and responsive.
One further question, I noticed in the document that plopKexec only works for FAT/EXT filesystems, is it possible to make plopKexec booting systems in NILFS2/F2FS? How much work may be required to achieve this?

Elmar

Quote from: aclef on July 25, 2019, 20:52:40 PM
is it possible to make plopKexec booting systems in NILFS2/F2FS? How much work may be required to achieve this?

Adding support for NILFS2 and F2FS is easy. You have to add them in the kernel config and recompile plopkexec. Do you know how to do this? Or is it easier when I quickly give you a precompiled version?

aclef

Quote from: Elmar on July 26, 2019, 07:23:19 AM
Do you know how to do this? Or is it easier when I quickly give you a precompiled version?

:-[ Sorry, I don't know how to do it...
It would be great if you can give me a upgraded image. Perhaps you can merge this change into the official version?

Thank you so much!

Elmar

It will be added to the official version when you tried it.

https://download.plop.at/tmp/plopkexec-1.6-rc1-build64.tgz

I added some other file systems too.

aclef

Downloading :D
I'll try it out immediately

aclef

Quote from: Elmar on July 26, 2019, 07:57:06 AM
It will be added to the official version when you tried it.

https://download.plop.at/tmp/plopkexec-1.6-rc1-build64.tgz

I added some other file systems too.

I tested on a sd card with fresh Manjaro installation, on F2FS.
It says in the log, same as v1.5:
Can not mount /dev/mmcblk0
...
Can not mount /dev/mmcblk0p1

Elmar

I will try it by myself to fix the problem, but earliest in a few days.

aclef


Elmar

Hello,

I updated and tested PlopKexec with F2FS support. Please try it.
https://download.plop.at/tmp/plopkexec-1.6-rc2-build64.tgz


Here is a plopkexec.cfg. Maybe someone needs it as sample. You have to use the file names and UUID from your system. See the file "/proc/cmdline" on your system for that and also the content of the "/boot" directory.


label manjaro
kernel /boot/vmlinuz-4.19-x86_64
initrd /boot/initramfs-4.19-x86_64.img
append root=UUID=cf95e2f9-4e81-406a-83a9-633263a51941 rw quiet


Best regards
Elmar

aclef

Wow, thanks! I'll try it out immediately.
I used /dev/mmcblk0p1 in append command, that works for ext4.
Do I need to change it into UUID?

Elmar

Quote from: aclef on August 02, 2019, 12:06:54 PM
I used /dev/mmcblk0p1 in append command, that works for ext4.
Do I need to change it into UUID?

No, you can keep "/dev/mmcblk0p1".
UUID is an alternative to the device node.
Both methods are fine. Use what you prefer :)

aclef

 ;D
It worked!
I'm currently running Manjaro on F2FS with a sd card.
Thank you so much!

aclef

Hi,

I was trying to use btrfs for my system.
PlopKexec couldn't boot btrfs currently, so I put /boot on a separate partition, and put put plopkexec.cfg in the partition for /boot:

Content of plopkexec.cfg:
TIMEOUT 10
DEFAULT Manjaro

LABEL Manjaro
   LINUX ./vmlinuz-4.19-x86_64
   APPEND boot=/dev/mmcblk0p1 rw
   APPEND root=UUID=0d638d03-470b-4ead-9ca2-706df4c939fe rw
   INITRD ./initramfs-4.19-x86_64.img

Content of /@/etc/fstab:
# <file system>             <mount point>  <type>  <options>  <dump>  <pass>
UUID=CBAC-26FD                            /boot          vfat    defaults,noatime 0 2
UUID=0d638d03-470b-4ead-9ca2-706df4c939fe /              btrfs   subvol=@,defaults,noatime,space_cache,autodefrag,compress=zlib 0 1
UUID=0d638d03-470b-4ead-9ca2-706df4c939fe /home          btrfs   subvol=@home,defaults,noatime,space_cache,autodefrag,compress=zlib 0 2

In the btrfs partition, /@/ is the real root but not /.
I tried to boot the system, the root device is successfully mounted, but it says count not found /sbin/init and bailed.

How should I configure it to boot properly or is it possible at all?

aclef

I fixed it according to this link: https://bbs.archlinux.org/viewtopic.php?id=202602
the append command should be:
APPEND root=/dev/mmcblk0p2 rw rootflags=subvol=@

now I can successfully boot off btrfs partition. plopKexec only need to recognize the partition for /boot

Elmar

Hello,

this should work without extra /boot partition.
https://download.plop.at/tmp/plopkexec-1.6-rc3-build64.tgz

Maybe you can try it.

Best regards
Elmar

aclef


aclef


Elmar