Fedora Linux Support Community & Resources Center
  #1  
Old 24th September 2017, 10:08 PM
donatom Online
Registered User
 
Join Date: Jan 2013
Location: Ventura, CA
Posts: 134
linuxchrome
[SOLVED] Custom Fedora 26 iso has no wifi drivers

I have created a custom Fedora 26 xfce iso. When I boot it from a multiboot usb thumb drive with mbr boot, there is no wifi (drivers are missing). If I try to load rt2800usb (wifi driver) with modprobe an error is thrown stating that that module cannot be found from among the kernel modules.

I can use the same iso, however, in a multiboot efi boot drive with no problem - the drivers have been loaded and Network Manager has a list of possible wifi access points.

Notably, if I burn the same custom iso to a usb drive using dd (following fedora wiki instructions), wifi is loaded and works fine (on mbr systems).

I have played around with the grub2 menuentry without success.

Here is one of the menuentries:

Code:
 menuentry "Fedora-Custom26+"  {
search --no-floppy --fs-uuid --set=root 03a95642-a33a-48b7-91f1-51e9dec33b2d
set isofile="/Fedora-Custom/Fedora-Custom.iso"
loopback loop $isofile
set root=loop
linux /isolinux/vmlinuz root=live:LABEL=LIVE iso-scan/filename=$isofile rd.live.image quiet
initrd /isolinux/initrd.img
}
Here is another menuentry (I only use "LiveOS, isolinux, initrd.img and vmlinux" that I extracted from the iso):

Code:
 menuentry "Fedora-Custom" { 
       #set isoname="Fedora-Custom.iso"	 
       #set isofile="(hd0,msdos1)/Fedora-Custom/Fedora-Custom.iso" 
  #echo "Using ${isoname} . . . " 
  #loopback loop $isofile
  #linux (loop)/isolinux/vmlinuz initrd=initrd.img root=live:LABEL=LIVE iso-scan/filename=$isofile  rd.live.image quiet  
 #initrd (loop)/isolinux/initrd.img 
 linux /Fedora-Custom/isolinux/vmlinuz initrd=initrd.img root=live:LABEL=LIVE rhgb rd.luks=0 rd.md=0 rd.dm=0 nomodeset rd.live.image quiet
 initrd /Fedora-Custom/isolinux/initrd.img 
}
Both methods are able to boot the iso successfully (mbr system missing wifi drivers, etc.)

I would appreciated any suggestions you may have.

Last edited by donatom; 5th October 2017 at 12:17 AM. Reason: marking it as being solved
Reply With Quote
  #2  
Old 29th September 2017, 06:02 AM
donatom Online
Registered User
 
Join Date: Jan 2013
Location: Ventura, CA
Posts: 134
linuxchrome
Re: Custom Fedora 26 iso has no wifi drivers

I have found that when I make a hybrid efi/mbr usb thumb drive, wifi works on both systems: efi as well as mbr. So my work-around is to forget about mbr usb drives and only rely on multiboot usb drives that can boot on any system (efi or mbr).

By the way, I followed the Archlinux multiboot usb wiki when creating the hybrid device. When installing the grub for mbr and the grub for efi, I had to include the option "--force", otherwise, the grub-install command threw an error and refused to install the program. It could be that the first partition (protected mbr partition) was too small; the next time I will make the first partition 50 megabytes in size instead of 1 megabyte which the wiki recommended.

Here is the web-page:
https://wiki.archlinux.org/index.php...boot_USB_drive

This is only a work-around, albeit a very good one, not a solution so I won't mark this problem solved, at least not yet.

Last edited by donatom; 29th September 2017 at 06:12 AM. Reason: grammar correction and added more info
Reply With Quote
  #3  
Old 30th September 2017, 08:31 PM
amiga Online
Registered User
 
Join Date: Aug 2007
Posts: 141
linuxfirefox
Re: Custom Fedora 26 iso has no wifi drivers

Quote:
I have created a custom Fedora 26 xfce iso. When I boot it from a multiboot usb thumb drive with mbr boot, there is no wifi (drivers are missing). If I try to load rt2800usb (wifi driver) with modprobe an error is thrown stating that that module cannot be found from among the kernel modules.
Can you find the module with locate or find when booted into the iso environment ?

Code:
$ locate rt2800usb
/usr/lib/modules/3.10.0-327.22.2.el7.x86_64/kernel/drivers/net/wireless/rt2x00/rt2800usb.ko
$ modinfo rt2800usb
filename:       /lib/modules/3.10.0-514.2.2.el7.x86_64/kernel/drivers/net/wireless/ralink/rt2x00/rt2800usb.ko
license:        GPL
firmware:       rt2870.bin
description:    Ralink RT2800 USB Wireless LAN driver.
version:        2.3.0
If you can find them you can try insmod with the full path instead of modprobe. Also check the running kernel version with uname -r.

Quote:
Notably, if I burn the same custom iso to a usb drive using dd (following fedora wiki instructions), wifi is loaded and works fine (on mbr systems).
This means that the .ko module is in the iso as it should be.
Reply With Quote
  #4  
Old 1st October 2017, 12:01 AM
donatom Online
Registered User
 
Join Date: Jan 2013
Location: Ventura, CA
Posts: 134
linuxfedorafirefox
Re: Custom Fedora 26 iso has no wifi drivers

Hi amiga. Thanks for your reply.

According to uname I am running kernel 4.12.14-300.fc26.x86_64, but when I try to locate the wifi driver (or any other driver for that matter) the only kernel available is 4.11.11-300.fc26.x86_64.

Here is what I find when I try to locate rt2800usb:

Code:
 /usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb/
rt33xx.h   rt3573.h   rt35xx.h   rt53xx.h   rt55xx.h   unknown.h
I tried to load the rt2800 driver but there is obviously no such driver.

Here is the result of the insmod command:
Code:
 insmod /usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb
insmod: ERROR: could not insert module /usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb: Is a directory
I tried to load "unkown.h" and others in the rt2800usb directory but insmod throws and error saying "Invalid parameters" since none of them is a driver.
Reply With Quote
  #5  
Old 1st October 2017, 01:38 AM
donatom Online
Registered User
 
Join Date: Jan 2013
Location: Ventura, CA
Posts: 134
linuxfedorafirefox
Re: Custom Fedora 26 iso has no wifi drivers

I tried to use your path without the locate command and found the rt2800usb driver, but there are two problems. One which I mentioned before is that the driver is not for the current kernel. The second is that the kernel is zipped (it ends in xz). In any case, I tried to load it and, not surprisingly, it would not load.

The insmod command throws the "Invalid module format" error.

I could unzip the driver but it very likely will not load since it is for a different kernel.

Thanks for your help. If you have any other ideas, please let me know.
Reply With Quote
  #6  
Old 1st October 2017, 01:53 AM
donatom Online
Registered User
 
Join Date: Jan 2013
Location: Ventura, CA
Posts: 134
linuxfedorafirefox
Re: Custom Fedora 26 iso has no wifi drivers

I would like to give a little more background about this problem. I have been making custom isos using livecd-creator and livemedia-creator for several years and I have never before had problems with wifi drivers.

Recently I have run into mock problems so I now roll custom isos in a VM using the livemedia-creator command.

I have also recently run into a problem not being able to use the iso to install to another hard drive. I believe both problems are due to recent changes in lorax and anaconda. I have submitted bug reports (one was declared a duplicate) but as far as I know the bugs persist.

Since there are work-arounds for this wifi problem in my isos, I don't think I will sublit another bug report.
Reply With Quote
  #7  
Old 1st October 2017, 04:31 AM
amiga Online
Registered User
 
Join Date: Aug 2007
Posts: 141
linuxfirefox
Re: Custom Fedora 26 iso has no wifi drivers

Quote:
According to uname I am running kernel 4.12.14-300.fc26.x86_64, but when I try to locate the wifi driver (or any other driver for that matter) the only kernel available is 4.11.11-300.fc26.x86_64.
This is very strange, should not occur, and is the source of your problems. This is not a wifi problem at all as this will affect all kernel modules. The wifi module was just the first symptom.

Needless to say an OS iso should have a kernel and kernel modules that are of the same version.

You need to explain what you mean by "I am running kernel 4.12.14-300.fc26.x86_64" ? Did you type uname -r after booting up with this iso ?

You need to look inside the iso to find the kernel version and that of the modules. For example for Fedora 23 Cinnamon Live :

Code:
$ sudo mount -o loop Fedora-Live-Cinnamon-x86_64-23-10.iso /mnt/iso
mount: /dev/loop0 is write-protected, mounting read-only
$ cd /mnt/iso
[ iso]
$ ls
EFI  Fedora-Legal-README.txt  isolinux  LICENSE  LiveOS
$ cd isolinux/
$ file vmlinuz0 
vmlinuz0: Linux kernel x86 boot executable bzImage, version 4.2.3-300.fc23.x86_64 (mockbuild@bkernel02.phx2.fedoraproject.o, RO-rootFS, swap_dev 0x5, Normal VGA

$ cd ../LiveOS
$ sudo mount squashfs.img -t squashfs -o loop /mnt/squashfs/
$ sudo mount  -o loop /mnt/squashfs/LiveOS/ext3fs.img /mnt/rootfs
$ cd /mnt/rootfs/
[ rootfs]
$ ls
bin  boot  dev  etc  home  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

 $ cd usr/lib/modules
[ modules]
11:12 PM $ ls
4.2.3-300.fc23.x86_64
As can be seen the kernel version in the iso matches the directory in /usr/lib/modules.

If you are somehow running a different kernel when booted into fhis iso than that stored in the iso then something is very wrong.

Quote:
Here is the result of the insmod command:
You can't run this unless you found a kernel object .ko. It doesn't work with any other files.
Reply With Quote
  #8  
Old 1st October 2017, 06:49 AM
donatom Online
Registered User
 
Join Date: Jan 2013
Location: Ventura, CA
Posts: 134
linuxfedorafirefox
Re: Custom Fedora 26 iso has no wifi drivers

Quote:
Originally Posted by amiga
You need to explain what you mean by "I am running kernel 4.12.14-300.fc26.x86_64" ? Did you type uname -r after booting up with this iso ?
Yes, when I run uname -r that is the kernel that is identified after booting up the iso on a mbr system.

I have tried "to look inside of the custom iso" but I cannot mount the squashfs.img. Here is the error that I get:
(I made the /mnt/squashfs with mkdir first):
Code:
[root@archlinux Desktop]# mount -o loop Fedora-Custom.iso /mnt
mount: /mnt: WARNING: device write-protected, mounted read-only.
[root@archlinux Desktop]# cd /mnt
[root@archlinux mnt]# ls
EFI  images  isolinux  LiveOS
[root@archlinux mnt]# cd isolinux/
[root@archlinux isolinux]# file vmlinuz
vmlinuz: Linux kernel x86 boot executable bzImage, version 4.12.14-300.fc26.x86_64 (mockbuild@bkernel02.phx2.fedoraproject.org) #1 SMP Wed Sep 20 16:28:07, RO-rootFS, swap_dev 0x7, Normal VGA
[root@archlinux isolinux]# 
[root@archlinux isolinux]# cd ../LiveOS/
[root@archlinux LiveOS]# mount squashfs.img -t squashfs -o loop /mnt/squashfs
mount: /mnt/squashfs: mount point does not exist.
In any case as I said initially, this problem only exists when I boot onto a mbr system using an mbr usb thumb drive. When I use a hybrid usb drive or an efi usb drive, the rt2800usb driver is loaded and wifi works. I am at a loss to explain why this could happen. Again I am using the exact same custom iso on each usb thumb drive (cloned of course).

Thanks again for your help.
Reply With Quote
  #9  
Old 1st October 2017, 08:37 AM
pingwu Offline
Registered User
 
Join Date: Aug 2017
Location: US
Posts: 19
linuxfedorachrome
Re: Custom Fedora 26 iso has no wifi drivers

Thanks for your report.

I am curious, where can we find the most up-to-date tutorials re creating custom Fedora iso? Thanks again!
Reply With Quote
  #10  
Old 1st October 2017, 09:28 AM
amiga Online
Registered User
 
Join Date: Aug 2007
Posts: 141
linuxfirefox
Re: Custom Fedora 26 iso has no wifi drivers

You are making a big error on your very first line by mounting directly on /mnt. This is bad 1990's practice. I used /mnt/iso to mount the iso itself. Mounting on /mnt directly hides all of the /mnt sub-directories that you create.

Quote:
I have tried "to look inside of the custom iso" but I cannot mount the squashfs.img. Here is the error that I get:
(I made the /mnt/squashfs with mkdir first):
You also need to create and use /mnt/iso and /mnt/rootfs.

/mnt/iso - mountpoint for iso itself
/mnt/squashfs - mountpoint for squashfs.img compressed file system
/mnt/rootfs - mountpoint for ext3 root filesystem inside squashfs.img

As you are using subdirectories of /mnt you can never mount on /mnt directly as you were doing.
Reply With Quote
  #11  
Old 1st October 2017, 06:21 PM
donatom Online
Registered User
 
Join Date: Jan 2013
Location: Ventura, CA
Posts: 134
linuxfedorafirefox
Re: Custom Fedora 26 iso has no wifi drivers

amiga, thanks for your explanation of the proper way to mount images inside of other images.

Here are the results:

Code:
 [root@fedora Desktop]# cd /mnt/iso/
[root@fedora iso]# ls
EFI  images  isolinux  LiveOS
[root@fedora iso]# cd isolinux/
[root@fedora isolinux]# file vmlinuz 
vmlinuz: Linux kernel x86 boot executable bzImage, version 4.12.14-300.fc26.x86_64 (mockbuild@bkernel02.phx2.fedoraproject.org) #1 SMP Wed Sep 20 16:28:07, RO-rootFS, swap_dev 0x7, Normal VGA
[root@fedora isolinux]# cd ../LiveOS/
[root@fedora LiveOS]# mount squashfs.img -t squashfs -o loop /mnt/squashfs/
[root@fedora LiveOS]# mount -o loop /mnt/squashfs/LiveOS/rootfs.img /mnt/rootfs/
[root@fedora LiveOS]# cd /mnt/rootfs/
[root@fedora rootfs]# ls
bin   dev  home  lib64       media  opt   root  sbin  sys  usr
boot  etc  lib   lost+found  mnt    proc  run   srv   tmp  var
[root@fedora rootfs]# cd usr/lib/modules
[root@fedora modules]# ls
4.12.14-300.fc26.x86_64
There doesn't seem to be a problem with the modules matching up with the kernel.

I continue to have a feeling that the drivers problem (among others) is the result of changes and/or bugs in lorax-livemedia-creator and anaconda. According to bugzilla fedora programmers have fixed anaconda but the fixed version will only be available when Fedora 27 comes out (or in Rawhide).
Reply With Quote
  #12  
Old 2nd October 2017, 12:40 AM
donatom Online
Registered User
 
Join Date: Jan 2013
Location: Ventura, CA
Posts: 134
linuxfedorafirefox
Re: Custom Fedora 26 iso has no wifi drivers

Quote:
Originally Posted by pingwu
I am curious, where can we find the most up-to-date tutorials re creating custom Fedora iso? Thanks again!
I believe that this is the most up-to-date web-site (I don't believe mock has been fixed yet, so use livemedia-creator in a vm of the most up-to-date live Fedora iso:

https://rhinstaller.github.io/lorax/...-creator.html]

This might also be of help:

https://forums.fedoraforum.org/showthread.php?t=313683
Reply With Quote
  #13  
Old 3rd October 2017, 04:59 AM
amiga Online
Registered User
 
Join Date: Aug 2007
Posts: 141
linuxfirefox
Re: Custom Fedora 26 iso has no wifi drivers

Quote:
There doesn't seem to be a problem with the modules matching up with the kernel.
Even though I didn't show all of the steps did you double check that the rt2800usb.ko module is in this directory at kernel/drivers/net/wireless/rt2x00/rt2800usb.ko ?

This begs the question as to how you looked for drivers previously.

Quote:
According to uname I am running kernel 4.12.14-300.fc26.x86_64, but when I try to locate the wifi driver (or any other driver for that matter) the only kernel available is 4.11.11-300.fc26.x86_64.

Here is what I find when I try to locate rt2800usb:

/usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb/
rt33xx.h rt3573.h rt35xx.h rt53xx.h rt55xx.h unknown.h
When you were booted into this iso what command did you use when you found the above ? Also live distributions typically don't have /usr/src/kernels/ directories. You apparently found kernel sources for a different kernel than the live cd uses.

If you booted into this iso again with the multiboot usb mbr can you navigate to the driver directory
/usr/lib/modules/4.12.14-300.fc26.x86_64/kernel/drivers/net/wireless/rt2x00/rt2800usb.ko ? Try this.
Reply With Quote
  #14  
Old 3rd October 2017, 07:28 AM
donatom Online
Registered User
 
Join Date: Jan 2013
Location: Ventura, CA
Posts: 134
linuxfedorafirefox
Re: Custom Fedora 26 iso has no wifi drivers

Quote:
Originally Posted by amiga
When you were booted into this iso what command did you use when you found the above ?
I used locate and tab completion (after a "updatedb" command to look for rt2800usb:

Code:
[root@localhost-live Desktop]# locate rt2800usb
/usr/lib/modules/4.11.11-300.fc26.x86_64/kernel/drivers/net/wireless/ralink/rt2x00/rt2800usb.ko.xz
/usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb
/usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb.h
/usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb/rt33xx.h
/usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb/rt3573.h
/usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb/rt35xx.h
/usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb/rt53xx.h
/usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb/rt55xx.h
/usr/src/kernels/4.11.11-300.fc26.x86_64/include/config/rt2800usb/unknown.h
You can see rt33xx.h, rt3573.h, etc at the end of the paths.

Quote:
Originally Posted by amiga
If you booted into this iso again with the multiboot usb mbr can you navigate to the driver directory
/usr/lib/modules/4.12.14-300.fc26.x86_64/kernel/drivers/net/wireless/rt2x00/rt2800usb.ko ?
No, the only rt2800usb driver is for an older kernel (and the path begins with /usr/src/kernels/4.11.11-300.fc26.x86_64 (as seen above). the path "/usr/lib/modules/4.12.14-300.fc26.x86_64/ . . . " does not exist when booted into an mbr system.

Last edited by donatom; 3rd October 2017 at 06:04 PM. Reason: fixing quote fixing typo error
Reply With Quote
  #15  
Old 3rd October 2017, 06:04 PM
amiga Online
Registered User
 
Join Date: Aug 2007
Posts: 141
linuxfirefox
Re: Custom Fedora 26 iso has no wifi drivers

Quote:
No, the only rt2800usb driver is for an older kernel (and the path begins with /usr/src/kernels/4.11.11-300.fc26.x86_64 (as seen above). the path "/usr/lib/modules/4.12.14-300.fc26.x86_64/ . . . " does not exist when booted into an mbr system.
There could be a very simple explanation for what is happening. Apparently the wrong root filesystem is being mounted due to duplicate labels. In your original post you described the grub stanzas used.

Code:
menuentry "Fedora-Custom26+"  {
search --no-floppy --fs-uuid --set=root 03a95642-a33a-48b7-91f1-51e9dec33b2d
set isofile="/Fedora-Custom/Fedora-Custom.iso"
loopback loop $isofile
set root=loop
linux /isolinux/vmlinuz root=live:LABEL=LIVE iso-scan/filename=$isofile rd.live.image quiet
initrd /isolinux/initrd.img
}
In the first line you use --fs-uuid to find the unique partition on which the iso file resides. However when mounting the root filesystem you use the label root=live:LABEL=LIVE which may not be unique if you have more than one OS iso in this partition. All of your isos could have the same label. You can only use labels if they are unique, otherwise use unique UUIDs everywhere.

You said this was a multi-boot usb drive. You only showed the Fedora 26 grub stanza. Are there other iso files that possibly have the same :LABEL=LIVE label ? What seems to be happening is that this stanza is running the 4.12 kernel but is finding a different 4.11 file system when it searches for the label. If you used unique UUIDs everywhere this wouldn't happen. Or you could find a unique label for the Fedora 26 iso instead of the generic LABEL=LIVE.

To check this you need to check the release string. For Fedora it should be /etc/redhat-release

Code:
$ cat /etc/redhat-release 
CentOS Linux release 7.3.1611 (Core)
If you don't get Fedora 26 then you have the wrong root file system mounted.

To solve this problem you need to use unique UUIDs everywhere or find a unique label. For UUIDs you would use root=UUID=XXXXXXX in the linux /isolinux/vmlinuz line where XXXXXXX is the UUID of your iso file system.

To find out this UUID you could mount it again as you have already done.

Code:
$ sudo mount -o loop Fedora-Live-Cinnamon-x86_64-23-10.iso /mnt/iso
mount: /dev/loop0 is write-protected, mounting read-only
$ sudo blkid /dev/loop0
/dev/loop0: UUID="2015-10-29-21-40-09-00" LABEL="Fedora-Live-Cinnamon-x86_64-23-1" TYPE="iso9660" PTTYPE="dos" 
$ cd /dev/disk/by-uuid/
$ ll | grep loop0
lrwxrwxrwx 1 root root 11 Oct  3 13:12 2015-10-29-21-40-09-00 -> ../../loop0
$ cd /dev/disk/by-label/
$ ll | grep loop0
lrwxrwxrwx 1 root root 11 Oct  3 13:12 Fedora-Live-Cinnamon-x86_64-23-1 -> ../../loop0
In this case 2015-10-29-21-40-09-00 is the unique UUID of the iso filesystem and the unique label is Fedora-Live-Cinnamon-x86_64-23-1.

Last edited by amiga; 3rd October 2017 at 06:35 PM. Reason: added example
Reply With Quote
Reply

Tags
custom , drivers , fedora , iso , wifi

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
WIFI drivers not detected in fedora 13 pradeepsegu Hardware & Laptops 2 21st January 2011 06:23 PM
[SOLVED] Fedora 10 RT2870 WiFi drivers Overlord Laharl EOL (End Of Life) Versions 4 9th May 2010 04:17 PM
1)Erratic install results w/initrd 2)custom spins,with custom drivers/modules? fashionhat Installation, Upgrades and Live Media 1 8th March 2010 07:51 PM
Fedora 12 and WIFI drivers flstenner Servers & Networking 7 22nd November 2009 01:14 AM
Edimax EW-7318USG wifi adapter drivers in fedora core 5 fraser0206 Servers & Networking 1 1st May 2008 09:16 PM


Current GMT-time: 08:21 (Sunday, 22-10-2017)

TopSubscribe to XML RSS for all Threads in all ForumsFedoraForumDotOrg Archive
logo

All trademarks, and forum posts in this site are property of their respective owner(s).
FedoraForum.org is privately owned and is not directly sponsored by the Fedora Project or Red Hat, Inc.

Privacy Policy | Term of Use | Posting Guidelines | Archive | Contact Us | Founding Members

Powered by vBulletin® Copyright ©2000 - 2012, vBulletin Solutions, Inc.

FedoraForum is Powered by RedHat