방금 kernel.org에서 커널 3.10.19를 컴파일했습니다. bnx2에 대한 지원이 활성화되었습니다. 내 서버에서 eth0 인터페이스를 불러오려고 하면 다음 오류가 발생합니다.
bnx2: Can't load firmware file "bnx2/bnx2-mips-09-6.2.1b.fw"
/lib/firmware/bnx2
다음 파일이 있습니다 .
bnx2-mips-06-6.2.1.fw
bnx2-rv2p-09-6.0.17.fw
bnx2-mips-09-6.2.1a.fw
bnx2-rv2p-06-6.0.15.fw
bnx2-rv2p-09ax-6.0.17.fw
bnx2-mips-09-6.2.1b.fw 파일이 누락되었습니다.
만약 내가한다면:
cp bnx2-mips-09-6.2.1a.fw bnx2-mips-09-6.2.1b.fw
작동하지만 깨끗한 솔루션은 아닙니다.
나는 다음 게시물을 읽었습니다.https://lkml.org/lkml/2012/4/18/142하지만 내가 이해하고 있는지 잘 모르겠습니다.
문제를 해결하는 가장 좋은 방법은 무엇입니까?
답변1
데비안 8.1에서:
bnx2 드라이버를 설치하고, 무료가 아닌 저장소를 추가하는 것을 잊지 마세요.
apt-get install firmware-bnx2
기계를 다시 시작하십시오.
이것은 내 문제를 해결했습니다.
bnx2 패키지: https://debian.pkgs.org/10/debian-nonfree-i386/firmware-bnx2_20190114-2_all.deb.html
답변2
RHEL 6인 경우
add_drivers+="bnx2"
이 줄을 추가하세요/etc/dracut.conf
- 백업 initramfs
dracut –f
initramfs 이미지를 빌드하려면 실행하세요 .- 재시작
이렇게 하면 문제가 해결됩니다.
답변3
이전 답변에 몇 가지 세부 정보를 추가하려면 다음을 수행하세요.
위에 나열된 RHEL 6 솔루션은 작동하지만 펌웨어 파일도 있어야 합니다. /etc/dracut.conf에 다음 줄을 추가할 수는 없습니다.
add_drivers+="bnx2"
백업한 initramfs
후 다음을 실행하세요.
dracut -f
그리고 기본 시스템이 작동할 것으로 예상합니다. 필요한 펌웨어 사본을 찾았습니다.여기. 다른 버전도 있으므로 찾고 있는 버전이 아닌 경우 검색해 보세요. 아마도 거기에 있을 것입니다.
파일을 준비하고 /lib/firmware/bnx2
위의 지침을 따른 후 재부팅했습니다. 이것은 현재 CentOS 6.8에서 작동합니다. elrepo의 3.10.x 커널을 사용합니다.