FydeOs using Grub2Win

:pushpin:Question Description

Have you searched the community for related issues?

  • No similar issues found. (You might want to search FydeOS forums for “GRUB2Win dual boot” or “FydeOS kernel parameters”)

Please describe the problem you’ve encountered in detail:

  • Description:
    My primary goal is to dual-boot FydeOS (Wintory) alongside Windows using GRUB2Win. I am trying to avoid using rEFInd for this specific purpose. I have installed FydeOS on my second drive, specifically on partition (hd1,gpt3) (corresponding to /dev/sdb3 in Linux).

I have tried two main approaches for the GRUB2Win custom boot entry:

  1. Direct Boot from /boot folder:

    • Attempted to load kernel /boot/vmlinuz-16093.91.20.17 and initrd /boot/core_util_ramfs.cpio directly from the (hd1,gpt3) partition.
    • Used set root=(hd1,gpt3) and linux /boot/vmlinuz... root=/dev/sdb3 quiet splash and initrd /boot/core_util_ramfs.cpio. This did not result in a successful boot of FydeOS.
  2. Loopback Boot from fydeos_dual_boot.img:

    • The FydeOS installation created a fydeos_dual_boot.img file located at /fydeos/fydeos_dual_boot.img on the (hd1,gpt3) partition.
    • Attempt 1 (Standard Loopback): Used GRUB’s loopback module (insmod loopback, loopback loop /fydeos/fydeos_dual_boot.img) to load the kernel and initrd from within the image (linux (loop)/boot/vmlinuz-... root=/dev/sdb3 quiet splash). This also failed to boot FydeOS.
    • Attempt 2 (GRUB2Win “Android” type): Tried using GRUB2Win’s built-in “Android” boot type, pointing the kernel path directly to /fydeos/fydeos_dual_boot.img. This resulted in a GRUB2Win error indicating that a .img file cannot be used as a direct kernel path.
    • Attempt 3 (Advanced Loopback with ChromeOS-specific args): Currently attempting with specific kernel arguments often required for Chrome OS-based systems. The GRUB custom code being used is:
          # Set the root partition for GRUB to the partition containing the image file.
          set root=(hd1,gpt3)
      
          # Load the loopback module.
          insmod loopback
          # Load the filesystem modules needed to read the image file.
          insmod ext2
          insmod gzio
          insmod part_gpt
      
          # Set up the loopback device for the image file.
          loopback loop /fydeos/fydeos_dual_boot.img
      
          # Load the Linux kernel from within the image with specific arguments.
          linux (loop)/boot/vmlinuz-16093.91.20.17 img_loop=/fydeos/fydeos_dual_boot.img root=/dev/sdb3 rootwait dm_verity.error_behavior=1 dm_verity.max_bios=-1 dm_verity.fec_blocks=0 console= loglevel=7 quiet splash
      
          # Load the initial ramdisk (initrd) from within the image.
          initrd (loop)/boot/core_util_ramfs.cpio
      
          # Unset the loopback device after booting.
          loopback --unset loop
      
      This latest attempt also did not result in a successful boot, as the system does not seem to fully initialize FydeOS.

The problem manifests as FydeOS failing to complete its boot sequence after GRUB hands off control, often leading to a black screen, a frozen splash screen, or an inability to properly identify its root filesystem.


:computer:System & Device Information

  • Hardware & System Configuration:

    • Processor: Intel Core i3-1115G4
    • Graphics Card(Please specify if there’s a discrete graphics card): Integrated Intel Iris Xe Graphics (from i3-1115G4)
    • RAM: 8 GB
    • FydeOS Version: Based on the kernel version vmlinuz-16093.91.20.17, it’s likely FydeOS version 16.09.3 or a build very close to it.
  • Relevant System Logs:

    • Open the Chromium browser and enter /var/log/messages to retrieve logs.
    • Log Details: [YOU WILL NEED TO BOOT INTO FYDEOS (if possible, perhaps from a USB installer or another working boot method) or try to access the logs from another OS. Copy and paste relevant boot logs here, especially around the time FydeOS tries to initialize its root filesystem.]