2

I'm installing Debian from a USB drive onto my laptop, and it's asking me for the following firmware file: brcm/brcmfmac43241b4-sdio.bin

I have another Linux distro on my laptop already, so I already have this file. The Debian installer say the "firmware can be loaded from removable media, such as a USB stick", so I put the file on a (FAT32) USB stick and plugged it into my laptop and tried to continue with the installer, but it doesn't find the file, even though it's in the root directory (only directory) of the second USB stick.

I also tried putting the file at this path on the second USB stick, but it didn't work: /brcm/brcmfmac43241b-sdio.bin

How can I get the Debian installer on the first USB stick to recognize that the file in the second USB stick is the file it wants?

Taylor
  • 31

5 Answers5

7

this is a repost of my answer, because google search doesn't return a meaningful stackexchange results, or none of the answers are considered satisfied by me

My answer is for those who want To install or re-install Debian with correct LAN/Wireless non-free drivers

IMHO, the correct answer should be as below (tested by myself):

Requirement:

  1. NOT TWO, only one USB drive is needed. . No need to use unofficial non-free firmwares attached ISOs as well.

This solution can be applied to netinstall.iso or mini.iso.

  1. Download non-free firmware .deb files from debian repos respectively to the release (stable, testing or sid), like firmware-brcm80211 and firmware-realtek
  2. After dd iso successfully, make a partition (tested with FAT32, option b under dos scheme in fdisk), choose either primary partition or logical partition under extended partition, both work
  3. Create a folder name firmware in that partition
  4. Copy relevant firmware .deb files to that folder, all must be put under same folder and partition.

tips You can download the archive from http://cdimage.debian.org/cdimage/unofficial/non-free/firmware/. extract all the .deb non-free firmware files to that folder instead of downloading them individually

Relevant threads that I pasted my answers in:

  1. "Load missing firmware from removable media?" (Debian)
  2. How do I install "non-free firmware" (wifi driver) from USB? (Debian)
  3. Installing missing firmware in debian
  4. How to put rtlwifi drivers on Debian installation USB?
  5. How to use proprietary wireless drivers during Debian USB install?
wltprgm
  • 91
  • or better, just download an iso/stick image already containing the firmware from https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/ –  Dec 29 '19 at 08:09
  • @mosvy On the first try only. If the usb has already been dd, some prefer not to dd again – wltprgm Dec 30 '19 at 06:28
  • @Kusalananda this mod deleted my re-posted answers on 4 other threads asking me to flag them as duplicate questions for which are not true, because there are multiple answers that are all applicable / or not applicable to those questions, while at the same time, my answers can be applicable as well. There is not a rule in stack exchange I am aware of I couldn't post same answer to multiple questions – wltprgm Dec 30 '19 at 06:31
  • @wltprgm I believe you have a typo. The fdisk command to make a new partition isn't b, it's n - b is used to create a new BSD Disklabel. You should check the posting, and amend accordingly. – Peregrino69 Sep 12 '21 at 14:52
  • under dos scheme, the partition systems defined by libparted https://unix.stackexchange.com/questions/289389/what-are-the-differences-between-the-various-partition-tables, the b option in fdisk dos system is for FAT32, which I have tested to store the non-free firmware files, read this link, https://tldp.org/HOWTO/Partition-Mass-Storage-Definitions-Naming-HOWTO/x190.html – wltprgm Sep 14 '21 at 04:52
1

It's better to use the non-free installer, which already contains all firmware: http://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/current/amd64/iso-cd/

Ipor Sircer
  • 14,546
  • 1
  • 27
  • 39
  • 1
    I get the exact same error message when using the non-free installer. It seems my firmware is not included in that installer or something. – Taylor Jul 24 '18 at 19:03
1

It finally solved my own issue.

It turns out that it was asking for brcm/brcmfmac43241b4-sdio.bin, and it did actually find this and then ask for the very similarly named brcm/brcmfmac43241b4-sdio.txt. Supplying both of these files at the same time on a USB stick worked.

The text file is here and the binary file is here.

Taylor
  • 31
1

Necropost, but: a nice way to go here is to mount the second usb, then move the firmware binary to the "right spot" for the installer. So open a new console with <ctrl><alt><F1>, press enter to drop into a busybox shell, and do

# blkid

and look for the entry beginning "sd." Let's say it's sda1. Check it's your USB with a little detective work by running

# dmesg | tail -n20

and looking for messages about the storage device, which should conclude with a line like sda: sda1.

Next do the following, filling in $YOURFIRMWARE with the filename of the firmware blob you have on your USB stick:

# mkdir /mnt/usb
# mount /dev/sda1 /mnt/usb
# cp /mnt/usb/$YOURFIRMWARE.bin /lib/firmware

Now return to the console where the installer is running with <ctrl><alt><F2> (or whichever function key it's on). Run the check again, and laugh in the face of the Shaved Yak.

0

Download the deb file from here (direct link to download from Debian), put it on the root of the second USB (don't create any structure), then insert and try to continue.

  • This did not work. – Taylor Jul 24 '18 at 18:46
  • 1
    Have you tried removing the install USB, putting in the second, letting it find the .deb, and then reinserting the installer USB after it loads? Also, you might be able to put the .deb on the installer USB but I do not know if that would prevent the installer from running due to verification issues. – Mountainerd Jul 24 '18 at 21:04
  • You should create a full answered from that @Mountainerd, removing the install medium and inserting the firmware medium worked for me and I've been able to successfully install the firmware. – Christian Benke Apr 07 '20 at 08:32
  • Hint: After reinserting the install medium, one needs to remount it on /cdrom (e.g. mount /dev/sdc1 /cdrom, see https://unix.stackexchange.com/questions/381408/debian-laptop-installation-fails-due-to-debootstrap-error-failed-to-determine-t) – Christian Benke Apr 07 '20 at 08:41