Fedora-Remix-for-WSL icon indicating copy to clipboard operation
Fedora-Remix-for-WSL copied to clipboard

Fedora 34 remix with genie 1.36

Open PavelSosin-320 opened this issue 3 years ago • 10 comments

Is your feature request related to a problem? Please describe. Fedora 33 is too old and missing many features. Without systemd it is hardly usable. Fedora 34 is the current code baseline for Fedora and RedHat development. Fedora33 repositories are doomed. Describe the solution you'd like

Describe alternatives you've considered I upgraded to Fedora34 and installed genie 1.36. I've forgotten about most WSL networking problems. I'm able to manage my distro with systemctl, see logs using Journalctl and manage networking using Networkctl. I'm able to run Podman 3, etc. Additional context OCI containers dev tools, Docker-based and docker-less :) The main problem is that Microsoft Kernel 5.4 is far to be Kernel 5.4. It messes cgroups hierarchies and ignores Kernel command line options.

PavelSosin-320 avatar Apr 06 '21 08:04 PavelSosin-320

Hello,

Thank you for all the useful information. We are preparing the image for the Fedora 34 release, which is expected on April 20, 2021. If everything goes well, an updated imaged will be published only some days after the release.

Regards, Carlos

crramirez avatar Apr 06 '21 09:04 crramirez

@crramirez looks like F34 has issues due to SELinux compatibility. Can you look into what kernel config options are needed and I can enable those in my config if you'd like to reference it for usage (it doesn't include the custom snapd stuff but then snap isn't even available in the Fedora repos due to supporting Flatpak instead so don't think that should be issue). (In ideal world both snap and flatpak would be supported regardless of distro).

WSLUser avatar Apr 07 '21 15:04 WSLUser

Hello @WSLUser,

I will make some tests when we finish building the F34 image. Thanks for pointing it out.

Regards, Carlos

crramirez avatar Apr 11 '21 22:04 crramirez

@crramirez PR for WSL Kernel - based on Fedora Magazine announcement #https://github.com/microsoft/WSL/issues/6757

PavelSosin-320 avatar Apr 13 '21 06:04 PavelSosin-320

Smoke test the following stack:

  1. WSL Kernel 5.10.16.3
  2. systemd-genie 1.37
  3. Fedora 34remix as an upgrade from Fedora33Remix.
  4. Podman 3.1 for quality assessment. Some small issues are detected related to WSL init misconduct but can be easily mitigated.

The new Kernel supports FUSE but doesn't support groups v2 correctly.

PavelSosin-320 avatar Apr 20 '21 11:04 PavelSosin-320

I'm resolving differences between their config and mine. Once it's completed, I'll have a new PR available that you can test out. Cgroupsv2 should be supported by my config already though I haven't been able to test.

WSLUser avatar Apr 21 '21 14:04 WSLUser

@WSLUser Loading of FUSE Kernel module fails with error: MSI-wsl systemd-modules-load[266]: Failed to look up module alias 'fuse': Function not implemented MSI-wsl systemd[1]: systemd-modules-load.service: Main process exited, code=exited, status=1/FAILURE systemd[1]: systemd-modules-load.service: Failed with result 'exit-code'. Apr 25 16:03:55 MSI-wsl systemd[1]: Failed to start Load Kernel Modules. although the module itself exists:

/lib/modules/5.11.15-200.fc33.x86_64/kernel/fs/fuse: -rw-r--r-- 1 root root 65288 Apr 16 17:01 fuse.ko.xz

This is precisely the issue with the original Fedora how to fix error systemd-modules-load reported 2 years ago and for Debian Wrong modules directory in Debian. Both issues are without a solution. Is it systemd unit or systemd unit configuration bug?

PavelSosin-320 avatar Apr 26 '21 07:04 PavelSosin-320

@WSLUser It looks like the root cause is in the WSL Kernel version provided by Microsoft: the Mirosoft's kernel is uname -a Linux MSI-wsl 5.10.16.3-microsoft-standard-WSL2 (?) when module version is 5.11.15. modinfo fuse modinfo: ERROR: Module alias fuse not found. Something is missed.

PavelSosin-320 avatar Apr 26 '21 07:04 PavelSosin-320

To satisfy Fedora34 application requirements it must be Fedora34 with Genie 1.40, with userspace creation. SeLinux issues have been solved by the corresponding RedHat team via providing FUSE mount implementations. Use corresponding to FS type FSusermount after login as rootless user instead of mount. Dynamic module loading unit must be masked - not supported by the current WSL kernel.

PavelSosin-320 avatar May 02 '21 17:05 PavelSosin-320

@crramirez It looks like MS upgraded WSL Kernel to uname -a Linux MSI-wsl 5.10.43.3

So, systemd shows Selinux as available: systemd 246 (v246.14-1.fc33) +PAM +AUDIT +SELINUX but disabled. I configured the mount program as fuse-overlay and Podman info shows: graphOptions: overlay.mount_program: Executable: /usr/bin/fuse-overlayfs Package: fuse-overlayfs-1.5.0-1.fc33.x86_64 Version: |- fusermount3 version: 3.9.3 fuse-overlayfs: version 1.5 FUSE library version 3.9.3 using FUSE kernel interface version 7.31

PavelSosin-320 avatar Jul 18 '21 09:07 PavelSosin-320